服務(wù)器虛擬化能夠幫助對(duì)抗服務(wù)器消耗過多資源、更好地利用計(jì)算機(jī)能力、控制能源費(fèi)用、以及提供數(shù)據(jù)中心敏捷性和靈活性。
專注于為中小企業(yè)提供網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)白沙黎族免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上千多家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。但是,正如我們所知,任何技術(shù)都會(huì)被下一個(gè)大事件所取代。而在服務(wù)器虛擬化的例子中,下一個(gè)大事件就是變小。
服務(wù)器虛擬化將物理設(shè)備進(jìn)行了分割,從而讓多個(gè)操作系統(tǒng)和成熟的應(yīng)用程序都能利用底層計(jì)算能力。
在下一波云計(jì)算浪潮中,開發(fā)人員將會(huì)把應(yīng)用程序切分成較小的、在輕量容器中運(yùn)行的微服務(wù),同時(shí)也會(huì)使用無服務(wù)器計(jì)算(也被稱為功能即服務(wù)(FaaS))。
兩種情形都會(huì)繞過VM,同時(shí)代碼會(huì)運(yùn)行在裸機(jī)金屬上。
虛擬機(jī)vs.容器
容器化運(yùn)動(dòng)的兩個(gè)主要的促成者是Docker,這是一個(gè)廣受歡迎的用于啟動(dòng)容器的工具,還有谷歌的Kubernetes,它可以幫助管理多個(gè)容器。容器是獨(dú)立的代碼執(zhí)行環(huán)境,它們共享著主機(jī)操作系統(tǒng)的內(nèi)核。
容器比VM更高效、更輕量,因?yàn)樗鼈兝@過了冗余的客戶操作系統(tǒng),削減了相關(guān)的啟動(dòng)開銷。相比VM,開發(fā)人員可以在相同的硬件上運(yùn)行多達(dá)6到8倍的容器。
容器確實(shí)有它們自己的缺點(diǎn)。作為一種相對(duì)較新的方法,他們沒有成熟技術(shù)所擁有的大量管理工具,因此需要做大量的設(shè)置和維護(hù)工作。此外,人們還擔(dān)心安全問題。
有了VM,你就可以使用來賓圖像輕松地在主機(jī)之間移動(dòng)工作負(fù)載,但裸機(jī)更難以升級(jí)或移動(dòng)。使用裸金屬服務(wù)器,回滾機(jī)器狀態(tài)就會(huì)成為一項(xiàng)具有挑戰(zhàn)性的任務(wù)。
虛擬機(jī)vs.無服務(wù)器計(jì)算
在傳統(tǒng)的IaaS云環(huán)境中,客戶會(huì)首先提供VM、存儲(chǔ)、數(shù)據(jù)庫和相關(guān)的安全和管理工具,然后再將應(yīng)用程序上傳到VM中。
而有了無服務(wù)器計(jì)算,開發(fā)人員就可以先編寫代碼,然后讓云服務(wù)提供商處理所有其他事情。開發(fā)人員永遠(yuǎn)不需要考慮服務(wù)器、操作系統(tǒng)、供應(yīng)或管理。當(dāng)然,需要有一個(gè)物理服務(wù)器來運(yùn)行代碼,但這是云服務(wù)提供商的責(zé)任。
系統(tǒng)會(huì)將代碼分解成特定的功能,而不是單一的應(yīng)用程序。當(dāng)發(fā)生觸發(fā)該功能的事件時(shí),無服務(wù)器服務(wù)——例如Amazon的Lambda——就會(huì)運(yùn)行該功能。無服務(wù)器供應(yīng)商按功能向客戶收費(fèi)。
與微服務(wù)/容器場(chǎng)景一樣,無服務(wù)器計(jì)算繞過了虛擬機(jī)層和運(yùn)行在裸金屬上的功能。在這一點(diǎn)上,無服務(wù)器計(jì)算相對(duì)不成熟,使用案例有限。
服務(wù)器虛擬化的未來
雖然當(dāng)下容器炙手可熱,人們對(duì)無服務(wù)器計(jì)算的興趣也在不斷增長(zhǎng),但現(xiàn)實(shí)情況是,服務(wù)器虛擬化才是一種堅(jiān)若磐石的技術(shù),因?yàn)樗鼮榻^大多數(shù)企業(yè)應(yīng)用提供了動(dòng)力——據(jù)一些人估計(jì),虛擬機(jī)的飽和率高達(dá)90%。
將平穩(wěn)地運(yùn)行在VM上的關(guān)鍵的應(yīng)用程序移動(dòng)到容器或無服務(wù)器平臺(tái)上,這是很難進(jìn)行想象的。異構(gòu)環(huán)境的用戶可能仍然會(huì)使用VM,因?yàn)槿萜餍枰谙嗤牟僮飨到y(tǒng)上運(yùn)行,并且不能在Linux和Windows之間進(jìn)行混合。
但是,對(duì)于正在使用最新的DevOps和敏捷方法構(gòu)建的新應(yīng)用程序,開發(fā)人員現(xiàn)在有了不同的選擇。展望未來,開發(fā)人員將根據(jù)是否在傳統(tǒng)的VM、容器或無服務(wù)器環(huán)境中運(yùn)行新的工作負(fù)載來進(jìn)行具體的決策。