Поделиться через


Миграция Orchestrator между средами

В этой статье описывается перемещение Оркестратора между средами, например переход на новый SQL Server 2008 R2 или перемещение некоторых компонентов Orchestrator.

В этой статье описывается перемещение Оркестратора между средами, например переход на новый SQL Server 2022 или перемещение некоторых компонентов Orchestrator.

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

Для обеспечения автоматической миграции Orchestrator в новую среду должны быть выполнены следующие шаги:

  1. Резервное копирование главного ключа службы SQL Server в среде А

  2. Резервное копирование базы данных Orchestrator в среде А

  3. Развертывание SQL Server в среде B

  4. Восстановление главного ключа службы SQL Server в среде Б

  5. восстановление базы данных Orchestrator в среде Б;

  6. Развертывание компонентов Orchestrator в среде Б

Примечание.

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

Примечание.

Рекомендуется включить SQL Broker в базе данных Orchestrator, чтобы внутренние задачи обслуживания выполнялись автоматически.

Проверка и включение SQL Broker

Проверьте, нужно ли включить SQL Broker, выполнив следующий запрос к экземпляру SQL Orchestrator:

Select Name, is_broker_enabled, Compatibility_Level from sys.databases Where name = 'Orchestrator'

Если вы заметили, что брокер базы данных Orchestrator отключен (0), необходимо включить SQL Broker со следующими шагами:

  1. Остановите все связанные службы Orchestrator на всех серверах управления или серверах Runbook:
    Служба управления Orchestrator (omanagement)
    Служба удаленного взаимодействия Orchestrator (oremoting)
    Монитор сервера Orchestrator Runbook (omonitor)
    Служба Runbook Orchestrator (orunbook)
    (Get-Service).Where{$_.Name -match "^omanagement|^oremoting|^omonitor|^orunbook"} | Stop-Service -Confirm:$false
    
  2. Выполните следующий запрос к экземпляру SQL Orchestrator:
    ALTER DATABASE Orchestrator SET SINGLE_USER WITH ROLLBACK IMMEDIATE
    GO
    ALTER DATABASE Orchestrator SET ENABLE_BROKER
    GO
    ALTER DATABASE Orchestrator SET MULTI_USER
    GO
    
  3. Запустите все связанные службы Orchestrator на всех серверах управления или серверах Runbook:
    (Get-Service).Where{$_.Name -match "^omanagement|^oremoting|^omonitor|^orunbook"} | Start-Service
    

Резервное копирование главного ключа службы SQL Server в среде А

Резервное копирование главного ключа службы SQL Server.

С помощью следующей команды создайте пакетный сценарий:

Sqlcmd -Q "BACKUP SERVICE MASTER KEY TO FILE ='C:\BACKUP\MASTER_KEY.BAK' ENCRYPTION BY PASSWORD = 'password'"  

Где "password" — это пароль, который будет использоваться для защиты главного ключа службы в созданном файле. Если пароль потерян, главный ключ службы не может быть восстановлен из файла.

Резервное копирование базы данных Orchestrator в среде А

Создайте резервную копию всей базы данных Orchestrator. Резервное копирование можно выполнить при запуске системы; Однако рекомендуется выполнить резервное копирование, если все авторы runbook проверили все ожидающие изменения в их модулях Runbook. Ожидающие изменения кэшируются в конструкторе Runbook и не резервируются с резервной копией базы данных.

  1. В службе управления SQL Server щелкните правой кнопкой мыши базу данных Orchestrator, выберите "Задачи", а затем нажмите кнопку "Резервное копирование".

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

  3. Выберите "Скрипт" и выберите "Действие скрипта" в окно "Создать запрос".

  4. Выберите "Выполнить" , чтобы протестировать скрипт резервного копирования.

  5. Создайте пакетный файл с помощью этого сценария. Пакетный файл будет выглядеть примерно так:

    Sqlcmd -Q "BACKUP DATABASE Orchestrator TO DISK=N'C:\BACKUP\OrchestratorDB.bak'"  
    

Развертывание SQL Server в среде B

Развертывание SQL Server в среде B.

Восстановление главного ключа службы SQL Server в среде Б

Восстановите главный ключ службы Microsoft SQL Server, чтобы включить расшифровку данных Orchestrator на новом сервере SQL Server.

Создайте пакетный скрипт с помощью команды:

Примечание.

Если вы планируете использовать базу данных Orchestrator в экземпляре Sql Always ON , вам будет предложено ввести пароль ключа шифрования базы данных.

