Implantação de script e tarefas administrativas

Reporting Services oferece suporte ao uso de scripts para automatizar a instalação, a implantação e as tarefas administrativas de rotina. A implantação de um servidor de relatórios é um processo de várias etapas. É preciso usar diversos processos e ferramentas para configurar uma implantação. Não existe nenhum programa ou abordagem que possa ser usado para automatizar todas as tarefas.

Não são todas as etapas que devem ser automatizadas. Em alguns casos, a abordagem mais simples e eficaz é executar uma etapa manualmente ou por meio de uma ferramenta gráfica. Por exemplo, se você deseja implantar uma grande quantidade de relatórios e modelos, é melhor copiar os bancos de dados do servidor de relatórios do que escrever um código que recrie o ambiente de servidor de relatórios.

Algumas etapas exigem um código personalizado. Por exemplo, a configuração das URLs para o serviço Web e o Gerenciador de Relatórios pode ser automatizada, mas apenas se você escrever o código personalizado que faz chamadas no provedor WMI (Instrumentação de Gerenciamento do Windows) do Servidor de Relatórios. Se você não quiser escrever código, utilize a ferramenta de Configuração Reporting Services para realizar a etapa.

Para executar o script que configure um servidor de relatórios, é necessário ser um administrador local no computador que você está configurando. Para obter mais informações, consulte Como configurar um servidor de relatório para administração remota.

Este tópico descreve abordagens recomendadas para automatizar etapas específicas. Diversos programas e interfaces programáticas são citados. Serão fornecidas descrições de cada um posteriormente neste tópico.

Tarefas de implantação e como automatizá-las

A tabela a seguir resume as tarefas de instalação e configuração necessárias para implantar um servidor de relatórios. Utilize a tabela para fazer a correspondência de uma tarefa específica a uma abordagem que permita automatizar ou realizar a tarefa autônoma.

Tarefa

Abordagem

Instalar o Reporting Services.

É possível executar a instalação da linha de comando para fazer uma instalação autônoma.

Utilize Instalação para instalar e configurar um servidor de relatório, mas apenas se você especificar a opção de configuração padrão e seu sistema atender todos os requisitos desse tipo de instalação. Caso não consiga instalar a configuração padrão, será preciso realizar uma instalação somente arquivos. Para obter mais informações sobre as opções de instalação, consulte Considerações sobre a instalação do Reporting Services.

Configure a conta de serviço.

A conta de serviço é configurada inicialmente por meio da Instalação. Para automatizar alterações na conta de serviço como uma tarefa pós-Instalação, é preciso escrever o código personalizado que faz chamadas no provedor WMI do Servidor de Relatórios. Não há nenhum utilitário de prompt de comando ou modelos de script para configurar a conta de serviço de forma programada.

Se os requisitos de codificação impedirem que você automatize esta etapa, você pode facilmente configurar a conta manualmente executando a ferramenta de Configuração Reporting Services. Para obter mais informações, consulte Como configurar uma conta de serviço para o Reporting Services.

Configure o serviço Web do Servidor de Relatórios e as URLs do Gerenciador de Relatórios.

Escreva o código personalizado que faz chamadas no provedor WMI do Servidor de Relatórios. Não há nenhum utilitário de linha de comando ou modelos de script para configurar as URLs.

