Развертывание скриптов и административные задачи

Службы Reporting Services поддерживают использование скриптов для автоматизации обычных задач установки, развертывания и администрирования. Развертывание сервера отчетов является многошаговым процессом. Для настройки развертывания необходимо использовать несколько средств и процессов; Нет отдельной программы или подхода, которую можно использовать для автоматизации всех задач.

Не все шаги следует автоматизировать. В некоторых случаях выполнение шага вручную или с помощью графического средства является самым простым и эффективным подходом. Например, если требуется развернуть большое количество отчетов и моделей, лучше скопировать базы данных сервера отчетов, а не писать код, воссоздающий среду сервера отчетов.

Некоторые шаги требуют специального программного кода. Например, автоматизировать настройку URL-адресов для веб-службы и диспетчера отчетов можно только путем написания специального кода, который обращается к Инструментарию управления Windows (WMI) сервера отчетов. Избежать написания программного кода на этом шаге можно. Для этого примените средство настройки служб Reporting Services.

Чтобы запустить скрипт, который настраивает сервер отчетов, необходимо быть локальным администратором на компьютере, который вы настраиваете. Дополнительные сведения см. в разделе "Настройка сервера отчетов для удаленного администрирования".

В этой статье описаны рекомендуемые подходы к автоматизации конкретных шагов. Несколько программ и программных интерфейсов упоминание; описания каждого из них приведены далее в этой статье.

Задачи развертывания и как автоматизировать их

В следующей таблице обобщены задачи по установке и настройке сервера отчетов, необходимые для его развертывания. Эту таблицу можно использовать для сверки конкретной задачи с подходом, позволяющим ее автоматизировать или выполнить полностью автоматически.

Задача Подход
Установите службы Reporting Services. Для выполнения автоматической установки программу установки можно запустить из командной строки.

Программу установки можно использовать как для установки, так и для настройки сервера отчетов, но только в случае, если указаны параметры конфигурации по умолчанию и система соответствует всем требованиям для этого типа установки. Если установка конфигурации по умолчанию невозможна, необходимо установить только файлы.
Настройте учетную запись службы. Начальная конфигурация этой учетной записи службы выполняется программой установки. Чтобы автоматизировать сделанные в учетной записи службы изменения как задачу, которая будет выполнена после установки, необходимо записать пользовательский код, выполняющий вызовы к поставщику WMI сервера отчетов. Для программной настройки учетной записи службы не существует специальных программ командной строки или шаблонов скриптов.

Если требования к коду не позволяют автоматизировать этот шаг, можно легко настроить учетную запись вручную, запустив средство настройки служб Reporting Services. Дополнительные сведения см. в разделе "Настройка учетной записи службы " (Диспетчер конфигурации сервера отчетов)".
Настройте URL-адреса веб-службы сервера отчетов и диспетчера отчетов. Необходимо записать специальный программный код, обращающийся к поставщику WMI сервера отчетов. Для настройки URL-адресов не существует специальных программ командной строки или шаблонов скриптов.

Если вы хотите избежать написания кода, можно настроить URL-адреса вручную, выполнив средство настройки служб Reporting Services. Дополнительные сведения см. в статье Настройка URL-адреса (диспетчер конфигурации сервера отчетов).
Создание базы данных сервера отчетов. Необходимо записать специальный программный код, обращающийся к поставщику WMI сервера отчетов. Для создания баз данных сервера отчетов и роли RSExecRole не существует специальных программ командной строки или шаблонов скриптов.

Если вы хотите избежать написания кода, можно создать базу данных вручную, выполнив средство настройки служб Reporting Services. Дополнительные сведения см. в статье "Создание базы данных сервера отчетов в собственном режиме" (Диспетчер конфигурации сервера отчетов) в собственном режиме.
Настройка подключения к базе данных сервера отчетов. Если вы изменяете строка подключения, учетную запись или пароль или тип проверки подлинности, запустите программу rsconfig, чтобы настроить подключение. Дополнительные сведения см. в разделе "Настройка подключения к базе данных сервера отчетов" (диспетчер конфигурации сервера отчетов) и служебной программы rsconfig (SSRS).

Нельзя использовать rsconfig.exe для создания или обновления базы данных. База данных и роль RSExecRole должны быть созданы ранее.
Настройка масштабного развертывания. Для настройки масштабного развертывания выберите один из следующих подходов.

