Написание сценариев для задач развертывания и администрирования

Изменения: 12 декабря 2006 г.

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

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

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

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

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

Задачи развертывания и способы их автоматизации

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

Задача Подход

Установка служб Reporting Services.

Для выполнения автоматической установки программу установки можно запустить из командной строки.

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

Настройка веб-узла в службах Internet Information Services (IIS).

Службы Reporting Services не предоставляют возможностей для создания и настройки веб-узла. Дополнительные сведения об автоматизации этой задачи см. в документации служб IIS.

Настройка учетной записи веб-службы Reporting Services и виртуальных каталогов.

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

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

Создание, обновление и настройка базы данных сервера отчетов.

Для автоматизации настройки базы данных выберите один из следующих подходов.

  • Создайте сценарии GenerateNewDatabaseScript.sql, UpgradeDatabaseScript.sql или GrantRightsScript.sql из стандартных шаблонов сценариев. Эти сценарии можно создать с помощью программы настройки служб Reporting Services или с помощью вызова поставщика инструментария управления Windows. Сценарии можно запустить программно из командной строки с помощью программы osql или из окна запроса в среде Management Studio.
  • Запустите программу rsconfig, чтобы настроить соединение. Программу rsconfig.exe нельзя использовать для создания или обновления базы данных. Если используется программа rsconfig, необходимо запустить сценарий GrantRightsScript, чтобы предоставить разрешение на базу данных сервера отчетов. Необходимо повторно сформировать и запустить сценарий для каждой учетной записи службы. Количество повторных формирований и выполнений сценария зависит от того, как настроено соединение с базой данных сервера отчетов. Так как существуют две учетных записи службы, необходимо сформировать и выполнить сценарии дважды.

Настройка масштабного развертывания.

Для настройки масштабного развертывания выберите один из следующих подходов.

Резервное копирование ключей шифрования.

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

Настройка электронной почты сервера отчетов.

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

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

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

Настройка учетной записи автоматического выполнения.

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

Развертывание существующей среды сервера отчетов, включая иерархию папок, назначение ролей, отчеты, подписки, расписания, источники данных и ресурсы.

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

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

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

Дополнительные сведения о перемещении базы данных сервера отчетов см. в разделе Перемещение базы данных сервера отчетов на другой компьютер. Дополнительные сведения о создании среды сервера отчетов программным способом см. раздел «Дублирование среды сервера отчетов».

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

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

  • Программа установки может запускаться в автоматическом режиме для установки и (в некоторых случаях) настройки компонентов сервера отчетов. Необходимо выбрать параметр установки «Только файлы», чтобы программа установки настроила экземпляр сервера отчетов.
  • Поставщик WMI сервера отчетов и программы командной строки служб Reporting Services могут использоваться для локальной и удаленной настройки сервера.
    Поставщик WMI сервера отчетов предоставляет классы, свойства и методы, реализующие настройку всех параметров установки служб Reporting Services, — создания учетных записей служб, настройки виртуальных каталогов, создания и настройки базы данных сервера отчетов, настройки сервера отчетов для доставки отчетов по электронной почте. Для использования поставщика WMI необходимо написать специальный программный код или сценарий. Дополнительные сведения см. в разделе Reporting Services WMI Provider.
    Альтернативой написанию программного кода является использование программ командной строки (rsconfig.exe и rskeymgmt.exe). Можно написать пакетный файл, запускающий эти программы. Программы могут использоваться для автоматизации не всех задач настройки.
  • Шаблоны сценариев позволяют создавать готовые к использованию сценарии для создания, обновления и настройки базы данных сервера отчетов. Сценарии можно создать в программе настройки служб Reporting Services.
  • Средство сервера сценариев сервера отчетов (rs.exe) может выполнять пользовательский программный код на языке Visual Basic, предназначенный для повторного создания или перемещения существующего содержимого с одного сервера отчетов на другой. При этом подходе сценарий создается на языке Visual Basic, сохраняется в виде RSS-файла и с помощью программы rs.exe запускается на целевом сервере. Написанный сценарий может обращаться к веб-службе сервера отчетов по протоколу SOAP. При создании сценариев развертывания данный подход позволяет повторно создавать пространство имен и содержимое папок сервера отчетов, а также политики безопасности на основе ролей.
    Программу rs.exe можно использовать и для выполнения пользовательских или автоматически созданных сценариев среды SQL Server Management Studio. Для служб Reporting Services функция создания сценариев среды Management Studio формирует программный код на языке Visual Basic для выполнения очень специфических задач (например, создания роли, установки свойств отчета, определения расписания и т. д.). Сформированный код неполон; он захватывает нажатия клавиш и действия мыши. Чтобы использовать этот код, его нужно скопировать в создаваемую программу.
