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