在環境之間移轉 Orchestrator
本文說明如何在環境之間移動 Orchestrator,例如移至新的 SQL Server 2008 R2 或移動 Orchestrator 的某些元件。
本文說明如何在環境之間移動 Orchestrator,例如移至新的 SQL Server 2022 或移動 Orchestrator 的某些元件。
下列程序和指令碼可讓您輕易地在環境之間移動。 它們是以所有 Orchestrator 元件的完整移轉至新的 SQL Server 計算機為基礎,並具有還原的 Orchestrator 資料庫。
以下是啟用將 Orchestrator 自動移轉到新環境的功能的必要步驟:
備份環境 A 的 SQL Server 服務主要金鑰
備份環境 A 的 Orchestrator 資料庫
在環境 B 中部署 SQL Server
在環境 B 還原 SQL Server 服務主要金鑰
在環境 B 還原 Orchestrator 資料庫
在環境 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:
- 停止所有管理伺服器/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
- 針對 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
- 在所有管理伺服器/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 設計工具上快取,且不會使用資料庫備份進行備份。
在 [SQL Server 管理] 中,以滑鼠右鍵按兩下 Orchestrator 資料庫,選取 [ 工作],然後選取 [ 備份]。
依據組織的需求配置備份設定。
選取 [ 腳本],然後選取 [ 腳本動作至新增查詢視窗]。
選取 [ 執行] 以測試備份腳本。
利用這個指令碼建立批次檔。 您的批次檔將與以下檔案類似:
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 資料庫。
在 [SQL Server 管理] 中,以滑鼠右鍵按兩下 Orchestrator 資料庫,選取 [ 工作],然後選取 [ 還原]。
依據組織的需求配置還原設定。
選取 [ 腳本],然後選取 [ 腳本動作至新增查詢視窗]。
選取 [ 執行 ] 以測試還原腳本。
利用這個指令碼建立批次檔。 您的批次檔將與以下檔案類似:
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