— Для соединения экземпляров сервера отчетов с существующим экземпляром запустите программу rskeymgmt.exe. Дополнительные сведения см. в разделе "Добавление и удаление ключей шифрования" для развертывания горизонтального масштабирования (Диспетчер конфигурации сервера отчетов).
— Напишите специальный программный код, обращающийся к поставщику WMI сервера отчетов.
Резервное копирование ключей шифрования. Для автоматизации резервного копирования ключей шифрования выберите один из следующих подходов.

— Для создания резервной копии ключей шифрования запустите программу rskeymgmt.exe. Дополнительные сведения см. в статье "Резервное копирование и восстановление ключей шифрования служб Reporting Services".
— Напишите специальный программный код, обращающийся к поставщику WMI сервера отчетов.
Настройка электронной почты сервера отчетов. Напишите пользовательский код, который выполняется в поставщике WMI служб Reporting Services. Поставщик поддерживает подмножество установок конфигурации электронной почты.

Хотя файл RSReportServer.config содержит все параметры, не используйте этот файл автоматически. В особенности не используйте пакетный файл для копирования файла на другой сервер отчетов. Каждый файл конфигурации содержит значения, определенные для текущего экземпляра. Эти значения недопустимы для других экземпляров сервера отчетов.

Дополнительные сведения о параметрах см. в разделе "Параметры электронной почты" — собственный режим служб Reporting Services (Configuration Manager).
Настройка учетной записи автоматического выполнения. Для автоматизации настройки учетной записи автоматического выполнения выберите один из следующих подходов.

— Запустите программу rsconfig.exe для настройки учетной записи. Дополнительные сведения см. в разделе "Настройка автоматической учетной записи выполнения " (диспетчер конфигурации сервера отчетов)".
— Напишите специальный программный код, обращающийся к поставщику WMI сервера отчетов.
Развертывание существующего содержимого на другом сервере отчетов, включая иерархию папок, назначение ролей, отчеты, подписки, расписания, источники данных и ресурсы. Лучший способ повторно создать существующую среду сервера отчетов — скопировать базу данных сервера отчетов в новый экземпляр сервера отчетов.

Альтернативный подход заключается в написании специального кода, который программным путем заново создает существующее содержимое сервера отчетов. Однако подписки, моментальные снимки отчетов и журнал отчетов не могут быть повторно созданы программным способом.

Некоторые развертывания могут воспользоваться преимуществами обоих методов вместе. Например, восстановите базу данных сервера отчетов, а затем запустите пользовательский код, который изменяет базу данных сервера отчетов для определенной установки.

Подробный пример см . в примере скрипта служб Reporting Services rs.exe для копирования содержимого между серверами отчетов.

Дополнительные сведения о перемещении базы данных сервера отчетов см. в разделе "Перемещение баз данных сервера отчетов" на другой компьютер (собственный режим SSRS). Дополнительные сведения о создании среды сервера отчетов программным способом см. в разделе "Использование скриптов для переноса содержимого и папок сервера отчетов" в этой статье.

Средства и технологии для автоматизации развертывания сервера

В следующем списке обобщаются программы и интерфейсы, которые могут использоваться для автоматизации задач развертывания и обслуживания.

  • Программа установки может запускаться в автоматическом режиме для установки и (в некоторых случаях) настройки компонентов сервера отчетов. Чтобы программа установки настроила экземпляр сервера отчетов, следует использовать параметр установки «Только файлы».

  • Поставщик WMI служб Reporting Services и служебные программы командной строки Служб Reporting Services можно использовать для настройки локального и удаленного сервера.

    Поставщик WMI служб Reporting Services предоставляет классы, свойства и методы, позволяющие настроить все аспекты установки служб Reporting Services. Эти аспекты включают указание учетной записи службы и настройку URL-адресов. Они также могут включать создание и настройку базы данных сервера отчетов или настройку сервера отчетов для доставки электронной почты. Для использования поставщика WMI необходимо записать специальный программный код или скрипт. Дополнительные сведения см. в разделе Доступ к поставщику WMI для служб Reporting Services.

    Альтернативой написанию программного кода является использование программ командной строки (rsconfig.exe и rskeymgmt.exe). Можно записать пакетный файл, запускающий эти программы. Программы могут использоваться для автоматизации не всех задач настройки.

  • Средство узла скрипта сервера отчетов (rs.exe) может запускать пользовательский код Microsoft Visual Basic, который можно записать для повторного создания или перемещения существующего содержимого с одного сервера отчетов на другой. С помощью этого подхода вы записываете скрипт в Visual Basic, сохраните его в виде файла .rss и используете rs.exe для запуска скрипта на целевом сервере отчетов. Скрипт, который вы пишете, может вызывать интерфейс SOAP в веб-службу сервера отчетов. При создании скриптов развертывания данный подход позволяет повторно создавать пространство имен и содержимое папок сервера отчетов, а также политики безопасности на основе ролей.

  • В выпуске SQL Server 2012 появились командлеты PowerShell для режима интеграции с SharePoint. PowerShell можно использовать для настройки и администрирования интеграции с SharePoint. Дополнительные сведения см. в разделе командлетов PowerShell для режима SharePoint служб Reporting Services.

