pod: 計(jì)算運(yùn)行最小單位
control: 控制pod的工具
為什么要用k8s
自動(dòng)化部署度帮,擴(kuò)縮蚁鳖,管理
1. 故障遷移: 節(jié)點(diǎn)關(guān)機(jī)或者宕機(jī)后昏兆,node服務(wù)轉(zhuǎn)移到另一個(gè)node節(jié)點(diǎn).
- 負(fù)載均衡
滾動(dòng)升級(jí)和回滾
- kubectl set image deployment my-tomcat tomcat=tomcat:8.0.41-jre8-alpine
執(zhí)行升級(jí)命令后鸳碧,可以看到有些pod在銷(xiāo)毀,有些在創(chuàng)建.
- depolyment 創(chuàng)建一個(gè)deployment來(lái)管理創(chuàng)建的容器.(管理)
重要的概念
彈性伸縮懒鉴,滾動(dòng)更新诡挂,配置管理,存儲(chǔ)卷临谱,網(wǎng)關(guān)路由等.
ingress&&service
拿微服務(wù)比例: ingress類(lèi)似nginx,service類(lèi)似LoadBalance.
Service 主要負(fù)責(zé) K8S 集群內(nèi)部的網(wǎng)絡(luò)拓?fù)淞住<和獠啃枰?Ingress 。
比如配置一個(gè)ingress-controller腳本悉默,將請(qǐng)求轉(zhuǎn)發(fā)給某個(gè)域名.
- 存儲(chǔ)卷將外部數(shù)據(jù)掛在到容器中城豁。 實(shí)現(xiàn)了分離。 這樣容器崩潰了麦牺,數(shù)據(jù)還在.
關(guān)于問(wèn)題排查:
常見(jiàn)的有 kubectl logs exec describe關(guān)于k8s性能提升:
用container減少了調(diào)用鏈長(zhǎng)度钮蛛,提高了性能鞭缭,占用資源變少了剖膳。
如果你使用Docker作為K8S容器運(yùn)行時(shí)的話(huà)魏颓,kubelet需要先要通過(guò)dockershim去調(diào)用Docker,再通過(guò)Docker去調(diào)用containerd吱晒。
如果你使用containerd作為K8S容器運(yùn)行時(shí)的話(huà)甸饱,由于containerd內(nèi)置了CRI插件,kubelet可以直接調(diào)用containerd仑濒。
使用containerd不僅性能提高了(調(diào)用鏈變短了)叹话,而且資源占用也會(huì)變小(Docker不是一個(gè)純粹的容器運(yùn)行時(shí)墩瞳,具有大量其他功能)驼壶。
當(dāng)然,未來(lái)Docker有可能自己直接實(shí)現(xiàn)K8S的CRI接口來(lái)兼容K8S的底層使用喉酌。