一、Deployment简介
在kubernetes中,Pod是最小的控制单元,但是kubernetes很少直接控制Pod,一般都是通过Pod控制器来完成的。Pod控制器用于pod的管理,确保pod资源符合预期的状态,当pod的资源出现故障时,会尝试进行重启或重建pod。
在kubernetes中Pod控制器的种类有很多,如:Deployment、ReplicaSet、DaemonSet、Job、CronJob。
二、Deployment操作
(1) 命令操作
# 命令格式: kubectl create deployment 名称 [参数]
# --image 指定pod的镜像
# --port 指定端口
# --replicas 指定创建pod数量
# --namespace 指定namespace
kubectl run tomcat-deploy --image=tomcat:latest --port=8080 --replicas=3 -n mk
kubectl get deploy -n dev
# UP-TO-DATE:成功升级的副本数量
# AVAILABLE:可用副本的数量
kubectl get deploy -n dev -o wide# 查看deployment的详细信息
kubectl describe deploy tomcat-deploy -n mk# 删除
kubectl delete deploy tomcat-deploy -n mk
(2)配置操作
创建一个tomcat-deploy.yaml,内容如下:
apiVersion: apps/v1 kind: Deployment metadata:name: tomcat-deploynamespace: mk spec:replicas: 3selector:matchLabels:name: tomcattemplate:metadata:labels:name: tomcatspec:containers:- image: tomcat:latestname: tomcat-containerports:- containerPort: 8080protocol: TCP
然后执行对应的创建和删除命令:
创建:kubectl create -f tomcat-deploy.yaml
删除:kubectl delete -f tomcat-deploy.yaml