部署无状态应用
管理Pod和ReplicaSet
部署,滚动升级等服务
应用场景:
1、web服务
2、微服务
apiVersion: apps/v1
kind: Deployment
metadata:
creationTimestamp: null
labels:
app: web
name: web
spec:
replicas: 1
selector:
matchLabels:
app: web
strategy: {}
template:
metadata:
creationTimestamp: null
labels:
app: web
spec:
containers:
- image: nginx
name: nginx
resources: {}
status: {}
kubectl create deployment web --image=nginx --dry-run -o yaml > web.yaml
kubectl apply -f web.yaml
kubectl expose deployment web --port=80 --type=NodePort --target-port=80 --name=web1 -o yaml ->web1.yaml
kubectl apply -f web1.yaml
// 镜像版本升级
kubectl set image deployment web nginx=nginx:1.15
// 检查版本升级状态
kubectl rollout status deployment web
// 查看升级历史版本
kubectl rollout history deployment web
//还原成上一个版本
kubectl rollout undo deployment web
// 回滚到指定的版本
kubectl rollout undo deployment web --to-revision=3
kubectl scale deployment web --replicas=1
原文:https://www.cnblogs.com/wuzhixuan/p/15228352.html