ms159720.note(ru-ru,SQL.90).gifПримечание.
В отличие от предыдущих версий служб Reporting Services, программу установки больше нельзя использовать для развертывания всех возможных конфигураций сервера отчетов. Если нужно настроить масштабное развертывание или разместить базу данных сервера отчетов на удаленном экземпляре SQL Server, необходимо написать сценарий или запустить программу командной строки. Кроме того, поставщик WMI сервера отчетов был обновлен в SQL Server 2005. Чтобы повторно использовать сценарии, написанные для предыдущей версии поставщика WMI, необходимо изменить сценарии для использования новой конечной точки.

Дублирование среды сервера отчетов

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

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

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

  1. Присвойте переменной сценария URL-адрес исходного сервера отчетов.
  2. Воспользуйтесь методами GetReportDefinition и GetProperties для доступа к определению и свойствам отчета.
  3. Присвойте URL-адресу значение, указывающее на целевой сервер.
  4. Воспользуйтесь методом CreateReport, передав ему свойства, возвращенные методом GetProperties, и определение отчета, возвращенное методом GetReportDefinition.

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

ms159720.note(ru-ru,SQL.90).gifПримечание.
Если учетные данные явным образом не указаны, сценарии выполняются от имени пользователя Microsoft Windows, выполняющего сценарий.

Дополнительные сведения об образцах сценариев см. в разделе Образцы сценариев (службы Reporting Services). Дополнительные сведения о форматировании и выполнении файлов сценариев см. в разделе Scripting with the rs Utility and the Web Service.

Пример сценария настройки свойств сервера

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

Чтобы использовать сценарий, сохраните его в файл с расширением RSS, а затем воспользуйтесь программой командной строки rs.exe для запуска файла на сервере отчетов. Сценарий не компилируется, поэтому необязательно иметь установку Visual Basic. В этом примере предполагается, что пользователь имеет необходимые разрешения на локальном компьютере, на котором находится сервер отчетов. Если пользователь не вошел в систему под учетной записью, имеющей необходимые разрешения, необходимо указать сведения об учетной записи с помощью дополнительных аргументов командной строки. Дополнительные сведения см. в разделе Программа 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

См. также

Основные понятия

Управление службами Reporting Services
Программы командной строки сервера отчетов
Поддержка веб-обозревателей в службах Reporting Services
Обзор компонентов служб Reporting Services

Другие ресурсы

GenerateDatabaseCreationScript Method (WMI MSReportServer_ConfigurationSetting Class)
GenerateDatabaseRightsScript Method (WMI MSReportServer_ConfigurationSetting Class)
GenerateDatabaseUpgradeScript Method (WMI MSReportServer_ConfigurationSetting Class)
Как установить SQL Server 2005 из командной строки
Конфигурация по умолчанию для установки сервера отчетов
Развертывание служб Reporting Services

Справка и поддержка

Получение помощи по SQL Server 2005

Журнал изменений

Версия Журнал

12 декабря 2006 г.

Измененное содержимое
  • Создание, обновление и настройка базы данных сервера отчетов.
  • Настройка электронной почты сервера отчетов.

17 июля 2006 г.

Новое содержимое
  • Добавлен пример настройки свойства сервера с помощью сценария.

14 апреля 2006 г.

Измененное содержимое
  • Значительное изменение.