Skip to content

Deployment详解

创建Tomcat应用程序

简单创建

bash
kubectl create deployment my-tomcat --image=tomcat
kubectl get deployment
kubectl delete deployment my-tomcat

删除容器会自动创建新容器 简单来说有一种自愈能力

多副本方式

bash
kubectl create deployment my-tomcat --image=tomcat --replicas=3

配置文件

编写配置 mytomcat-deployment.yaml

yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    run: mytomcat
  name: mytomcat
spec:
  replicas: 3
  selector:
    matchLabels:
      app: mytomcat
  template:
    metadata:
      labels:
        app: mytomcat
    spec:
      containers:
        - name: tomcat
          image: tomcat
bash
kubectl create -f mytomcat-deployment.yaml

扩缩容

bash
kubectl scale --replicas=5 deployment mytomcat

自动探测

bash
kubectl edit deployment mytomcat

滚动升级与回滚

升级

bash
kubectl set image deployment mytomcat tomcat=tomcat:9 --record

回滚

回滚历史

bash
#查看版本历史
kubectl rollout history deployment mytomcat

回滚版本

bash
#回滚上一个版本
kubectl rollout undo deployment mytomcat
#回滚到指定版本
kubectl rollout undo deployment mytomcat --to-revision=2