虛擬化動手實驗之高可用實現(xiàn):容錯實現(xiàn)
在VMware vSphere可用性解決方案中,相比著之前的VI3,在可用性解決方案上多了新的功能FT,也就是所謂的容錯。接下來就介紹下容錯的技術(shù)及如何實現(xiàn)(理論部分參考自官方文檔)。
一、vSphere可用性的新功能
VMware新的可用性的解決方案中,提供了針對虛擬機的容錯(FT)的技術(shù)。當(dāng)為虛擬機啟用此技術(shù)時,可以獲得比VMware HA所提供的級別更高的可用性和數(shù)據(jù)保護,從而確保業(yè)務(wù)連續(xù)性。
容錯基于 ESX/ESXi 主機平臺構(gòu)建(使用 VMware vLockstep 功能),它通過在單獨主機上以虛擬鎖步方式運行相同的虛擬機來提供連續(xù)可用性。
二、容錯的工作方式
VMware 容錯可通過創(chuàng)建和維護等同于主虛擬機并可在發(fā)生故障切換時替換主虛擬機的輔助虛擬機來為虛擬機提供連續(xù)可用性。
可以為大多數(shù)任務(wù)關(guān)鍵虛擬機啟用容錯。并會創(chuàng)建一個重復(fù)虛擬機(稱為輔助虛擬機),該虛擬機會以虛擬鎖步方式隨主虛擬機一起運行。VMware vLockstep 可捕獲主虛擬機上發(fā)生的輸入和事件,并將這些輸入和事件發(fā)送到正在另一主機上運行的輔助虛擬機。使用此信息,輔助虛擬機的執(zhí)行將等同于主虛擬機的執(zhí)行。因為輔助虛擬機與主虛擬機一起以虛擬鎖步方式運行,所以它可以無中斷地接管任何點處的執(zhí)行,從而提供容錯保護。
主虛擬機和輔助虛擬機可持續(xù)交換檢測信號。這使得虛擬機對中的虛擬機能夠監(jiān)控彼此的狀態(tài)以確保持續(xù)提供容錯保護。如果運行主虛擬機的主機發(fā)生故障,系統(tǒng)將會執(zhí)行透明故障切換,此時會立即啟用輔助虛擬機以替換主虛擬機,并將啟動新的輔助虛擬機,同時在幾秒鐘內(nèi)重新建立容錯冗余。如果運行輔助虛擬機的主機發(fā)生故障,則該主機也會立即被替換。在任一情況下,用戶都不會遭遇服務(wù)中斷和數(shù)據(jù)丟失的情況。
容錯虛擬機及其輔助副本不允許在相同主機上運行。容錯功能使用反關(guān)聯(lián)性規(guī)則,這些規(guī)則可確保容錯虛擬機的兩個實例永遠不會在同一主機上。這可確保主機故障無法導(dǎo)致兩個虛擬機都缺失。
容錯可避免"裂腦"情況的發(fā)生,此情況可能會導(dǎo)致虛擬機在從故障中恢復(fù)后存在兩個活動副本。共享存儲器上鎖定的原子文件用于協(xié)調(diào)故障切換,以便只有一端可作為主虛擬機繼續(xù)運行,并由系統(tǒng)自動重新生成新輔助虛擬機。
注意:系統(tǒng)會在主虛擬機啟動后執(zhí)行反關(guān)聯(lián)性檢查。當(dāng)主虛擬機和輔助虛擬機都處于關(guān)閉狀態(tài)時,它們可能會位于相同主機上。但這是正常行為,輔助虛擬機會在主虛擬機啟動時在其他主機上啟動。
#p#
三、容錯的用例
容錯可提供比 VMware HA 更高級別的業(yè)務(wù)連續(xù)性。當(dāng)調(diào)用輔助虛擬機以替換與其對應(yīng)的主虛擬機時,輔助虛擬機會立即取代主虛擬機的角色,并會保存其整個狀況。應(yīng)用程序已在運行,并且不需要重新輸入或重新加載內(nèi)存中存儲的數(shù)據(jù)。這不同于 VMware HA 提供的故障切換,故障切換會重新啟動受故障影響的虛擬機。
更高的連續(xù)性級別以及增加的狀況信息和數(shù)據(jù)保護功能可在您要部署容錯時提供方案信息。
需要始終保持可用的應(yīng)用程序,尤其是那些具有長時間客戶端連接的應(yīng)用程序,用戶希望在硬件故障期間保持這些連接。
不能通過任何其他方式實現(xiàn)群集功能的自定義應(yīng)用程序。
可以通過自定義群集解決方案提供高可用性,但這些解決方案太復(fù)雜,很難進行配置和維護的情況。
四、容錯的配置要求
要使 VMware 容錯 (FT) 按預(yù)期方式執(zhí)行,群集、主機和虛擬機的配置必須滿足特定要求。
1、群集必備條件
與 VMware HA 在默認(rèn)情況下保護群集內(nèi)的每個虛擬機不同,VMware 容錯在單個虛擬機上啟用。要使群集支持VMware 容錯,必須滿足以下必備條件:
必須針對群集啟用 VMware HA。還應(yīng)當(dāng)啟用主機監(jiān)控。如果沒有啟用主機監(jiān)控,那么,當(dāng)容錯功能使用輔助虛擬機替換主虛擬機時,將不會創(chuàng)建新的輔助虛擬機且不會還原冗余。
必須為將用于容錯的所有主機啟用主機證書檢查。請參見第 30 頁,"啟用主機證書檢查"。
每臺主機必須配置有 VMotion 和容錯日志記錄網(wǎng)卡。請參見第 31 頁,"為主機配置網(wǎng)絡(luò)"。
至少兩臺主機的處理器必須來自同一兼容處理器組。盡管容錯功能支持異構(gòu)群集(混合處理器組),但是,如果所有主機均兼容,則將獲取***的靈活性。有關(guān)受支持處理器的信息,請參見 VMware 知識庫文章,網(wǎng)址為 http://kb.vmware.com/kb/1008027。
所有主機的 ESX/ESXi 版本和修補程序級別都必須相同。
所有主機必須對虛擬機的數(shù)據(jù)存儲和網(wǎng)絡(luò)具有訪問權(quán)。
要確認(rèn)群集內(nèi)的主機是否兼容,從而判斷其是否支持容錯,請運行配置文件合規(guī)性檢查。
注意 VMware HA 在執(zhí)行接入控制計算時會包括容錯輔助虛擬機的資源使用情況。對于"群集允許的主機故障數(shù)目"策略,將為輔助虛擬機分配一個插槽;而對于"群集資源的百分比"策略,在計算群集的可用容量時將考慮輔助虛擬機的資源使用情況。
2、主機必備條件
主機需滿足以下條件,才能支持容錯虛擬機:
主機上的處理器必須來自與容錯兼容的處理器組。請參見位于 http://kb.vmware.com/kb/1008027 的VMware 知識庫文章。
主機必須經(jīng) OEM 認(rèn)證為支持容錯。請參閱當(dāng)前的硬件兼容性列表 (HCL) 獲取支持容錯的服務(wù)器的列表(請參見 http://www.vmware.com/resources/compatibility/search.php)。
主機配置必須在 BIOS 中啟用了硬件虛擬化 (HV)。某些硬件制造商交付產(chǎn)品時禁用了硬件虛擬化。各種 BIOS中啟用硬件虛擬化的過程不同。請參見主機的 BIOS 文檔以獲取有關(guān)如何啟用硬件虛擬化的詳細(xì)信息。如果未啟用硬件虛擬化,則嘗試啟動容錯虛擬機將產(chǎn)生錯誤,而且虛擬機不會啟動。
3、虛擬機要求
在可以打開容錯前,虛擬機必須滿足以下***要求:
虛擬機文件必須存儲在共享存儲器上。可接受共享的存儲解決方案包括光纖通道、(硬件和軟件)iSCSI、NFS 和 NAS。
虛擬機必須存儲在虛擬 RDM 或厚置備的虛擬機磁盤 (VMDK) 文件(已啟用"群集功能"選項)中。如果將虛擬機存儲在精簡置備或厚置備的 VMDK 文件(未啟用群集功能)中,則在嘗試啟用容錯時將會出現(xiàn)一則指示必須轉(zhuǎn)換 VMDK 文件的消息。用戶可以接受此自動轉(zhuǎn)換(需要關(guān)閉虛擬機),允許轉(zhuǎn)換磁盤并使用容錯保護虛擬機。此轉(zhuǎn)換過程所需的時間根據(jù)磁盤的大小和主機處理器類型而有所不同。
虛擬機必須在一個受支持的客戶機操作系統(tǒng)上運行。
#p#
五、 容錯與不支持的vSphere功能
容錯虛擬機不支持以下 vSphere 功能。
快照。 在虛擬機上啟用容錯前,必須移除或提交快照。此外,不可能對已啟用容錯的虛擬機執(zhí)行快照。
Storage VMotion。 不能為已啟用容錯的虛擬機調(diào)用 Storage VMotion。要遷移存儲器,應(yīng)當(dāng)先暫時關(guān)閉容錯,然后再執(zhí)行 Storage VMotion 操作。在完成遷移之后,可以重新打開容錯。
DRS 功能。 容錯虛擬機會自動配置為禁用 DRS。DRS 最初將放置一個輔助虛擬機,但在對群集進行負(fù)載平衡時,DRS 不會提出建議,也不會對主虛擬機或輔助虛擬機進行負(fù)載平衡。主虛擬機和輔助虛擬機在正常運行期間可以進行手動遷移。
#p#
六、 為容錯準(zhǔn)備群集和主機
要為群集啟用 VMware 容錯,必須滿足此功能的必備條件,然后在主機上執(zhí)行特定的配置步驟。完成這些步驟并創(chuàng)建群集后,還可以檢查配置是否符合啟用容錯的要求。
嘗試為群集啟用容錯之前應(yīng)該完成的任務(wù)包括:
1、 啟用主機證書檢查
Step 1:將 vSphere Client 連接到 vCenter Server。
Step 2: 選擇系統(tǒng)管理,然后選擇 vCenter Server 設(shè)置。此時會出現(xiàn) vCenter Server 設(shè)置窗口。
Step 3:在左窗格中單擊 SSL 設(shè)置。
Step 4:選中 vCenter 需要已驗證的主機 SSL 證書復(fù)選框。(圖1)
Step 5:單擊確定。
2、 為每臺主機配置網(wǎng)絡(luò)
在兩臺ESX主機上,分別選擇VMKERNEL(網(wǎng)絡(luò)標(biāo)簽是EQL),查看屬性。(圖2)
確保此端口組啟用"VMotion"或"容錯日志記錄"。(圖3)
在上圖中選中EQL,點選"編輯"。可以看到如何啟用。(圖4)
3、創(chuàng)建 VMware HA 群集,添加主機,并檢查合規(guī)性
Step1:VMware HA 群集在第五章及第六章已建立,且進行了驗證:(圖5)
Step2:檢查群集的合規(guī)性。
注意:正常情況下,也是需要檢查主機配置文件的合規(guī)性的。(圖6)
#p#
七、為虛擬機打開容錯功能
在為群集和主機準(zhǔn)備好容錯條件之后,便可為虛擬機打開容錯
Step1:關(guān)閉虛擬機windows2003,右鍵"容錯"--"打開容錯"(截圖有誤的,應(yīng)是windows2003虛擬機關(guān)閉的情況進行同樣的操作):(圖7)
Step2:此時會彈出個警告窗口,點"是"。(圖8)
Step3:任務(wù)進行中。實際上是在另外一臺ESX主機上在進行著安裝一個此虛擬機的一個副本---次要虛擬機(第二圖)。(圖9、10)
Step4:完成后,可以看到右下角的,容錯所建立的虛擬機并不受保護。需要啟動后方可。(圖11)
Step5:開啟位于esxone主機上的windows2003,這時,就會把此虛擬機的狀態(tài)等遷移同步到位于esxtwo主機上的次要虛擬機windows2003上。
當(dāng)完成啟動后,就真正實現(xiàn)了容錯功能。(圖12)
Step6:接下來進行容錯功能的測試,也就是在當(dāng)前的虛擬機桌面上創(chuàng)建一個文件夾。然后關(guān)閉此臺虛擬機或是其所在的主機,看是否會在另外一ESX主機上啟動次要虛擬機,并且不影響應(yīng)用,且能同樣存在這樣的一個文件夾。(圖13)
Step7:關(guān)機后,次要虛擬機開始啟動,且PING值只有一個是TIME OUT的。(圖14)
Step8:連接ESXTWO上的次要虛擬機,可以看到容錯的效果已達到。(圖15)
通過和第六章的結(jié)合實驗,完成了真正應(yīng)用業(yè)務(wù)上的可用性。硬件和軟件條件滿足的朋友不妨部署在生產(chǎn)環(huán)境中,以實現(xiàn)關(guān)鍵業(yè)務(wù)的真正高可用性。
【編輯推薦】
- 虛擬化動手實驗之高可用實現(xiàn):基礎(chǔ)環(huán)境
- 虛擬化動手實驗之高可用實現(xiàn):添加主機
- 虛擬化動手實驗之高可用實現(xiàn):需求分析
- 虛擬化動手實驗之高可用實現(xiàn):實驗搭建
- 虛擬化動手實驗之高可用實現(xiàn):HA安裝
- 虛擬化動手實驗之高可用實現(xiàn):測試驗收
- 虛擬化動手實驗之高可用實現(xiàn):常見問題