借助應(yīng)用層高可用性節(jié)約開支
對于當(dāng)代的企業(yè)IT部門來說,宕機是不允許發(fā)生的。所以IT部門努力提升單獨x86服務(wù)器的高可用性來避免宕機的發(fā)生。虛擬化平臺通過提高虛擬機容錯性和可用性來擴展其可靠性。同時,應(yīng)用程序自身包含了容錯機制。并且應(yīng)用層高可用性可以節(jié)約開支。
實現(xiàn)傳統(tǒng)的企業(yè)級高可用性
為了實現(xiàn)企業(yè)級的高可靠性,IT部門必須將虛擬機存儲在價格昂貴的共享存儲中。事實上,許多客戶已經(jīng)為虛擬機單獨架設(shè)了存儲區(qū)域網(wǎng)絡(luò)(SAN)。將虛擬機存儲在SAN上能夠在主機出錯的時候自動重啟,讓虛擬機比物理機具有更高的可靠性。
實現(xiàn)企業(yè)級的高可靠性還需要考慮在物理主機維護期間,如何避免虛擬機產(chǎn)生宕機。實時遷移能夠讓你在維護物理主機期間,將虛擬機從一臺主機遷移到另一臺上,避免宕機。實時遷移和自動重啟都需要共享存儲,它占據(jù)了虛擬化實施開銷中重要的一部分。除此之外,虛擬化平臺中一些特性可能會花費更加昂貴的認(rèn)證費用。許多企業(yè)IT都將其視為關(guān)鍵需求,但是自身具備高可用性的應(yīng)用程序?qū)淖兯麄兊默F(xiàn)有觀念。
應(yīng)用程序為虛擬桌面帶來高可用性
現(xiàn)在許多廠商在設(shè)計應(yīng)用程序時,會更多地考慮將其運行在多個小型虛擬機上,而不是一個或者兩個大型虛擬機上。Web服務(wù)器和終端服務(wù)器群就是典型的示例:沒有任何一個虛擬機包含持久性數(shù)據(jù),只要有足夠多的小型虛擬機來分擔(dān)負(fù)載,用戶就可以隨時訪問應(yīng)用程序。一些NoSQL數(shù)據(jù)庫和Hadoop集群也可以很靈活地運行在包含多個小型虛擬機的容器下。在這些示例中,應(yīng)用程序管理實效的結(jié)點并且將工作負(fù)載重新分配,這樣可以完成卸載單個結(jié)點。
既然可以卸載單個結(jié)點,共享存儲就不再是必需的了。你可以將虛擬機存儲在虛擬化主機的磁盤當(dāng)中。本地主機的磁盤沒有共享存儲那樣昂貴,甚至可以節(jié)約一半的存儲開銷。不再需要虛擬機自動重啟,因為這些應(yīng)用程序可以自動進行負(fù)載均衡和管理虛擬機減少了對虛擬化管理軟件的需求。你還可以使用一些沒那么昂貴的虛擬化平臺管理軟件構(gòu)建一個免費版本的虛擬化平臺,有利于減少以后在實施高可用性方面的開支。
應(yīng)用層高可用性產(chǎn)品中包含了一些具有持久性數(shù)據(jù)的虛擬機,這樣的組成使得虛擬機必須具備高可用性。比如,Hadoop中的NameNode和JobTracker功能仍然需要共享存儲以及在主機宕機后自動重啟的特性。
并非所有的應(yīng)用程序都具備高可用性,意味著你仍然需要一個企業(yè)級虛擬化平臺來存儲虛擬機,但是并不需要為每個虛擬機都提供企業(yè)級高可用性。當(dāng)具有高可用性的應(yīng)用程序部署還沒有被廣泛部署的時候,虛擬化平臺的高可用性也許更加實用一些。