這幾天再寫k8s知識,發(fā)現(xiàn)在介紹k8s前,還需要說下docker相關(guān)知識,才能更好理解K8S用途,于是便收集了docker知識,簡單說下,加深理解
1 Docker架構(gòu)概述
Docker 是一種可供部署的容器平臺,受到多家公司的支持,Docker 采用客戶端與服務(wù)器架構(gòu):
客戶端
命令行工具 (docker) 負(fù)責(zé)與服務(wù)器通信,它使用 RESTful API 請求操作
服務(wù)器
此服務(wù)作為操作系統(tǒng)上的守護(hù)進(jìn)程運行,承擔(dān)構(gòu)建、運行和下載容器鏡像的繁重任務(wù),守護(hù)進(jìn)程可以和 docker 客戶端在同一系統(tǒng)中運行
2Docker核心元件
鏡像
鏡像是只讀模板,含有應(yīng)用庫和應(yīng)用的運行時環(huán)境,鏡像用于創(chuàng)建容器??梢詣?chuàng)建、更新或下載鏡像,以供直接使用??梢院唵卫斫獬商摍CVM模板
倉庫
倉庫存儲鏡像,以滿足公共或私有的用途,知名的公共倉庫為 Docker Hub,它存儲了由社區(qū)開發(fā)的諸多鏡像,但也可依據(jù)公司的決定,通過創(chuàng)建私有倉庫來支持內(nèi)部,如habor。
容器
容器是隔離的用戶空間環(huán)境,讓應(yīng)用與共享同一主機操作系統(tǒng)的其他應(yīng)用分開運行,將所有進(jìn)程可見的特定系統(tǒng)資源放在一個命名空間中。在一個命名空間中,只有屬于該命名空間的進(jìn)程才能看到這些資源,包括網(wǎng)絡(luò)接口、進(jìn)程 ID列表、掛載點以及系統(tǒng)本身的主機名稱信息。可以理解成是某個應(yīng)用所運行的所有資源集合,包括系統(tǒng)環(huán)境。
3 docker和K8S 關(guān)系
Docker提供基本容器管理 API 和容器鏡像文件格式
Kubernetes 管理運行容器的(物理或虛擬)主機群集
個人理解是 docker是企業(yè)里某個運行的生產(chǎn)線,K8S 屬于企業(yè)的廠房,每個廠房里可以存在多個生產(chǎn)線,并對產(chǎn)線運行進(jìn)行調(diào)度管理。