容器是VMworld 2015大會最為熱門的話題之一。VMware很清楚地看到了近期容器與虛擬機混搭將會快速進入企業數據中心。IT組織仍舊需要保衛安詳性以及數據打點需求,縱然是容器化的應用也不破例。VMware已經在虛擬機端交付了容器,并且相關設計已經取得樂成,對虛擬化及云打點辦理方案舉辦了擴展以支持(并且我認為最終會同化)企業集裝箱化項目。
VMware全新的vSphere集成容器(VIC)使得打點及確保運行在虛擬機(稱之為虛擬容器主機)中容器的安詳性險些和打點及確保傳統虛擬機的安詳性沒什么兩樣。VIC作為最高級的IT打點工具呈此刻VMware打點東西中,擔任了vSphere 提供的浩瀚虛擬機打點成果,包羅強大的安詳性。這使得所有VMware顧主都可以或許很滑膩地回收容器技能。
然而,我們認為應用容器真正的轉折點將是容器逾越簡樸的無狀態計較引擎并直接處理懲罰耐久性數據之時。到當時,容器一定受限于范疇及局限。
容器中有什么?
簡言之,容器在其歷程內封裝并斷絕了應用代碼,使得代碼認為本身獨享一臺呆板,將所有的系統處事挪用轉交給容器主機。由于容器實際上是歷程,因此許多(大概數以千計)容器可以或許很輕松地共享單臺物理或虛擬處事器。
應用認為他們擁有一個完整運行的操縱系統(就像是在虛擬機內運行),但這些應用實際是在共享主機操縱系統。應用之間的斷絕性要低于在虛擬機內運行時的斷絕性,但效率更高(因為每個容器并沒有運行本身的操縱系統)。
容器尚有一些其他的優勢。容器在用戶空間內運行,因此粉碎、阻礙可能造成內核級瓦解的大概性很小。容器可以或許被快速復制,凡是是被緩存,并且很容易調解。容器險些可以或許在任那里所構建(好比開拓人員的MacBook)并在任那里所運行(好比亞馬遜Web處事)。這意味著容器在最初設計時就是無狀態的,不包羅需要掩護或保存的數據。
最初設計容器是為了構建微處事。微處事架構很是適合設計為在云中運行的應用。這些新應用是無狀態的,因為它們并不生存內部數據并且可以或許按照運營需求動態調解。
然而,集裝箱應用存儲仍舊是一個棘手問題。運行在容器內的應用可以或許會見當地操縱系統存儲,但假如容器被遷移(可能克隆、復制等等)到另一臺容器主機,那么將不會帶走當前主機上的數據。因此,無狀態容器并不適合需要靠得住及耐久數據處事的應用。在微會話級將數據保存在云存儲好比亞馬遜S3中的微處事運行的很好,但大大都應用的需求并非僅限于此。
存儲問題辦理之道
這意味著容器在將來的數據中心中只是一個小腳色,僅限于開拓人員利用可能全新的云托管微處事應用?我們認為容器的優勢極具吸引力,使得企業數據中心無法忽略,并且正如你大概已經揣摩的那樣,,容器數據打點產物正在脫穎而出。
譬喻,ClusterHQ公司的Flocker使得容器可以或許掛載獨一的Flocker數據集并可以或許跟從容器一起移動。Flocker對數據集舉辦分區并將共享的塊存儲掛載到所有的容器主機。回收該辦理方案,容器成為“無狀態的”并且可以或許很容易地承載險些所有應用,縱然是數據庫好比MongoDB與MySQL。
Flocker 1.3支持OpenStack Cinder塊存儲并且來自EMC、NetApp、Hedvig以及Nexenta等廠商的自界說驅動措施很快就會呈現。在VMworld大會上,VMware公布支持Flocker,這樣容器就可以或許利用vSphere掛載的任何存儲。這還包羅vSAN以及支持虛擬卷的第三方存儲。上述場景很是有趣,因為他們增加了明晰的存儲處事,好比針對每個容器所利用存儲的QoS。
在其有限的無狀態組成中,容器以及虛擬機各司其職。既然容器直接支持虛擬存儲,那么hypervisor廠商就需要提供高附加值成果。既然將來的數據中心大概是虛擬機/容器情況的殽雜體,在虛擬機中會存在大量的容器(并支持殽雜、以DevOps為中心的云運營),那么hypervisor廠商提供具備整體打點方案的時機很是大。
容器正在輔佐我們構建一個加倍流通、火速但最終很巨大的情況。這意味著我們需要更好的安詳東西,更動態的網絡以及適應性更強的存儲。必然要讓我們知道IT組織如何適應并回收容器產物,以及遍及回收容器技能存在哪些挑戰。