Se preferir não escrever o código, você poderá configurar as URLs manualmente executando a ferramenta de Configuração Reporting Services. Para obter mais informações, consulte Como configurar uma URL (Configuração do Reporting Services.

Crie o banco de dados do servidor de relatórios.

Escreva o código personalizado que faz chamadas no provedor WMI do Servidor de Relatórios. Não há nenhum utilitário de prompt de comando ou modelos de script para criar os bancos de dados de servidor de relatórios e RSExecRole.

Se preferir não escrever o código, você poderá criar o banco de dados manualmente executando a ferramenta de Configuração Reporting Services. Para obter mais informações, consulte Como criar um banco de dados do servidor de relatório (Configuração do Reporting Services).

Configure a conexão do banco de dados do servidor de relatórios.

Se estiver alterando a cadeia de caracteres, a conta, a senha ou o tipo de autenticação da conexão, execute o utilitário rsconfig para configurar a conexão. Para obter mais informações, consulte Configurando uma conexão do banco de dados do servidor de relatório e Utilitário rsconfig.

Não é possível usar rsconfig.exe para criar ou atualizar o banco de dados. O banco de dados e a RSExecRole já devem existir.

Configure uma implantação de expansão.

Escolha dentre as seguintes abordagens para automatizar a implantação de expansão:

Backup de chaves de criptografia.

Escolha dentre as seguintes abordagens para automatizar o backup da chave de criptografia:

Configure o email do Servidor de Relatórios.

Escreva o código personalizado executado no provedor WMI Reporting Services. O provedor oferece suporte a um subconjunto de configurações de email.

Embora o arquivo RSReportServer.config inclua todas as configurações, não utilize o arquivo de maneira automatizada. Mais especificamente, não use um arquivo em lotes para copiar o arquivo para outro servidor de relatórios. Cada arquivo de configuração inclui valores que são específicos à instância atual. Esses valores não serão válidos em outras instâncias de servidor de relatórios.

Para obter mais informações sobre as configurações, consulte Configurando um servidor de relatório para entrega de email.

Configure a conta de execução autônoma.

Escolha dentre as seguintes abordagens para automatizar a configuração de conta de processamento autônoma:

  • Execute o utilitário rsconfig.exe para configurar a conta. Para obter mais informações, consulte Configurando a conta de execução autônoma.

  • Escreva o código personalizado que faz chamadas no provedor WMI do Servidor de Relatórios.

Implemente o conteúdo existente em outro servidor de relatórios, incluindo a hierarquia de pastas, as atribuições de função, os relatórios, as assinaturas, as agendas, as fontes de dados e os recursos.

A melhor maneira de recriar um ambiente de servidor de relatórios existente é copiar o banco de dados do servidor de relatórios para uma nova instância de servidor de relatórios.

Outra opção é escrever o código personalizado que recria o conteúdo do servidor de relatórios existente de forma programada. No entanto, lembre-se que as assinaturas, os instantâneos de relatório e o histórico de relatórios não podem ser recriados de forma programada.

Algumas implantações se beneficiam de ambas as técnicas juntas (ou seja, restaurar um banco de dados do servidor de relatórios e, em seguida, executar o código personalizado que modifica o banco de dados do servidor de relatórios para uma instalação específica).

Para obter mais informações sobre a realocação de um banco de dados de servidor de relatórios, consulte Movendo os bancos de dados do servidor de relatório para outro computador. Para obter mais informações sobre a criação do ambiente do servidor de relatórios de forma programada, consulte a seção "Usando o script para migrar conteúdo e pastas do servidor de relatórios" neste tópico.

Ferramentas e tecnologias para automatizar a implantação do servidor

A lista a seguir resume os programas e as interfaces que podem ser usados para automatizar as tarefas de implantação e manutenção:

  • O programa Instalação pode ser executado em modo autônomo para instalar e às vezes configurar os componentes do servidor de relatórios. Utilize a opção de instalação Somente Arquivos para que Instalação configure uma instância de servidor de relatórios.

  • O provedor WMI Reporting Services e os utilitários de linha de comando Reporting Services podem ser usados para a configuração de servidor local e remota.

    O provedor WMI do Reporting Services exibe classes, propriedades e métodos que permitem configurar todos os aspectos de uma instalação Reporting Services inclusive especificando a conta de serviço, as URLs de configuração, a criação e configuração do banco de dados do servidor de relatórios ou a configuração de um servidor de relatórios para envio de email. Escreva o código personalizado ou script para usar o provedor WMI. Para obter mais informações, consulte Provedor WMI do Reporting Services.

    Além de escrever o código, outra alternativa é usar os utilitários de linha de comando (rsconfig.exe e rskeymgmt.exe). Você pode escrever arquivos em lotes que executam os utilitários. É possível usar os utilitários para automatizar algumas, mas não todas as tarefas de configuração.

  • A ferramenta de host de script (rs.exe) do servidor de relatórios pode executar o código personalizado MicrosoftVisual Basic que você talvez escreva para recriar ou transferir o conteúdo existente de um servidor de relatórios para outro. Por essa abordagem, você escreve o script em Visual Basic, o salva como arquivo .rss e usa o rs.exe para executar o script em um servidor de relatórios de destino. O script escrito pode chamar a interface SOAP para o serviço Web do Servidor de Relatórios. Os scripts de implantação são escritos usando essa abordagem porque permite recriar uma pasta de servidor de relatórios namespace e conteúdo e recriar a segurança baseada na função.

Usando scripts para migrar conteúdo e pastas do servidor de relatórios

Você pode escrever scripts que duplicam um ambiente de servidor de relatórios em outra instância de servidor de relatórios. Os scripts de implantação são, em geral, escritos em Visual Basic e então processados usando o utilitário host do script do servidor de relatórios.

Utilize scripts para copiar pastas, fontes de dados compartilhados, recursos, relatórios, atribuições de função e configurações de um servidor para outro. Você pode escrever um script para uma instância de servidor de relatórios e, em seguida, executá-lo em outro servidor para recriar o namespace do servidor de relatórios. Se possuir diversos servidores de relatórios em sua implantação Reporting Services, você pode executar o script em cada servidor individualmente para configurar todos os servidores da mesma maneira.

A lista a seguir descreve as etapas da migração de relatórios de um servidor para outro.

  1. Defina sua variável de script como a URL do servidor de relatório de fonte.

  2. Use os métodos GetReportDefinition e GetProperties para recuperar a definição e as propriedades do relatório.

  3. Defina a URL para que aponte para o servidor de destino.

  4. Use o método CreateReport, passando as propriedades retornadas de GetProperties e a definição de relatório retornada por GetReportDefinition.

Usando uma combinação dos métodos de obtenção e criação, é possível realizar etapas semelhantes para migrar configurações, pastas, fontes de dados compartilhados e recursos. Para obter mais informações sobre os métodos disponíveis, consulte Referência técnica (Reporting Services).

ObservaçãoObservação

Os scripts executados sob as credenciais Windows Microsoft do usuário que está executando o script a menos que as credenciais estejam explicitamente configuradas.

Para obter mais informações sobre os exemplos de script, consulte Sample Scripts. Para obter mais informações sobre como formatar e executar um arquivo de script, consulte Gerando scripts com o Utilitário rs e o Serviço Web.

Usando scripts para configurar propriedades do servidor

Você pode escrever scripts que configuram as propriedades do sistema no servidor de relatórios. O script .NET Visual Basic a seguir exibe um modo de configurar as propriedades. Este exemplo desabilita o controle ActiveX de RSClientPrint, mas é possível substituir EnableClientPrinting e False por qualquer nome e valor válido da propriedade. Para exibir uma lista completa das propriedades do servidor, consulte Propriedades do sistema de servidor de relatório.

Para usar o script, salve-o em um arquivo com extensão .rss e, em seguida, use o utilitário de prompt de comando rs.exe para executar o arquivo no servidor de relatórios. O script não é compilado, logo não é necessário ter uma instalação de Visual Basic. Este exemplo supõe que você possui permissões no computador local que hospeda o servidor de relatórios. Caso não esteja conectado por uma conta que possua permissões, é preciso especificar as informações de conta por meio de argumentos de linha de comando adicionais. Para obter mais informações, consulte Utilitário rs.

Public Sub Main()
        Dim props(0) As [Property]
        Dim setProp As New [Property]
        setProp.Name = "EnableClientPrinting"
        setProp.Value = “False” 
        props(0) = setProp
        Try
            rs.SetSystemProperties(props)
        Catch ex As System.Web.Services.Protocols.SoapException
            Console.Write(ex.Detail.InnerXml)
        Catch e as Exception
            Console.Write(e.Message)
        End Try
End Sub