docker和k8s有什么關系

docker和k8s有什么關系

一、首先我們來看看官方對docker和k8s的定義:

docker是一個開源的應用容器引擎,開發者可以打包他們的應用及依賴到一個可移植的容器中,發布到流行的Linux機器上,也可實現虛擬化。

(推薦教程:docker

k8s是一個開源的容器集群管理系統,可以實現容器集群的自動化部署、自動擴縮容、維護等功能。

二、接下來我們來看看二者與傳統技術的對比:

1、從虛擬化角度

傳統的虛擬技術,在將物理硬件虛擬成多套硬件后,需要再每套硬件上都部署一個操作系統,接著在這些操作系統上運行相應的應用程序。

而Docker容器內的應用程序進程直接運行在宿主機(真實物理機)的內核上,Docker引擎將一些各自獨立的應用程序和它們各自的依賴打包,相互獨立直接運行于未經虛擬化的宿主機硬件上,同時各個容器也沒有自己的內核,顯然比傳統虛擬機更輕便。?

每個集群有多個節點,每個節點可,我們的kuberbete就是管理這些應用程序所在的小運行環境(container)而生。

2、從部署角度

傳統方式是將所有應用直接部署在同一個物理機器節點上,這樣每個App的依賴都是完全相同的,無法做到App之間隔離,當然,為了隔離,我們也可以通過創建虛擬機的方式來將App部署到其中,但這樣太過繁重。

現在我們通過部署Container容器的技術來部署應用,全部Container運行在容器引擎上即可。

既然嫌棄虛擬機繁重,想用Docker,那好,你用吧,怎么用呢?手動一個一個創建?當然不,故kubernetes技術便出現了,以kubernetes為代表的容器集群管理系統,這時候就該上場表演了。

三、最后我們來分析一下docker和k8s的關系:

我們用kubernetes去管理Docker集群,即可以將Docker看成Kubernetes內部使用的低級別組件。

另外,kubernetes不僅僅支持Docker,還支持Rocket,這是另一種容器技術。

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊15 分享