五、快照并不是一種備份
虛擬即快照絕對不是一種備份??煺杖绻麅H僅作為一種臨時(shí)性的短期的虛擬機(jī)備份是可以的。但是他們會帶來副作用。當(dāng)一個(gè)快照被創(chuàng)建之后,所有針對對應(yīng)虛擬機(jī)磁盤文件的寫入操作均會被重定向?qū)懭氲揭粋€(gè)新的delta文件中,源文件變?yōu)橹蛔x。隨著新數(shù)據(jù)的寫入,Delta磁盤影像文件會以16MB為增量擴(kuò)增。
而且每次增量數(shù)據(jù)寫入都會導(dǎo)致對目標(biāo)Lun進(jìn)行加鎖,從而降低了性能。你創(chuàng)建的快照越多,那么對應(yīng)目標(biāo)Lun中所承載的虛擬機(jī)的性能就越差。此外,快照也會占用額外的存儲空間,每個(gè)快照都有可能額外占據(jù)與源盤相同大小的空間。如果你的存儲空間不夠用了,那么所有其上所承載的虛擬機(jī)都會被強(qiáng)行關(guān)機(jī)。
當(dāng)你刪除快照的時(shí)候,delta增量數(shù)據(jù)會被合并到源盤中,此時(shí)便會造成大量的磁盤IO操作,從而對虛擬機(jī)性能產(chǎn)生很大影響。此外,由于快照實(shí)質(zhì)上是創(chuàng)建了一個(gè)與源影像文件相鏈接的新的虛擬磁盤影像文件,所以這回導(dǎo)致一些特性無法被激活,并且可能導(dǎo)致源盤與增量盤之間的映射出現(xiàn)問題。所以,不到萬不得已不要使用快照,一旦使用,那么要在不用的時(shí)候盡快刪掉他們。
六、創(chuàng)建自動備份時(shí)刻表時(shí)一定要小心
虛擬環(huán)境中的備份操作可能會非常消耗資源,因?yàn)樘摂M環(huán)境是共享底層物理層的。因此,你需要仔細(xì)的配置自動備份時(shí)刻表以防止在短時(shí)間內(nèi)將過大的壓力承載到單一的資源之上。例如,不要同時(shí)備份同一個(gè)物理主機(jī)上的太多的虛擬機(jī),或者同一個(gè)Lun上承載的多臺虛擬機(jī)。嘗試將時(shí)刻表均衡到多個(gè)資源之上,這樣就可以防止單個(gè)資源過載。如果不這么做,不僅備份本身的性能會變差,就連相應(yīng)的虛擬機(jī)的性能也會受到拖累。
七、對備份容錯要心里有底
基本上所有使用Image-level備份方式的虛擬化備份解決方案都會利用虛擬機(jī)快照來解決備份過程中針對源文件的寫入問題。VMware Fault Tolerance特性會用到兩個(gè)虛擬機(jī),也就是分別位于兩臺物理服務(wù)器上的主虛擬機(jī)和輔虛擬機(jī)。但是這兩臺虛擬機(jī)會共享使用同一份底層的虛擬磁盤影像文件。但是目前Fault Tolerance(FT)特性并不支持虛擬機(jī)快照,所以當(dāng)備份具有FT特性的虛擬機(jī)時(shí),效能就得不到保證。為了解決這個(gè)問題,你就需要尋找另外一種備用方式了,其中一種方法就是在備份運(yùn)行的時(shí)候,臨時(shí)關(guān)閉FT特性,這樣就可以針對對應(yīng)的虛擬機(jī)做快照了。
臨時(shí)性禁用FT會保留住輔助虛擬機(jī),當(dāng)備份結(jié)束之后,F(xiàn)T可以方便的再次打開??梢允褂肞owerShell生成前處理或者后處理腳本來對這個(gè)過程實(shí)現(xiàn)自動化;另外一種方法是可以創(chuàng)建一份當(dāng)前虛擬機(jī)的克隆,可以通過vCenter Server或者vCenter Converter實(shí)現(xiàn)。這樣便可以將這份克隆備份下來,備份完成之后刪除即可。你也可以使用基于存儲端的快照來備份對應(yīng)的虛擬機(jī),不過需要在虛擬機(jī)中安裝一個(gè)代理。
八、別忘了備份物理服務(wù)器以及vCenter Server上的配置信息
如果僅僅是一臺物理主機(jī)或者vCenter服務(wù)器故障了,那么你可以很容易的再部署幾臺,但是同時(shí),其上的配置信息也丟掉了。所以,定期的備份這些配置信息是非常必要的。通常當(dāng)你備份一臺主機(jī)的時(shí)候,你一般只是備份其上的虛擬機(jī),而從來不會備份management console上的任何配置文件。然而,你需要備份的并不是management console中的配置文件,你需要的是備份對應(yīng)的配置信息從而可以方便的重建一臺物理服務(wù)器。
對于ESX主機(jī),你可以使用esxcfg-info這條Service Console命令來將大量的配置信息輸出到一份文本文件中。對于ESXi主機(jī),你可以使用vicfg-cfgbackup命令(也是vShpere CLI的一部分)來將配置文件輸出到文本文件中。對于ESX主機(jī),你雖然無法使用esxcfg-info的輸出來恢復(fù)對應(yīng)的配置,但是至少在需要數(shù)據(jù)恢復(fù)的時(shí)候你可以知道你到底需要重新配置哪些參數(shù)。對于ESXi主機(jī),你可以使用vicfg-cfgbackup命令來將配置信息恢復(fù)到主機(jī)上。
對于vCenter服務(wù)器,則一定要備份其上用來存放這臺vCenter服務(wù)器上所有配置信息的數(shù)據(jù)庫。數(shù)據(jù)庫中包含了很多配置信息,包括集群信息、資源池、權(quán)限信息、報(bào)警信息、性能信息以及其他更多配置信息。有了數(shù)據(jù)庫備份,你就可以方便的重裝vCenter服務(wù)器然后直接讓其指向你之前備份好的數(shù)據(jù)庫即可重新上線運(yùn)行了。同時(shí),也請確保你對vCenter服務(wù)器上的SSL認(rèn)證目錄進(jìn)行了備份,這個(gè)目錄位于vCenter服務(wù)器上的data目錄下。這個(gè)目錄中包含了用于認(rèn)證ESX或者ESXi主機(jī)以及客戶端連接的SSL認(rèn)證信息。
正如你所看到的,雖然VMware在最新的vShpere的版本中將虛擬機(jī)備份做的非常方便了,但是在備份虛擬機(jī)的時(shí)候,你仍然需要留心很多問題。這八個(gè)vSphere虛擬機(jī)備份最佳實(shí)踐可以幫助你在備份虛擬機(jī)的時(shí)候減少一些麻煩。