通过kubectl管理Pod和服务的基础操作包括:
- 查看资源:
kubectl get pods/services
- 创建/更新资源:
kubectl apply -f <配置文件>
- 删除Pod/服务:
kubectl delete pod/service <名称>
- 暴露服务:
kubectl expose deployment <名称> --port=<端口>
延伸知识点:Pod滚动更新与回滚
当应用需要升级时,可通过Deployment实现滚动更新。例如,更新镜像版本:
kubectl set image deployment/<部署名称> <容器名>=<新镜像> --record
Kubernetes会逐步替换旧Pod,确保服务不中断。
回滚操作:
- 查看历史版本:
kubectl rollout history deployment/<部署名称>
- 回滚到指定版本:
kubectl rollout undo deployment/<部署名称> --to-revision=<版本号>
原理:Deployment通过ReplicaSet控制Pod副本,更新时创建新ReplicaSet并逐步缩放旧副本,回滚则反向操作。使用--record
可记录命令到历史,便于追溯。