Deployment功能与应用场景:
部署无状态应用
管理Pod和ReplicaSet
具有上线部署、副本设定、滚动升级、回滚等功能
提供声明式更新,例如只更新一个新的Image
应用场景:Web服务,微服务
使用Deployment部署一个应用:
创建
kubectl create deployment web --image=nginx:1.14 --dry-run -o yaml >web.yml
kubectl create deployment web --image=nginx:1.14
kubectl get deploy,pods
发布
kubectl expose deployment web --port=80 --type=NodePort --target-port=80 --name=web
kubectl get service
升级
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 --revision=2
弹性伸缩
kubectl scale deployment/web --replicas=10
Kubectl edit 在线更改,立即生效。
Kubectl patch 打补丁