容器技術,比如Docker,正在云供應商和企業(yè)間越來越流行。但是對于企業(yè)而言,容器技術是不是正確的選擇呢?
容器技術正在強有力地占領云市場,隨著供應商繼續(xù)深入擁抱Docker,CoreOS,其他企業(yè)也在嘗試進入該領域。但是在企業(yè)云戰(zhàn)略包含進容器時,很有必要理解該技術是如何工作的,以及它是否滿足了企業(yè)的需求。
容器提供了服務器虛擬化的替代方案,首先安裝一個主機操作系統(tǒng)(OS),而不需要安裝hypervisor。然后,安裝虛擬化層,應用就好像運行在底層操作系統(tǒng)上一樣。虛擬層創(chuàng)建出隔離的客戶虛擬機(VM),稱為容器。每個容器都可以運行自己的應用——或者某個相同應用程序的副本——但是所有容器共享同一個OS內核。
對于單個OS的依賴使得基于容器的虛擬化比起傳統(tǒng)的基于hypervisor的虛擬化來說,沒有那么通用。比如,因為容器必須移動到帶有兼容OS內核的服務器上,所以容器的遷移要求更多的考量和計劃。另一方面,傳統(tǒng)VM則能夠遷移到任何帶有合適hypervisor的地方,不管OS是什么。
但是,因為容器共享單個OS內核,它們可以降低OS許可證的費用,提高性能,無需運行多個OS版本所需要的那么多內存和處理器的資源。
容器技術能夠從多個方面利好云環(huán)境。和輕量級VM相比,容器是輕量級組件化環(huán)境,無需大量的重復工作,應用就可以在云間移動。容器能夠適應平臺差異,而不會影響其中運行的應用,這很有益于DevOps和軟件開發(fā)人員。
另外,容器減少了每個虛擬實例所需的冗余資源,比起VM而言,同一臺服務器能夠托管更多的容器——這大幅改進了云的可擴展性和性能。
因此,對于你的企業(yè)和云戰(zhàn)略而言,容器是否是正確的選擇?容器對于要求擴展性以及共享核心組件的環(huán)境而言是非常契合的。比如,如果你需要啟動并部署相同工作負載和OS的100個副本,使用容器,比起傳統(tǒng)基于hypervisor的VM,要更加高效并且劃算。
要求最佳的工作負載普適度和隔離性的數(shù)據(jù)中心應該繼續(xù)使用基于hypervisor的VM。但是,這兩種方案并不是互斥的。兩者可以并存來滿足特定的業(yè)務計算需求。容器技術的確非常值得企業(yè)研究和投資。