1)、命令方式更新镜像:html
kubectl set image deployment nginx-deployment nginx=nginx:1.9.1
kubectl set resources deployment nginx-deployment -c=nginx --limits=cpu=200m,memory=512Mi
2)、直接编辑文件(这种方式会直接建立所有pod,删除所有pod):nginx
kubectl edit deployment nginx-deployment
3)、使用已经写好的yml文件更新:shell
kubectl apply -f nginx.yml
4)、查看更新状态:app
kubectl rollout status deployment nginx-deployment
1)、查看历史版本:spa
kubectl rollout history deployment nginx-deployment
2)、查看指定历史版本的详细信息:code
kubectl rollout history deployment nginx-deployment --revision=2
3)、回滚到上个版本:server
kubectl rollout undo deployment/nginx-deployment
4)、回滚到指定的历史版本:htm
kubectl rollout undo deployment nginx-deployment --to-revision=2
1)、更改replicas
数量:blog
kubectl scale deployment nginx-deployment --replicas=10
2)、暂停和恢复更新:部署
kubectl rollout pause deployment/nginx-deployment #暂停 kubectl rollout resume deploy/nginx-deployment #恢复 注:不能回滚已暂停的部署,直到恢复
3)、自动伸缩扩容:
kubectl autoscale deployment nginx-deployment --cpu-percent=75 --min=2 --max=10 #当总体的cpu上升到75%时增长replicas数量
注:当使用自动扩容时得安装metrics-server或heapster,因为heapster以后不更新了,故使用metrics-server。
使用安装metrics-server见:https://www.cnblogs.com/chimeiwangliang/p/9239592.html