1.Deployment介绍与使用流程
Deployment 是最常用的k8s工作负载均衡器,是k8s的一个抽象的概念,用于更高层次对象,部署和管理pod
主要功能:
1. 管理Pod,部署应用程序
2. 具有上线部署,副本设定,滚动升级,回滚等功能
主要应用场景:网站、API、微服务
使用流程(即应用生命周期管理流程)。应用程序 –> 部署 –> 升级 –> 回滚 –> 下线
2.应用升级
更新镜像的两种方式。自动触发滚动升级
kubectl apply -f nignx.yaml
kubectl set image deployment nginx nginx=nginx:1.17 –recort=true
滚动升级:k8s对Pod的默认升级策略,通过使用新版本Pod逐步更新旧版Pod,实现零停机发布,用户无感知
3.应用发布失败回滚
项目发布失败恢复到正常版本
kubectl rollout history deployment nginx #查看历史发布版本
kubectl rollout undo deployment nginx #回滚上一个版本
kubectl rollout undo deployment nginx –to-reversion=2 #回滚历史指定版本
回滚是重新部署某一次部署时的状态,即当时版本的所有配置
应用水平扩容与缩容
水平扩缩容(启动多实例 提高并发)replicas参数控制pod副本数量,扩容增大replicas值,缩容则减小replicas值
1.修改yaml里replicas值,再apply
2. kubectl scale deployment nginx –replicas=10
应用下线流程
kubectl delete -f nginx.yaml
或
kubectl delete deployment nginx
kubectl delete service nginx
上次更新时间 13 3 月, 2023 at 09:59 上午