什么是工作負載
工作負載是在Kubernetes上運行的應(yīng)用程序。無論您的工作負載是單個組件還是協(xié)同工作的多個組件,您都可以在Kubernetes上的一組Pod中運行它。在Kubernetes中,工作負載是對一組Pod的抽象模型,用于描述業(yè)務(wù)的運行載體,包括Deployment、Statefulset、Daemonset、Job、CronJob等多種類型。
云容器引擎CCE提供基于Kubernetes原生類型的容器部署和管理能力,支持容器工作負載部署、配置、監(jiān)控、擴容、升級、卸載、服務(wù)發(fā)現(xiàn)及負載均衡等生命周期管理。
Pod
Pod是Kubernetes創(chuàng)建或部署的最小單位。一個Pod封裝一個或多個容器(container)、存儲資源(volume)、一個獨立的網(wǎng)絡(luò)IP以及管理控制容器運行方式的策略選項。
Pod使用主要分為兩種方式:
1.Pod中運行一個容器。這是Kubernetes最常見的用法,您可以將Pod視為單個封裝的容器,但是Kubernetes是直接管理Pod而不是容器。
2.Pod中運行多個需要耦合在一起工作、需要共享資源的容器。通常這種場景下應(yīng)用包含一個主容器和幾個輔助容器(SideCar Container),如下圖所示,例如主容器為一個web服務(wù)器,從一個固定目錄下對外提供文件服務(wù),而輔助容器周期性的從外部下載文件存到這個固定目錄下。
實際使用中很少直接創(chuàng)建Pod,而是使用Kubernetes中稱為Controller的抽象層來管理Pod實例,例如Deployment和Job。Controller可以創(chuàng)建和管理多個Pod,提供副本管理、滾動升級和自愈能力。通常,Controller會使用Pod Template來創(chuàng)建相應(yīng)的Pod。