在環境之間移轉 Orchestrator
本文說明如何在環境之間移動 Orchestrator,例如移至新的 SQL Server 2008 R2 或移動 Orchestrator 的某些元件。
下列程序和指令碼可讓您輕易地在環境之間移動。 它們是以所有 Orchestrator 元件的完整移轉至新的 SQL Server 計算機為基礎,並具有還原的 Orchestrator 資料庫。
以下是啟用將 Orchestrator 自動移轉到新環境的功能的必要步驟:
備份環境 A 的 SQL Server 服務主要金鑰
備份環境 A 的 Orchestrator 資料庫
在環境 B 中部署 SQL Server
在環境 B 還原 SQL Server 服務主要金鑰
在環境 B 還原 Orchestrator 資料庫
在環境 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:
- 停止所有管理伺服器/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