容器化技術(shù)包含運行數(shù)據(jù)中心應(yīng)用程序所需的所有組件,但它需要的存儲更少,并且比傳統(tǒng)軟件包更容易安裝在服務(wù)器。
在確定如何部署容器前,你必須首先確定容器類型。對于附帶軟件的容器,你可能選擇Docker容器,因為Docker是容器市場的主要產(chǎn)品。你可能還會考慮rkt和systemd,具體取決于容器應(yīng)用程序和系統(tǒng)要求。
Rkt是CoreOS的一部分,它是完全開源的產(chǎn)品。Systemd容器不提供Docker的所有功能,但它易于部署并可自動安裝在Linux操作系統(tǒng)中。Systemd提供套接字激活和nspawn容器,使你可以在容器中運行多個進程。
支持容器網(wǎng)絡(luò)
如果你想要運行少數(shù)Docker容器,則不需要太多,最好使用Linux服務(wù)器來安裝容器引擎。該守護進程在Linux內(nèi)核上運行,并允許你在Linux機器上運行容器。
Docker企業(yè)版適用于所有Linux類型,隨發(fā)行版存儲庫一起安裝。然而,只是運行容器引擎不會提供任何冗余,這僅適用于小型和非關(guān)鍵型工作負載。
如果你想要在容器技術(shù)中獲得可擴展性和冗余,則需要使用容器編排工具。編排設(shè)置可能包含CoreOS,這是最小化的Linux操作系統(tǒng),其目的只有一個:盡可能高效地運行容器。
CoreOS設(shè)置由多臺主機組成,這些主機共享有關(guān)任何活躍容器的信息,并確保服務(wù)器的高可用性。如果服務(wù)器或容器中出現(xiàn)任何問題,總會有另一個節(jié)點來繼續(xù)接管工作負載。
容器編排的另一個眾所周知的選擇是Kubernetes。Kubernetes運行在容器引擎之上,其目的是確保你始終擁有足夠的容器以保證正常持續(xù)運行。你可在物理或虛擬服務(wù)器上的數(shù)據(jù)中心中安裝Kubernetes,但必須使用幾臺服務(wù)器以確保處理連續(xù)性和可擴展性。
還有一種方法是在數(shù)據(jù)中心外的私有云或公共云運行容器。所有主要公共云提供商都提供容器引擎,目前Kubernetes已迅速成為公共云中的標準。如果容器需要提供給世界各地的用戶使用,那么公共云可能是最佳選擇。