Site Recovery Manager 使環境變數可用,您可以在命令中使用環境變數來執行自訂復原步驟。
在預設組態中,復原的虛擬機器上的命令步驟是使用 VMware Tools 服務帳戶的身分識別執行。您可以變更與 recovery.autoDeployGuestAlias 設定相容的虛擬機器的預設組態。如需 recovery.autoDeployGuestAlias 設定的相關資訊,請參閱變更復原設定。
Site Recovery Manager 僅針對命令步驟持續時間設定環境變數。如果命令完成,復原的虛擬機器的客體作業系統中不會存在該特定環境變數。
名稱 | 值 | 範例 |
---|---|---|
VMware_RecoveryName | 執行中復原計劃的名稱。 | 計劃 A |
VMware_RecoveryMode | 復原模式。 | 測試或復原 |
VMware_VC_Host | 復原站台上 vCenter Server 的主機名稱。 | vc_hostname.example.com |
VMware_VC_Port | 用於連絡 vCenter Server 的網路連接埠。 | 443 |
Site Recovery Manager 使其他環境變數可用於已復原虛擬機器上執行的每個虛擬機器命令步驟。
名稱 | 值 | 範例 |
---|---|---|
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 |
名稱 | 值和說明 | 範例 |
---|---|---|
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 上執行的命令
對於
Site Recovery Manager 應用裝置,您可以建立具有下列內容的
myServerScript.sh 指令碼。
clear echo "$(date "+%Y-%m-%d %H:%M:%S") : Recovery Plan $VMware_RecoveryName ran in $VMware_RecoveryMode mode" # some more custom actions
備註: 在指令碼中撰寫命令時,請勿使用分隔號 (|) 和單引號 (') 符號。
若要執行
myServerScript.sh 指令碼,請使用下列命令內容。
/bin/sh /home/admin/myServerScript.sh無法在 VMware Cloud on AWS 上執行伺服器命令。
在復原的虛擬機器上執行的命令內容
針對 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