這幾天再寫(xiě)k8s知識(shí)吓肋,發(fā)現(xiàn)在介紹k8s前蓬坡,還需要說(shuō)下docker相關(guān)知識(shí)磅叛,才能更好理解K8S用途萨赁,于是便收集了docker知識(shí)杖爽,簡(jiǎn)單說(shuō)下紫皇,加深理解
1 Docker架構(gòu)概述
Docker 是一種可供部署的容器平臺(tái),受到多家公司的支持化焕,Docker 采用客戶(hù)端與服務(wù)器架構(gòu):
客戶(hù)端
命令行工具 (docker) 負(fù)責(zé)與服務(wù)器通信铃剔,它使用 RESTful API 請(qǐng)求操作
服務(wù)器
此服務(wù)作為操作系統(tǒng)上的守護(hù)進(jìn)程運(yùn)行,承擔(dān)構(gòu)建凤类、運(yùn)行和下載容器鏡像的繁重任務(wù),守護(hù)進(jìn)程可以和 docker 客戶(hù)端在同一系統(tǒng)中運(yùn)行
2Docker核心元件
鏡像
鏡像是只讀模板谜疤,含有應(yīng)用庫(kù)和應(yīng)用的運(yùn)行時(shí)環(huán)境现诀,鏡像用于創(chuàng)建容器∑笮浚可以創(chuàng)建于未、更新或下載鏡像,以供直接使用抖坪∶撇妫可以簡(jiǎn)單理解成虛機(jī)VM模板
倉(cāng)庫(kù)
倉(cāng)庫(kù)存儲(chǔ)鏡像,以滿足公共或私有的用途蚯瞧,知名的公共倉(cāng)庫(kù)為 Docker Hub,它存儲(chǔ)了由社區(qū)開(kāi)發(fā)的諸多鏡像埋合,但也可依據(jù)公司的決定,通過(guò)創(chuàng)建私有倉(cāng)庫(kù)來(lái)支持內(nèi)部蜜猾,如habor振诬。
容器
容器是隔離的用戶(hù)空間環(huán)境,讓?xiě)?yīng)用與共享同一主機(jī)操作系統(tǒng)的其他應(yīng)用分開(kāi)運(yùn)行肩豁,將所有進(jìn)程可見(jiàn)的特定系統(tǒng)資源放在一個(gè)命名空間中清钥。在一個(gè)命名空間中印屁,只有屬于該命名空間的進(jìn)程才能看到這些資源,包括網(wǎng)絡(luò)接口从橘、進(jìn)程 ID列表础钠、掛載點(diǎn)以及系統(tǒng)本身的主機(jī)名稱(chēng)信息〔任可以理解成是某個(gè)應(yīng)用所運(yùn)行的所有資源集合很钓,包括系統(tǒng)環(huán)境。
3 docker和K8S 關(guān)系
Docker提供基本容器管理 API 和容器鏡像文件格式
Kubernetes 管理運(yùn)行容器的(物理或虛擬)主機(jī)群集
個(gè)人理解是 docker是企業(yè)里某個(gè)運(yùn)行的生產(chǎn)線企孩,K8S 屬于企業(yè)的廠房袁稽,每個(gè)廠房里可以存在多個(gè)生產(chǎn)線,并對(duì)產(chǎn)線運(yùn)行進(jìn)行調(diào)度管理歧沪。