vcbMounter和vcbRestore指令只內建於ESX虛擬化平台,隨著ESX虛擬化平台退場,想要在新的ESXi虛擬化平台內線上備份運作中的虛擬主機,勢必要另尋他法——利用VMware vExpert專家William Lam所撰寫的自動化備份腳本。
首先,至github網站(http://0rz.tw/Nckrh)下載最新版本的ghettoVCB自動化備份腳本,請下載「.tar.gz」格式的壓縮檔案至安裝VMware vSphere Client主機內(圖5)。
|
▲圖5 下載最新版的ghettoVCB自動化備份腳本。 |
接著使用VMware vSphere Client登入ESXi 5.1虛擬化平台並開啟Datasotre Browser,在Datastore下建立「BackupVMs」資料夾以存放備份腳本及虛擬主機備份。建立資料夾後,將剛才下載的「ghettoVCB-master.tar.gz」檔案上傳至此資料夾內,如圖6所示。
|
▲圖6 上傳ghettoVCB備份腳本至ESXi 5.1虛擬化平台。 |
在vSphere Client操作介面中依序點選「Configuration > Software > Security Profile > Properties > SSH > Options > Start」,以啟動ESXi 5.1虛擬化平台SSH服務,以便稍後遠端登入。
接著使用SSH Client遠端登入ESXi 5.1虛擬化平台(圖7),登入後先切換至BackupVMs資料夾,然後確定備份腳本檔案確實存在。使用「tar -zxvf」指令將備份腳本壓縮檔案解壓縮(圖8),解壓縮後將會自動建立「ghettoVCB-master」資料夾及相關備份腳本檔案。
|
▲圖7 開啟ESXi虛擬化平台SSH服務以便稍後遠端登入。 |
|
▲圖8 將備份腳本檔案解壓縮。 |
通用設定檔ghetthVCB.conf
ghetthVCB.conf為預設的通用備份設定檔,檔案內容為所有可用的備份參數。讀者可以在了解備份參數後複製並修改制訂成適合自身運作環境的備份設定檔,相關備份參數及說明如下:(0=Disable、1=Enable)
◎VM_BACKUP_VOLUME:備份目的地(若資料夾不存在則會自行建立)。
◎DISK_BACKUP_FORMAT:虛擬主機備份硬碟格式。
◎VM_BACKUP_ROTATION_COUNT:保留虛擬主機的備份數量。
◎POWER_VM_DOWN_BEFORE_BACKUP:虛擬主機在備份作業執行前是否要關機。(請注意!關機中的虛擬主機將不會建立快照)
- ENABLE_HARD_POWER_OFF:是否啟用,因為關機後的虛擬主機ESX/ESXi平台無法透過VMware Tools偵測到虛擬主機。
- ITER_TO_WAIT_SHUTDOWN:是否在備份作業執行前60秒將虛擬主機關機。
- POWER_DOWN_TIMEOUT:當虛擬主機經過60秒後還沒關機完成,則要等待多久便放棄備份該虛擬主機的備份作業。
◎ENABLE_COMPRESSION:是否啟用檔案壓縮功能(請於備份後測試能否順利還原)。
◎VM_SNAPSHOT_MEMORY:是否快照虛擬主機記憶體狀態(預設為禁用)。
◎VM_SNAPSHOT_QUIESCE:是否啟用虛擬主機檔案系統暫停機制(預設為禁用)。
◎ENABLE_NON_PERSISTENT_NFS:是否啟用自動掛載及卸載NFS儲存設備機制。
- UNMOUNT_NFS:是否卸載NFS儲存設備。
- NFS_SERVER:NFS儲存設備IP位址或主機名稱。
- NFS_MOUNT:NFS儲存設備分享路徑。
- NFS_LOCAL_NAME:NFS儲存設備於ESX/ESXi平台上Datastore掛載名稱。
- NFS_VM_BACKUP_DIR:存放虛擬主機備份的資料夾名稱。
◎SNAPSHOT_TIMEOUT:當虛擬主機經過60秒後還沒建立快照,則放棄備份該虛擬主機。
◎EMAIL_LOG:是否開啟E-mail寄送備份日誌功能(預設為禁用)。
- EMAIL_DEBUG:是否開啟E-mail寄送除錯功能(尋找無法寄件的原因)。
- EMAIL_SERVER:指定E-mail郵件伺服器IP位址或主機名稱。
- EMAIL_SERVER_PORT:指定E-mail郵件伺服器通訊埠號(Port)。
- EMAIL_DELAY_INTERVAL:指定E-mail郵件的延遲間隔時間(預設為1秒)。
- EMAIL_TO:指定郵件收件人,如果有多筆記錄則使用逗點隔開。
- EMAIL_FROM:指定郵件寄件人。
◎RSYNC_LINK:採用Rsync同步機制時是否支援Symbolic Link。
上述通用設定檔內容中備份參數雖然有點多,但其實若只是想要實作功能單純的VM虛擬主機線上備份,其實也可以很簡單,將通用設定檔ghettoVCB.conf複製後修改為符合自身的設定即可,不需要的功能不必寫在設定檔案內。例如並不是資料庫類型的VM虛擬主機,同時不需要掛載NFS儲存設備和E-mail日誌功能,那麼設定檔內容將精簡許多。
以下是複製通用設定檔後修改而成的備份設定檔內容mybackup.conf,只有短短3行即可達成,如圖9所示:
|
▲圖9 查看自訂的備份設定檔mybackup.conf內容。 |
線上備份VM虛擬主機
在開始執行備份作業前須注意,由於此次實作採用的是最新版本的VMware vSphere ESXi 5.1虛擬化平台,而自動化備份腳本ghettoVCB.sh內容中有判斷虛擬化平台版本的機制,但因為腳本作者還來不及更新版本判斷機制內容,因此必須手動修改內容加上判斷機制,否則在執行備份腳本時將會發生「You're not running ESX(i)3.5, 4.x, 5.x!」的錯誤訊息,並且備份作業會中斷執行。