VMware VI3 虛擬機(jī)熱備份的幾種方法
VM 熱備份有幾種方式:
1) 利用CONVERTER, 或第三方工具, 如 Platespin, Vizioncore 的產(chǎn)品等。
2) 在VCB PROXY服務(wù)器上通過VCB來熱備
3) 或是在ESX的SERVICE CONSOLE上通過vcbMounter或vmware-cmd工具來完成。 這里主要說說第3種, 也是ESX管理中最常用的。
1. vcbMounter是ESX3附帶的VM備份工具。 它可以對運(yùn)行中的VM進(jìn)行熱備份, 后備的內(nèi)容包括盤數(shù)據(jù), 內(nèi)存數(shù)據(jù)和VM的配置數(shù)據(jù)等。 vcbMounter后備產(chǎn)生的IMAGE可用做VM的備份及災(zāi)后復(fù)原。 一個(gè)典型的vcbMounter例子:
>vcbMounter -h esxhost -u backupuser -p password -a ipaddr:192.168.10.1 -r /vmfs/volumes/SAN1/vm-backups/vm1
-h: 指定執(zhí)行命令的ESX HOST 或 VIRTUAL CENTER。
-u: 執(zhí)行命令的帳戶, 如果-h指定的是ESX, 要用該ESX上的帳戶, 如果是VC, 則要用VC上的帳戶。
-p: 帳戶的PASSWORD。
-a: 指定后備的VM, 可以用, IP, FQDN, VM名等。
-r: 指定存放備份IAMGE的目錄。 可以在本地或共享存儲上。
使用上述命令產(chǎn)生VM后備時(shí), VM的所有盤文件被切割成2GB的小文件集并進(jìn)行了壓縮。 比如VM有兩個(gè)半滿的10GB的盤(20GB IN SIZE, 10GB IN USED), 后備的結(jié)果是產(chǎn)生了10個(gè)小盤文件, 10個(gè)小文件的總SIZE等于10GB, 就是你VM中的已用的容量。
由于上述vcbMounter并非簡單將原VM的盤文件考出來(而是進(jìn)行了分割和壓縮), 所以復(fù)原的時(shí)候也需要采用工具(ESX3附帶): vcbRestore來進(jìn)行。 如果你只是想將VM的盤文件原封不動(dòng)熱備出來, 則須修改上述命令:
>vcbMounter -h esxhost -u backupuser -p password -a ipaddr:192.168.10.1 -r /vmfs/volumes/SAN1/vm-backups/vm1 -M 1 -F 1
-M 1: 不分割。
-F 1: 不壓縮。
這樣在熱備時(shí)盤文件就不被切割和壓縮了。
2. 使用vmware-cmd或vcbSnapshot對運(yùn)行中的VM建立快照snapshot, 然后再將其vmdk盤文件考出來。
ESX3.0下使用vmware-cmd熱備的例子:
a)建立snapshot
>vmware-cmd -H esx01 -U root -P rootpass /vmfs/volumes/6001....4728/VM1/VM1.vmx createsnapshot snapshot1 first-snapshot 1 0
-H: 指定執(zhí)行命令的ESX HOST 或 VIRTUAL CENTER。
-U: 執(zhí)行命令的帳戶。
-P: 帳戶的PASSWORD。
vmfs/volumes/6001......4728/VM1/VM1。vmx: 被拷貝VM配置文件的路徑。
createsnapshot: 建立snapshot。
snapshot1: snapshot名
first-snapshot: snapshot注釋
1: 啟動(dòng)ESX的VM quiesce 功能。建立snapshot靜止VM, 可以使安裝了vmware-tools的WINDOWS VM保持OS級的數(shù)據(jù)一致性。
0: snapshot不保存內(nèi)存。
b)用vmkfstools將要熱備的盤文件拷貝。
c)去除快照:
>vmware-cmd -H esx01 -U root -P rootpass /vmfs/volumes/6001....4728/VM1/VM1.vmx removesnapshots
注意上述命令去除該VM上的所有快照。 如果你VM的VM在進(jìn)行步驟
a)之前以有快照, 這時(shí)會被一并去除。
在拷貝前建立快照的目的是截?cái)郪M對原始盤文件的操作, 保持原始盤文件的數(shù)據(jù)一致性, 拷貝輸出完成以后, 再將快照去除。
為VM建立塊照snapshot時(shí), ESX為VM的每一個(gè)vmdk文件建立一個(gè)相應(yīng)的delta文件, 快照建立以后, VM的盤操作便不在原始盤文件進(jìn)行,而改在delta文件上進(jìn)行。 這樣原始盤文件便處與穩(wěn)定狀態(tài)可被拷貝。
3. 采用vcbSnapshot命令來熱備VM
VI3引入一個(gè)新命令可供建立snapshots。 利用它來為VM做熱備的原理與
2) 并沒有太大的區(qū)別。 基本的步驟:
a) 使用 vcbVmName 來確定VM的 ID
b) 使用 vcbSnapshot 為VM建立 Snapshot
c) 使用 vcbExport 來輸出VM的盤文件。
d) ***使用 vcbSnapshot 來刪除
a) 建立的snapshot.
我沒用過這種方法。 大家有興趣可以試一試。
注意方法 1 與 2,3的***區(qū)別在于, 1 輸出的是VM的所有盤文件。 而 2 與 3, 你可以選擇VM的單一盤文件。
后備的目的是為了最終的還原。 通過上述方法產(chǎn)生的備份能否順利還原呢? 答案是不一定。 跟你的OS, 運(yùn)行的應(yīng)用, SHAPSHOT生成的方法都有關(guān)系。 主要涉及ESX SNAPSHOT 與數(shù)據(jù)一致性的問題。
【編輯推薦】