在環境間移轉 Orchestrator

重要

這個版本的 Orchestrator 已終止支援。 建議您 升級至 Orchestrator 2022

本文說明如何在環境之間移動 Orchestrator,例如移至新的 SQL Server 2008 R2 或移動 Orchestrator 的某些元件。

下列程序和指令碼可讓您輕易地在環境之間移動。 它們是以使用還原的 Orchestrator 資料庫,將所有 Orchestrator 元件完整移轉至新的 SQL Server 電腦為基礎。

以下是啟用將 Orchestrator 自動移轉到新環境的功能的必要步驟:

  1. 備份環境 A 的 SQL Server 服務主要金鑰

  2. 備份環境 A 的 Orchestrator 資料庫

  3. 在環境 B 中部署 SQL Server

  4. 在環境 B 還原 SQL Server 服務主要金鑰

  5. 在環境 B 還原 Orchestrator 資料庫

  6. 在環境 B 部署 Orchestrator 元件

注意

如需使用 Sqlcmd 公用程式的資訊,請參閱 https://go.microsoft.com/fwlink/?LinkId=246817

注意

建議您在 Orchestrator 資料庫上啟用 SQL Broker,以便讓內部維護工作自動執行。

如何檢查/啟用 SQL Broker

針對 Orchestrator SQL 實例執行下列查詢,以檢查您是否需要啟用 SQL Broker:

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

如果您注意到 Orchestrator 資料庫代理程式已停用 (0) ,您必須使用下列步驟來啟用 SQL Broker:

  1. 停止所有管理伺服器/Runbook 伺服器上的所有 Orchestrator 相關服務:
    Orchestrator Management Service (omanagement)
    Orchestrator 遠端服務 (oremoting)
    Orchestrator Runbook Server Monitor (omonitor)
    Orchestrator Runbook Service (orunbook)
    (Get-Service).Where{$_.Name -match "^omanagement|^oremoting|^omonitor|^orunbook"} | Stop-Service -Confirm:$false
    
  2. 針對 Orchestrator SQL 實例執行下列查詢:
    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. 在所有管理伺服器/Runbook 伺服器上啟動所有 Orchestrator 相關服務:
    (Get-Service).Where{$_.Name -match "^omanagement|^oremoting|^omonitor|^orunbook"} | Start-Service
    

備份環境 A 的 SQL Server 服務主要金鑰

備份 SQL Server 服務主要金鑰。

請使用下列命令建立批次指令碼:

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

其中 『password』 是用來保護所建立檔案中服務主要密鑰的密碼。 如果密碼遺失,就無法從檔案復原服務主要密鑰。

備份環境 A 的 Orchestrator 資料庫

請備份整個 Orchestrator 資料庫。 您可以在系統執行時執行備份;不過,最好在所有 Runbook 作者簽入其 Runbook 的任何擱置變更時執行備份。 暫止變更會在 Runbook 上快取 Designer,而且不會使用資料庫備份進行備份。

  1. 在 [SQL Server 管理] 中,以滑鼠右鍵按兩下 Orchestrator 資料庫,選取 [工作],然後選取 [備份]。

  2. 依據組織的需求配置備份設定。

  3. 選取 [ 腳本],然後選取 [ 腳本動作至新增查詢視窗]。

  4. 選取 [執行 ] 以測試備份腳本。

  5. 利用這個指令碼建立批次檔。 您的批次檔將與以下檔案類似:

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

在環境 B 中部署 SQL Server

將 SQL Server 部署到環境 B。

在環境 B 還原 SQL Server 服務主要金鑰

還原 Microsoft SQL Server 服務主要金鑰,以在新的 SQL 伺服器上啟用 Orchestrator 資料的解密。

使用 命令建立批次文稿:

注意

如果您想要在 SQL Always ON 實例中使用\移轉 Orchestrator 資料庫,系統會提示您輸入資料庫加密密鑰密碼。

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

在環境 B 還原 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查詢來變更密碼,並在將資料庫新增至 Always ON 安裝程式時,於 SQL Always ON 可用性精靈中使用新密碼:

    使用 Orchestrator ALTER MASTER KEY

    重新產生WITH ENCRYPTION BY PASSWORD = 'password';

    GO

在環境 B 部署 Orchestrator 元件

請使用 Orchestrator 安裝程式的無訊息安裝命令來部署 Orchestrator 元件 (Management 伺服器、Web 功能、Runbook 伺服器及 Runbook Designer)。 如需使用命令行部署 Orchestrator 的詳細資訊,請參閱 使用 Orchestrator 命令行安裝工具進行安裝

下列範例會在執行 SQL Server 2008 R2 和 .NET Framework 4 的計算機上安裝所有 Orchestrator:

下列範例會在執行 SQL Server 的電腦上安裝所有 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

範例移轉指令碼和命令

備份 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