共用方式為


在環境之間移轉 Orchestrator

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

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

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

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

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

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

  3. 在環境 B 中部署 SQL Server

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

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

  6. 在環境 B 部署 Orchestrator 元件

注意

如需詳細資訊,請參閱如何使用 sqlcmd 公用程式

注意

建議在 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 設計工具上快取,且不會使用資料庫備份進行備份。

  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 Server 上啟用 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"  
    
    

    注意

    協調器資料庫已加密;您需要加密密鑰密碼,才能將資料庫新增至 SQL Always ON 設定。 使用下列T-SQL查詢來變更密碼,並在將資料庫新增至 Always ON 安裝程式時,使用 SQL Always ON 可用性精靈中的新密碼:

    使用 Orchestrator ALTER MASTER KEY

    使用 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