Совсем недавно стал доступен Service Pack 1 (SP1) для линейки продуктов Microsoft System Center 2012. Попробую рассмотреть процесс обновления тех продуктов линейки, с которыми у меня есть возможность работать.
Из документа Upgrade Sequencing for System Center 2012 SP1 можно понять, что в средах, где используется несколько продуктов линейки System Center 2012 важна правильная последовательность обновления этих продуктов до уровня SP1, а именно есть рекомендация соблюдать следующий порядок обновления:
1. Orchestrator
2. Service Manager
3. Data Protection Manager
4. Operations Manager
5. Configuration Manager
6. Virtual Machine Manager
7. App Controller
В этой заметке мы рассмотрим первый пункт этой последовательности – обновление System Center 2012 Orchestrator (SCO) до уровня SP1.
В нашем примере будет рассматриваться ситуация, когда все компоненты работающего экземпляра System Center 2012 Orchestrator развернуты на одном виртуальном сервере под управлением Windows Server 2008 R2 Standard с локальным экземпляром БД SQL Server 2008 R2 Standard.
Перед началом описанного ниже процесса обновления мы должны убедиться в том, что текущий уровень обновления существующего экземпляра SCO не ниже Update Rollup 2. Увидеть наличие установленного обновления можно разными путями. Самый простой - через оснастку Programs and Features
Мне нигде не удалось найти чёткой информации о том, что для обновления SCO поддерживается in-place upgrade, а судя по скудной документации о процессе обновления, – процесс представляет из себя фактическую переустановку исполняемых компонент SCO. И поэтому, чтобы убить сразу трёх зайцев – обновить операционную систему сервера, SQL Server и сами исполняемые файлы SCO, - решено выполнить развёртывание нового виртуального сервера SCO под управлением Windows Server 2012 Standard с БД на SQL Server 2012 Standard, с учетом того, что такая конфигурация допускается для SCO SP1 согласно документа Single-Computer Requirements for Orchestrator in System Center 2012 SP1
Для установки SQL Server 2012 (точно также как и для SCO, в частности например по информации из Known Issues из состава Release Notes for Orchestrator in System Center 2012 SP1) потребуется предварительно установленные компоненты Microsoft .NET Framework 3.5. Об установке этих компонент на Windows Server 2012 было описано в заметке SQL Server 2012 – Проблемы установки на Windows Server 2012
Устанавливаем SQL Server 2012 Standard с набором компонент:
- Database Engine
- Client Tools Connectivity
- Management Tools – Complete
Порядок сортировки – SQL_Latin1_General_CP1_CI_AS
После установки сервера SQL не забываем настроить его экземпляр на использование статического порта TCP 1433 и включить в Windows Firewall разрешающее правило для входящих подключений на этот порт
netsh advfirewall firewall add rule name = "SQL Server Default Port" dir = in protocol = tcp action = allow localport = 1433
Основные необходимые компоненты Microsoft .NET Framework 4 уже включены в Windows Server 2012 по умолчанию а дополнительные компоненты, в том числе и Microsoft Internet Information Services (IIS) будут установлены в дальнейшем автоматически в ходе установки SCO SP1.
Для того чтобы БД SCO была успешно перенесена на другой сервер нам необходимо будет воспользоваться инструкцией описанной в статье Migrate Orchestrator Between Environments. Нам понадобится выполнить следующую последовательность действий:
1. Создать резервную копию мастер-ключа SQL Server Service (Master Key) и базы данных Orchestrator на старом сервере
2. После того как на новом сервере развернут экземпляр SQL Server, восстановить мастер-ключ а затем базу данных Orchestrator
3. Выполнить установку компонент Orchestrator SP1 на новом сервере с подключением к восстановленной БД.
Важно помнить про то, что замена мастер-ключа на новом сервере SQL может привести к неработоспособности БД использующих эту функциональность ранее на этом сервере. В нашей ситуации можно об этом не беспокоиться, так как мы развернули свежий экземпляр SQL Server, на котором ещё пока нет ни одной БД, и в дальнейшем он будет использоваться только для целей SCO (согласно лицензионных требований к экземпляру SQL Server, обслуживающему продукт System Center)
Итак, на старом сервере SCO с правами администратора открываем командную строку и выполняем последовательно команды сначала создания резервной копии мастер-ключа а затем БД Orchestrator командами:
Sqlcmd -Q "BACKUP SERVICE MASTER KEY TO FILE ='C:BACKUPMASTER_KEY.BAK' ENCRYPTION BY PASSWORD = 'TempP@ssw0rd1'"
Sqlcmd -Q "BACKUP DATABASE Orchestrator TO DISK=N'C:BACKUPOrchestratorDB.bak'"
Два полученных файла переносим на новый сервер и выполняем сначала восстановление мастер-ключа, затем БД Orchestrator командами:
Sqlcmd -Q "RESTORE SERVICE MASTER KEY FROM FILE = 'C:BACKUPMASTER_KEY.BAK' DECRYPTION BY PASSWORD = 'TempP@ssw0rd1';"
Sqlcmd -Q "RESTORE DATABASE [Orchestrator] FROM DISK = N'C:BACKUPOrchestratorDB.bak' WITH FILE = 1, MOVE N'Orchestrator' TO N'C:Program FilesMicrosoft SQL ServerMSSQL11.MSSQLSERVERMSSQLDATAOrchestrator.mdf', MOVE N'Orchestrator_log' TO N'C:Program FilesMicrosoft SQL ServerMSSQL11.MSSQLSERVERMSSQLDATAOrchestrator_log.LDF', NOUNLOAD"
При желании содержимое указанных запросов можно выполнить конечно не только в командном интерпретаторе Sqlcmd, но и в графическом интерфейсе SQL Server Management Studio
Перед началом запуска процесса установки SCO SP1 на новом сервере не забываем включить в группу локальных администраторов доменные учетные записи, от имени которых будут работать службы SQL Server и Orchestrator.
Теперь, скачав дистрибутив System Center 2012 Orchestrator с интегрированным SP1 (Sys_Ctr_Orchestrator_2012_wSP1_Multi-Language_X18-56731.ISO) приступаем к установке с полным набором компонент:
- Management Server
- Runbook Server
- Orchestration Console and Web Service
- Runbook Designer
На шаге проверки необходимых программных компонент включаем автоматическую до-установку роли веб-сервера – Enable IIS Role…
Вводим сведения о доменной учетной записи, от имени которой будут работать процессы Orchestrator (напомню, что учётная запись предварительно уже включена в группу локальных администраторов нового сервера) и нажимаем кнопку для её проверки – Test
Вводим имя сервера БД. В нашем случае имя совпадает с именем нового сервера и выполняем тестирование проверки соединения – Test Database Connection
На шаге конфигурирования базы данных выбираем совместимый существующий экземпляр БД, который был импортирован в SQL Server нами ранее - Orchestrator
Определяемся с группой доступа для пользователей Runbook Designer и Deployment Manager. В нашем случае это та же доменная группа доступа которую мы используем на старом сервере SCO RTM
Порты без реальных на то причин оставляем по умолчанию…
При этом не забываем добавить разрешающее правило в Windows Firewall для этих двух портов:
netsh advfirewall firewall add rule name = "System Center 2012 - Orchestrator - REST-based web service" dir = in protocol = tcp action = allow localport = 81
netsh advfirewall firewall add rule name = "System Center 2012 - Orchestrator - Orchestration Console" dir = in protocol = tcp action = allow localport = 82
Далее дожидаемся успешного окончания процесса установки…
В случае же, если мы на подготовительном этапе перенесём на новый сервер БД Orchestrator без предварительного переноса мастер-ключа службы SQL Server, процесс установки может быть завершён с ошибкой финализации конфигурации…
При этом в лог-файле установки, который, как правило, можно найти здесь
%LOCALAPPDATA%Microsoft System Center 2012OrchestratorLogsSetupWizard.log
будет присутствовать информация об исключении, возникшем по причине неверного мастер-ключа примерно следующего вида:
03:38:38:Executing FinalConfigurationInstallAction
03:38:38:Database is NOT empty: Orchestrator
03:38:38:Windows auth = True
03:38:38:Opening SQL connection
03:38:38:Problem executing sql: Threw Exception.Type: System.Data.SqlClient.SqlException, Exception Error Code: 0x80131904, Exception.Message: Error 15581, Level 16, State 7, Procedure Encrypt, Line 9, Message: Please create a master key in the database or open the master key in the session before performing this operation…
Итак, после успешного окончания процесса установки открываем консоль Orchestrator Deployment Manager и импортируем загруженные пакеты интеграции System Center 2012 – Orchestrator Component Add-ons and Extensions (файл System_Center_2012_Orchestrator_Integration_Packs.EXE - пакеты от RTM версии SCO) и System Center 2012 Service Pack 1 - Orchestrator Component Add-ons and Extensions (файл System_Center_2012_SP1_Integration_Packs.EXE от версии SP1), а затем в этой же консоли выполняем развёртывание (Deploy) этих пакетов, чтобы они стали нам доступны в консоли Runbook Designer
Также на новый сервер не забываем установить все необходимые консоли управления и исполняемые файлы, от которых зависят импортированные пакеты интеграции, например для работы пакета интеграции для System Center 2012 Operations Manager потребуется установка соответствующей консоли Operations Console и Operations Manager Shell.
После этого в консоли Runbook Designer в меню Options проверяем работоспособность всех коннекторов, которые мы делали ранее в RTM версии SCO.
Ну и в конце соответственно проверяем доступность и работоспособность всех настроенных ранее в версии SCO RTM цепочек Runbook.
Так же стоит отметить что в Release Notes for Orchestrator in System Center 2012 SP1 есть информация о возможности изменении значения параметра реестра NoInteractiveServices в ключе HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlWindows в случае если на нашем SCO сервере под управлением Windows Server 2012 есть какие-либо последовательности задач Runbook использующие Run Program activity в режиме Interactive mode.
Источники информации:
- TechNet Library - What's New in System Center 2012 SP1
- TechNet Library - Upgrade Sequencing for System Center 2012 SP1
- TechNet Library - Single-Computer Requirements for Orchestrator in System Center 2012 SP1
- TechNet Library - Release Notes for Orchestrator in System Center 2012 SP1
- TechNet Library - Migrate Orchestrator Between Environments
- WindowsITPro.com - How do I upgrade from System Center Orchestrator 2012 to System Center Orchestrator 2012 SP1?
- WindowsITPro.com - What OSs can System Center 2012 SP1 run on?
А зачем на SQL Client Tools Connectivity?
Orchestrator requires only the basic SQL Server features found in the Database Engine Service. No additional features are required.
Возможно необходимости и нет, но как то так себя приучил иметь клиентские компоненты везде где есть инджин. Может пригодиться, ну например, если захочется использовать какие-то хитрые вещи по работе с SQL Server в "активитях".
Обратная ссылка: System Center 2012 Orchestrator SP1 | vMind.ru /