Sqlcmd -Q "RESTORE SERVICE MASTER KEY FROM FILE = 'C:\BACKUP\MASTER_KEY.BAK' DECRYPTION BY PASSWORD = 'password';"  

Восстановление базы данных Orchestrator в среде Б

Выполните следующие шаги создания пакетного сценария, с помощью которого на новом компьютере SQL Server будет выполнено восстановление базы данных Orchestrator.

  1. В службе управления SQL Server щелкните правой кнопкой мыши базу данных Orchestrator, выберите "Задачи" и выберите " Восстановить".

  2. Настройте параметры восстановления согласно требованиям вашей организации.

  3. Выберите "Скрипт" и выберите "Действие скрипта" в окно "Создать запрос".

  4. Выберите "Выполнить" , чтобы проверить скрипт восстановления.

  5. Создайте пакетный файл с помощью этого сценария. Пакетный файл будет выглядеть примерно так:

    Sqlcmd -Q "RESTORE DATABASE [Orchestrator] FROM  DISK = N'C:\BACKUP\OrchestratorDB.bak'WITH  FILE = 1,  NOUNLOAD,  STATS = 10"  
    
    

    Примечание.

    База данных Orchestrator зашифрована; Вам нужен пароль ключа шифрования для добавления базы данных в настройку SQL Always ON . Используйте следующий T-SQL запрос, чтобы изменить пароль и использовать новый пароль в мастере доступности SQL Always ON при добавлении базы данных в программу установки Always ON:

    Использование Orchestrator ALTER MASTER KEY

    ПОВТОРНОЕ СОЗДАНИЕ С ПОМОЩЬЮ ШИФРОВАНИЯ ПО ПАРОЛЮ = "password";

    GO

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

Выполните развертывание компонентов Orchestrator (сервер Management, веб-функции, серверы Runbook и модули Runbook Designer) в автоматическом режиме с помощью команд настройки Orchestrator. Дополнительные сведения о развертывании Orchestrator с помощью командной строки см. в разделе "Установка с помощью средства установки командной строки Orchestrator".

В следующем примере устанавливается все оркестраторы на компьютере под управлением SQL Server 2008 R2 и платформа .NET Framework 4:

Следующий пример устанавливает Orchestrator на компьютере под управлением SQL Server:

Примечание.

Ознакомьтесь с рекомендациями по безопасному подключению к SQL Server).

%systemdrive%\sco\setup\setup.exe /Silent `
    /ServiceUserName:%computername%\administrator `
    /ServicePassword:password `
    /Components:All `
    /DbServer:%computername%  /DbPort:1433 /DbNameNew:OrchestratorSysPrep `
    /WebConsolePort:82 /WebServicePublicUrl:"http://localhost:81" `
    /WebServicePort:81 /WebConsolePublicUrl:"http://localhost:82" `
    /OrchestratorRemote `
    /UseMicrosoftUpdate:1 /SendCEIPReports:1 /EnableErrorReporting:always

Примеры сценариев и команд миграции

Пример резервного копирования главного ключа службы SQL Server

Sqlcmd -Q "BACKUP SERVICE MASTER KEY TO FILE ='C:\BACKUP\MASTER_KEY.BAK' ENCRYPTION BY PASSWORD = 'password'"  

Пример резервной копии базы данных Orchestrator

Sqlcmd -Q "BACKUP DATABASE Orchestrator TO DISK=N'C:\BACKUP\OrchestratorDB.bak'"  

Пример ключа главной службы SQL Server

Sqlcmd -Q "RESTORE SERVICE MASTER KEY FROM FILE = 'c:\temp_backups\keys\service_master_key' DECRYPTION BY PASSWORD = 'password'"  

Пример базы данных Orchestrator для восстановления

Sqlcmd -Q "RESTORE DATABASE [Orchestrator] FROM  DISK = N'C:\BACKUP\OrchestratorDB.bak'WITH  FILE = 1,  NOUNLOAD,  STATS = 10"  

Установка Orchestrator из примера пакетного файла

%systemdrive%\sco\setup\setup.exe /Silent `
    /ServiceUserName:%computername%\administrator `
    /ServicePassword:password `
    /Components:All `
    /DbServer:%computername%  /DbPort:1433 /DbNameNew:OrchestratorSysPrep `
    /WebConsolePort:82 /WebServicePublicUrl:"http://localhost:81" `
    /WebServicePort:81 /WebConsolePublicUrl:"http://localhost:82" `
    /OrchestratorRemote `
    /UseMicrosoftUpdate:1 /SendCEIPReports:1 /EnableErrorReporting:always