> 本文作者:丁辉 # 通过副本控制实现金丝雀发布 [官方文档](https://kubernetes.io/zh-cn/docs/concepts/workloads/controllers/deployment/#canary-deployment) ## 通过副本数控制 **操作步骤:** 1. 先部署稳定版本(v1,9个副本) 2. 部署金丝雀版本(v2,1个副本) 3. Service会自动将约9%的流量(1/10)导向v2 4. 观察监控,如果v2正常,逐步增加v2副本数,减少v1副本数 ## 开始部署 部署测试示例 Nginx Deployment v1和v2 1. 部署 Pod-Nginx-v1 ```bash kubectl apply -f https://gitee.com/offends/Kubernetes/raw/main/File/Yaml/nginx-deployment-v1.yaml ``` 2. 部署 Pod-Nginx-v2 ```bash kubectl apply -f https://gitee.com/offends/Kubernetes/raw/main/File/Yaml/nginx-deployment-v2.yaml ``` 3. 修改副本数数量 - v1 配置为 9 ```bash kubectl scale deployment/nginx-deployment-1 --replicas=9 ``` - v2 配置为 1 ```bash kubectl scale deployment/nginx-deployment-2 --replicas=1 ``` 4. 部署 Service(同时选择v1和v2的Pod) ```yaml cat <