某客户咨询 kubectl 命令行实现k8s服务的重启和镜像版本的更新方法,参考k8s官网 https://kubernetes.io/zh/docs/reference/kubectl/cheatsheet/ 整理出2个对应的步骤介绍。
服务重启一般有2种方式,直接删除pod,实现重启;或者修改 ReplicaSet 的方法实现重启。
kubectl get po -n default
已 alpine为例
kubectl delete po alpine-alpine-576f9f8b49-tq284 -n default
重启完成
修改 ReplicaSet 的方法实现重启,数量 scale 到 0,然后又 scale 到 1,那么 Pod 也就重启了。
kubectl get deploy -n default
kubectl scale deployment --replicas=0 alpine-alpine -n default
kubectl scale deployment --replicas=1 alpine-alpine -n default
编辑查看 deployment内容,
以 alpine为例
直接修改相关内容即可自动更新 , 找到当中的 image字段和name字段,观察镜像版本得知为alpine:0.04,名字为alpine-alpine
我们替换成其他版本 alpine:0.05 或 alpine:latest, 提示编辑完成
前面得到版本和名称后,后续更新只需要一行命令即可,命令如下:
更换alpine的镜像地址或版本即可
kubectl set image deployment/alpine-alpine alpine-alpine=10.10.150.105/myapp/alpine:0.05
更新完成提示 deployment.apps "alpine-alpine" image updated
文章评论