Site Recovery Manager 使環境變數可用,您可以在命令中使用環境變數來執行自訂復原步驟。

Site Recovery Manager Server 上的命令步驟是使用 Site Recovery Manager 服務帳戶的身分識別執行。在預設組態中,復原的虛擬機器上的命令步驟是使用 VMware Tools 服務帳戶的身分識別執行。您可以變更與 recovery.autoDeployGuestAlias 設定相容的虛擬機器的預設組態。如需 recovery.autoDeployGuestAlias 設定的相關資訊,請參閱變更復原設定

Site Recovery Manager 僅針對命令步驟持續時間設定環境變數。如果命令完成,Site Recovery Manager Server 和復原的虛擬機器的客體作業系統中不會存在該特定環境變數。

表格 1. 適用於所有命令步驟的環境變數

名稱

範例

VMware_RecoveryName

執行中復原計劃的名稱。

計劃 A

VMware_RecoveryMode

復原模式。

測試或復原

VMware_VC_Host

復原站台上 vCenter Server 的主機名稱。

vc_hostname.example.com

VMware_VC_Port

用於連絡 vCenter Server 的網路連接埠。

443

Site Recovery Manager 使其他環境變數可用於在 Site Recovery Manager Server或已復原虛擬機器上執行的每個虛擬機器命令步驟。

表格 2. 適用於每個虛擬機器命令步驟的環境變數

名稱

範例

VMware_VM_Uuid

vCenter 用於唯一識別此虛擬機器的 UUID。

4212145a-eeae-a02c-e525-ebba70b0d4f3

VMware_VM_Name

此虛擬機器的名稱,如在受保護站台上所設定。

我的新虛擬機器

VMware_VM_Ref

虛擬機器的受管理物件識別碼。

vm-1199

VMware_VM_GuestName

客體作業系統名稱,如 VIM API 所定義。

otherGuest

VMware_VM_GuestIp

虛擬機器的 IP 位址 (若已知)。

192.168.0.103

VMware_VM_Path

此虛擬機器的 VMX 檔案的路徑。

[datastore-123] jquser-vm2/jquser-vm2.vmx

表格 3. 在復原的虛擬機器上執行的適用於每個虛擬機器命令步驟的環境變數

名稱

值和說明

範例

VMware_GuestOp_OutputFile

此值是命令輸出檔案的路徑。

如果命令建立檔案,Site Recovery Manager 會下載檔案的內容,並將其做為結果新增至復原計劃的歷程記錄和伺服器記錄。

Site Recovery Manager 會將命令輸出檔案的最終 4 KB 新增至復原計劃的歷程記錄和伺服器記錄。如果指令碼產生的輸出大於 4 KB,則必須在自訂位置記錄輸出。

命令完成時,Site Recovery Manager 會刪除命令輸出檔案。

C:\Windows\TEMP\vmware0\srmStdOut.log

可在 Site Recovery Manager 上執行的命令

您可以建立具有下列內容的 myServerScript.bat 檔案。

@echo off
echo %DATE% %TIME% : Recovery Plan %VMware_RecoveryName% ran in %VMware_RecoveryMode% mode
:: some more custom actions

若要執行 myServerScript.bat 檔案,請使用下列命令內容。

C:\Windows\System32\cmd.exe /c C:\myScripts\myServerScript.bat > %VMware_GuestOp_OutputFile% 2>&1

在復原的虛擬機器上執行的命令內容

針對 Windows 客體作業系統,您可以建立具有下列內容的 myGuestScript.bat 檔案。

@echo off
echo %DATE% %TIME% : VM %VMware_VM_Name% recovered by RP %VMware_RecoveryName% ran in %VMware_RecoveryMode% mode
echo %DATE% %TIME% : Configured with the following FQDN: %VMware_VM_GuestName% and IP: %VMware_VM_GuestIp%
:: some more custom actions

若要執行 myGuestScript.bat,請使用下列命令內容。

C:\Windows\System32\cmd.exe /c C:\myScripts\myGuestScript.bat > %VMware_GuestOp_OutputFile% 2>&1

針對 Linux 或 Unix 客體作業系統,您可以建立具有下列內容的 myGuestScript.sh 檔案。

echo $(date) : VM $VMWare_VM_Name recovered by $VMWare_RecoveryName ran
echo $(date) : Configured with the following FQDN: $VMWare_VM_GuestName and IP: $VMWare_VM_GuestIp
# some more custom actions

若要執行 myGuestScript.sh 檔案,請使用下列命令內容。

/bin/bash myGuestScript.sh &>$VMWare_GuestOp_OutputFile