Миграция содержимого и папок сервера отчетов с помощью скриптов

Можно записать скрипт, дублирующие среду сервера отчетов на другом экземпляре сервера отчетов. Скрипты развертывания записываются в Visual Basic, а затем обрабатываются с помощью служебной программы узла сервера отчетов.

Подробный пример см . в примере скрипта служб Reporting Services rs.exe для копирования содержимого между серверами отчетов.

Скрипты позволяют копировать с одного сервера на другой папки, общие источники данных, ресурсы, отчеты, назначение ролей и настройки. Если есть необходимость воссоздания пространства имен сервера отчетов, они пишутся для одного экземпляра сервера отчетов, а затем выполняются на другом. При наличии нескольких серверов отчетов в развертывании служб Reporting Services можно запускать скрипт на каждом сервере по отдельности, чтобы настроить все серверы одинаково.

Следующий перечень описывает шаги, необходимые для перемещения отчетов с одного сервера на другой.

  1. Присвойте переменной скрипта URL-адрес исходного сервера отчетов.

  2. Воспользуйтесь методами GetItemDefinition и GetProperties для получения определения и свойств отчета.

  3. Присвойте URL-адресу значение, указывающее на целевой сервер.

  4. Воспользуйтесь методом CreateCatalogItem , передав ему свойства, возвращенные методом GetProperties , и определение отчета, возвращенное методом GetItemDefinition.

Пользуясь методами get и create, можно выполнить аналогичные шаги для переноса настроек, папок, общих источников данных и ресурсов. Дополнительные сведения о методах, доступных для вас, см. в техническом справочнике (SSRS).

Примечание.

Скрипты выполняются под учетными данными Microsoft Windows пользователя, выполняющего скрипт, если учетные данные не заданы явным образом.

Дополнительные сведения о форматировании и запуске файла скрипта см. в разделе "Скрипт" с помощью служебной программы rs.exe и веб-службы.

Настройка свойств сервера с помощью сценариев

Можно записать сценарии, которые зададут системные свойства на сервере отчетов. В следующем скрипте .NET Для Visual Basic показан один из способов задания свойств. Этот сценарий отключает элемент управления RSClientPrint ActiveX, но можно заменить значения EnableClientPrinting и False любым допустимым именем свойства и значением. Полный список свойств сервера см. в разделе "Свойства системы сервера отчетов".

Чтобы использовать скрипт, сохраните его в файл с расширением .rss, а затем используйте rs.exe служебную программу командной строки для запуска файла на сервере отчетов. Скрипт не компилируется, поэтому наличие установки Visual Basic не обязательно. В этом примере предполагается, что пользователь имеет необходимые разрешения на локальном компьютере, на котором находится сервер отчетов. Если вы не вошли в учетную запись с разрешениями, необходимо указать сведения об учетной записи с помощью других аргументов командной строки. Дополнительные сведения см. в RS.exe служебной программе (SSRS).

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  

Метод GenerateDatabaseCreationScript (WMI MSReportServer_ConfigurationSetting)
Метод GenerateDatabaseRightsScript (WMI MSReportServer_ConfigurationSetting)
Метод GenerateDatabaseUpgradeScript (WMI MSReportServer_ConfigurationSetting)
Установка SQL Server из командной строки
Install Reporting Services native mode report server
Сервер отчетов служб Reporting Services (собственный режим)
Служебные программы командной строки сервера отчетов (SSRS)
Поддержка браузера для служб Reporting Services
Средства служб Reporting Services

Есть еще вопросы? Посетите форум служб Reporting Services.