—個Docker的替代方案--rkt

Docker是第一個使容器成為主流的容器平臺。 Docker本身並不提供進程隔離,實際上容器隔離是在Linux內核之上使用諸如Linux命名空間和cgroups之類的內核特性完成的, Docker僅簡化了這些特性的使用。在Docker成功後, 開放容器計劃(OCI)就開始圍繞容器格式和運行時創建了開放工業標準。 Docker是計劃的一部分, rkt (發音為"rock-it")則是另外一個Linux容器引擎。和Docker一樣, rkt也是一個運行容器的平臺, 它強調安全性、 可構建性並遵從開放標準。 它使用OCI容器鏡像, 甚至可以運行常規的Docker容器鏡像。

Rkt誕生於2014年12月,是一種與Docker類似的容器引擎,由CoreOS公司主導,得到了Redhat、Google、Vmware等公司的支持,更加專注於解決安全、兼容、執行效率等方面的問題。CoreOS公司最早是Docker的支持者,其產品CoreOS操作系統是適用於企業的輕量級容器化的Linux發行版,是Docker生態圈的重要一員。隨著Docker在容器行業變得逐漸強大,Docker也越來越臃腫,CoreOS公司希望有一個更加開放和中立的容器標準,因此推出了自己的容器計劃。

Rkt主要的特徵包括:

(1)原生支持Pod:Rkt和Kubernetes聯繫更緊密,基本執行單元是Kubernetes中的Pod,將資源和用戶應用連接在一起。

(2)安全:Rkt的開發原則是默認安全,具有一系列安全特徵,例如支持SELinux、TPM和在硬件隔離的虛擬機中運行。Rkt包含權限拆分功能,旨在避免不必要的以root權限運行的操作,同時提供默認的簽名驗證與其它出於安全性考慮的先進功能。

(3)可組合性:採用了無後臺守護程序模式,意味著能夠輕鬆與標準init系統相集成,例如systemd與upstart,或者其它集群編排系統,例如Nomad與Kubernetes。

(4)開放標準和兼容性:Rkt實現了AppC規範,支持 Container Networking Interface specification,鏡像格式為App Container Image,簡稱ACI,也可以運行Docker鏡像。


分享到:


相關文章: