O Cloud SQL é compatível com o SQL Server Reporting Services (SSRS), que ajuda a criar, implantar e gerenciar relatórios paginados.
Nesta página, apresentamos os pré-requisitos, o procedimento de configuração e as limitações para usar o SSRS no Cloud SQL.
Antes de começar
Antes de usar o SSRS no Cloud SQL, você precisa ter o seguinte:
- Uma instância do Cloud SQL para hospedar o banco de dados do servidor de relatórios
- Um host em que você instala e executa o SSRS. Ele pode ser uma VM do Compute Engine ou um host que não usa o Compute Engine. Para instruções de instalação, consulte Instalar o SQL Server Reporting Services.
Um registro do Cloud DNS para atribuir um nome do host à instância do Cloud SQL. É possível criar um nome do host usando uma das seguintes opções:
- Cloud DNS: use o Cloud DNS para criar um nome de host que aponte para sua instância.
- Zona de DNS personalizada: se você gerencia sua própria zona de DNS, crie um registro A que mapeie o nome de host preferido para o endereço IP da instância.
- Mapeamento do nome do host local: modifique o arquivo
hostsdo sistema para criar um alias personalizado para sua instância.
Dois logins atuais do Cloud SQL, um de configuração e outro de serviço. Para criar um login, consulte
gcloud sql users create.Se você quiser usar a autenticação do Windows, use o Managed Active Directory para mesclar a instância do SQL Server e o host que executa o SSRS. Para mais informações, consulte Usar o Microsoft AD gerenciado com o Cloud SQL.
Procedimento
Para configurar o SSRS no Cloud SQL, execute as seguintes etapas:
Adquirir uma concessão do SSRS
O SSRS requer permissões elevadas durante a configuração. Use o seguinte comando para adquirir uma concessão SSRS da sua instância:
gcloud
Use o seguinte comando para adquirir uma concessão:
gcloud sql instances acquire-ssrs-lease INSTANCE_NAME \ --project=PROJECT_NAME \ --setup-login=SETUP_LOGIN \ --service-login=SERVICE_LOGIN \ --report-database=REPORT_DATABASE \ --duration=DURATION \
A tabela a seguir descreve os parâmetros de gcloud
dessa operação:
| Parâmetro | Descrição | Valores permitidos | Valor padrão |
--setup-login |
Obrigatório. O login usado para se conectar à instância durante a configuração do SSRS. Esse é o primeiro login solicitado no Gerenciador de configuração do servidor de relatórios ao definir um banco de dados do servidor de relatórios. | Precisa ser um login do SQL Server, como sqlserver |
Nenhum |
--service-login |
Obrigatório. O login do SQL Server usado pelo servidor de relatórios para se conectar ao banco de dados do servidor de relatórios durante a configuração do SSRS. Esse é o segundo login solicitado no Gerenciador de configuração do servidor de relatórios ao definir um banco de dados do servidor de relatórios. | Precisa ser um login do SQL Server e diferente do login de configuração. | Nenhuma. |
--report-database |
Obrigatório. Um nome de banco de dados de relatórios atual ou novo na instância. | Não é permitido usar determinados caracteres especiais no nome do banco de dados de relatórios, como espaços, colchetes e caracteres que não estejam em inglês. | Nenhum |
--duration |
Opcional. O número de horas em que o lease de SSRS está ativo durante as quais é possível executar a configuração de SSRS. | Entre 1 e 12 horas. Por exemplo, 4h. |
5 horas |
REST v1
Usando a API REST, é possível adquirir uma concessão SSRS em uma instância. Para adquirir uma concessão do SSRS, especifique o seguinte:- Dois logins diferentes do SQL Server, o de configuração e o de serviço
- O nome do banco de dados de relatórios
- A duração do contrato de arrendamento
Apenas o campo DURATION é opcional. Para mais informações, consulte
AcquireSsrsLeaseContext:
- PROJECT_ID: o ID do projeto.
- INSTANCE_NAME: o nome da instância.
- SETUP_LOGIN: o login do SQL Server usado para se conectar à instância do SQL Server durante a configuração do SSRS. Esse é o primeiro login solicitado no Gerenciador de configuração do servidor de relatórios ao definir um banco de dados do servidor de relatórios.
- SERVICE_LOGIN: o login do SQL Server usado pelo servidor de relatórios para se conectar ao banco de dados do servidor de relatórios durante a configuração do SSRS. Esse é o segundo login solicitado no Gerenciador de configuração do servidor de relatórios ao definir um banco de dados do servidor de relatórios.
- REPORT_DATABASE: um nome de banco de dados de relatórios atual ou novo na instância. A Microsoft não permite determinados caracteres especiais no nome do banco de dados de relatórios, como espaços, colchetes e caracteres que não estejam em inglês.
- DURATION: opcional. O número de horas em que o lease de SSRS está ativo durante as quais é possível executar a configuração de SSRS.
Entre 1 e 12 horas, por exemplo,
4h.
Método HTTP e URL:
POST https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_NAME/acquireSsrsLeaseCorpo JSON da solicitação:
{ "acquireSsrsLeaseContext": { "setupLogin": SETUP_LOGIN, "serviceLogin": SERVICE_LOGIN, "reportDatabase": REPORT_DATABASE, "duration": DURATION, } }
REST v1beta4
Usando a API REST, é possível adquirir uma concessão SSRS em uma instância. Para adquirir uma concessão do SSRS, especifique o seguinte:- Dois logins diferentes do SQL Server, o de configuração e o de serviço
- O nome do banco de dados de relatórios
- A duração do contrato de arrendamento
Apenas o campo DURATION é opcional. Para mais informações, consulte
AcquireSsrsLeaseContext:
- PROJECT_ID: o ID do projeto.
- INSTANCE_NAME: o nome da instância.
- SETUP_LOGIN: o login do SQL Server usado para se conectar à instância do SQL Server durante a configuração do SSRS. Esse é o primeiro login solicitado no Gerenciador de configuração do servidor de relatórios ao definir um banco de dados do servidor de relatórios.
- SERVICE_LOGIN: o login do SQL Server usado pelo servidor de relatórios para se conectar ao banco de dados do servidor de relatórios durante a configuração do SSRS. Esse é o segundo login solicitado no Gerenciador de configuração do servidor de relatórios ao definir um banco de dados do servidor de relatórios.
- REPORT_DATABASE: um nome de banco de dados de relatórios atual ou novo na instância. A Microsoft não permite determinados caracteres especiais no nome do banco de dados de relatórios, como espaços, colchetes e caracteres que não estejam em inglês.
- DURATION: opcional. O número de horas em que o lease de SSRS está ativo durante as quais é possível executar a configuração de SSRS.
Entre 1 e 12 horas, por exemplo,
4h.
Método HTTP e URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME/acquireSsrsLeaseCorpo JSON da solicitação:
{ "acquireSsrsLeaseContext": { "setupLogin": SETUP_LOGIN, "serviceLogin": SERVICE_LOGIN, "reportDatabase": REPORT_DATABASE, "duration": DURATION, } }
Configurar SSRS
Para configurar a SSRS, siga estas etapas:
- Abra o Gerenciador de configuração dos serviços de relatórios no host em que o SSRS está instalado.
- Conecte-se à sua instância local do servidor de relatórios.
- Clique em Alterar banco de dados.
- Informe o nome do host do SQL Server criado no Cloud DNS e as credenciais de login do SQL Server para o login de configuração usado para a concessão do SSRS.
- Insira o nome de um novo banco de dados de servidor de relatórios ou um banco de dados de relatórios existente usado para a concessão de SSRS.
- Digite as credenciais de login do SQL Server para o login de serviço usado para a concessão do SSRS.
- Clique em Próxima e conclua a última etapa.
- Configure o URL do serviço da Web e o URL do portal da Web, caso ainda não tenham sido definidos. O portal da Web será carregado em alguns segundos.
Liberar uma concessão de SSRS
É possível liberar uma concessão manualmente ou esperar até que ela expire automaticamente. É necessário liberar a concessão para reverter as permissões elevadas necessárias para a configuração e permitir que o login do serviço se conecte ao banco de dados do relatório. O login do serviço não pode acessar o banco de dados de relatórios até que a concessão expire ou seja liberada manualmente. O comando a seguir libera uma concessão SSRS.
gcloud
Use o seguinte comando para liberar uma concessão:
gcloud sql instances release-ssrs-lease INSTANCE_NAME \ --project=PROJECT_NAME
REST v1
Com a API REST, é possível liberar uma concessão SSRS para uma instância. Conforme mostrado no exemplo de solicitação a seguir, você só precisa informar o nome da instância e o ID do projeto.
- PROJECT_ID: o ID do projeto.
- INSTANCE_NAME: o nome da instância.
Método HTTP e URL:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME/releaseSsrsLeaseREST v1beta4
Com a API REST, é possível liberar uma concessão SSRS para uma instância. Conforme mostrado no exemplo de solicitação a seguir, você só precisa informar o nome da instância e o ID do projeto.
- PROJECT_ID: o ID do projeto.
- INSTANCE_NAME: o nome da instância.
Método HTTP e URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME/releaseSsrsLeaseLimitações
- Os logins do Active Directory não são compatíveis para configurar o banco de dados de relatórios.
- O nome do banco de dados do relatório pode conter apenas caracteres alfanuméricos e hífens.
- É necessário adquirir uma concessão para alterar o login usado para se conectar ao banco de dados de relatórios pelo Gerenciador de configuração do servidor de relatórios.
- Para um banco de dados processado por um login de serviço, as operações de importação de arquivos sql e exclusão de banco de dados replicados podem falhar entre a conclusão da configuração do SSRS e o lançamento da concessão.
- Exclua e recrie o usuário do banco de dados para o login de serviço em um banco de dados de relatórios importados. Isso ocorre porque o usuário atual no banco de dados importado não pertence à nova instância.
- Ao adicionar novos servidores de relatórios para uma implantação de escalonamento horizontal no SSRS, você precisa adquirir e liberar a concessão do SSRS para cada nova VM do Windows que hospeda um servidor de relatórios. Cada instância do Cloud SQL exige que você configure o novo banco de dados de relatórios usando o banco de dados de relatórios atual.
- É preciso criar uma nova concessão sempre que você quiser alterar as credenciais de login do banco de dados do servidor de relatórios no Gerenciador de configuração do servidor de relatórios.
Perguntas frequentes
As seções a seguir ajudam a responder perguntas frequentes relacionadas ao SSRS.
Mecanismo de configuração e concessão
As seções a seguir ajudam a resolver dúvidas sobre configuração e concessão do SSRS.
Como faço para configurar o SSRS com o Cloud SQL?
É necessário instalar o SSRS em um host Windows separado, como uma VM do Compute Engine. Em seguida, configure o SSRS para usar sua instância do Cloud SQL nos bancos de dados ReportServer e ReportServerTempDB. O "lease do SSRS" é uma parte importante desse processo se você estiver gerenciando a configuração usando o Cloud SQL.
O que é o contrato de locação do SSRS e por que ele é necessário?
A configuração do SSRS normalmente exige permissões sysadmin, que não são concedidas aos usuários no Cloud SQL. O mecanismo de concessão temporariamente concede
as permissões elevadas necessárias a um login especificado do SQL Server, por exemplo,
--setup-login, para concluir a configuração do banco de dados.
Você adquire um lease usando gcloud sql instances acquire-ssrs-lease
antes da configuração e o libera depois com
gcloud sql instances release-ssrs-lease.
O contrato tem uma duração configurável.
Autenticação
A seção a seguir ajuda a responder a perguntas sobre autenticação.
Posso usar a autenticação do Windows (Microsoft Active Directory) para a configuração?
Não, você precisa usar logins do SQL Server para os parâmetros --setup-login e --service-login ao adquirir a concessão e configurar o banco de dados do servidor de relatórios. Os logins do Windows não são compatíveis com esse processo de configuração inicial.
Embora a configuração exija logins do SQL, é possível usar a autenticação do Windows para acessar relatórios se a instância do Cloud SQL e o host do SSRS estiverem associados a um dos seguintes tipos de domínio:
- Active Directory gerenciado pelo cliente (CMAD) (recomendado)
- Serviço gerenciado para o Microsoft Active Directory
Restrições
A seção a seguir ajuda a responder a perguntas relacionadas a restrições ou limitações.
Quais são as limitações de usar o SSRS com o Cloud SQL?
- Não há logins do Microsoft Active Directory para a fase de configuração do banco de dados.
- O nome do banco de dados do relatório pode conter apenas caracteres alfanuméricos e hífens.
- Você precisa adquirir um novo contrato de locação se quiser mudar as credenciais da conta de serviço depois.
- As implantações de escalonamento horizontal exigem o processo de concessão para cada novo host do SSRS.
- A importação de bancos de dados do servidor de relatórios exige etapas manuais para remapear o usuário de login do serviço.
Considerações de preço
A seção a seguir ajuda a abordar considerações de preços.
Quais são os custos associados ao licenciamento?
- Uma licença do SQL Server é necessária para sua instância do Cloud SQL.
- Como o SSRS executa uma máquina Windows separada, verifique se o SO Windows e todos os componentes do SQL Server nessa máquina estão devidamente licenciados. De acordo com as políticas da Microsoft, executar o SSRS em um servidor separado pode exigir uma licença adicional do SQL Server.
Automação
A seção a seguir ajuda a responder a perguntas relacionadas à automação.
É possível automatizar o processo de instalação e configuração do host do SSRS?
É possível executar operações para adquirir e liberar o lease do SSRS no Cloud SQL usando a gcloud CLI ou as APIs REST.
A instalação e configuração do SSRS no ambiente Windows envolve etapas manuais na interface do Reporting Services Configuration Manager, o que dificulta a automação completa de ponta a ponta.
Para mais informações, consulte Instalar e configurar o SSRS.
Manutenção
A seção a seguir ajuda a responder perguntas relacionadas à manutenção.
Quais são as possíveis atividades de gerenciamento e manutenção associadas ao uso do SSRS?
Antes de começar, considere a sobrecarga de gerenciamento contínuo associada ao servidor SSRS separado. Você é responsável por gerenciar, corrigir e proteger a VM do Windows que executa o serviço SSRS. O Cloud SQL gerencia apenas a instância do banco de dados.