一. 金丝雀发布作用:
金丝雀发布是指在生产环境中逐步推出新版本应用程序,只在一小部分用户或流量中使用该版本,并根据反馈逐步扩大规模,最终完全替换旧版本。金丝雀发布允许快速检测新版本与旧版本之间是否存在兼容性问题、性能问题或其他问题,并减轻了在实施全新发布时可能遭受的损失
二. 官网地址:
Annotations - Ingress-Nginx Controller (kubernetes.github.io)https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/
三. 基于Header灰度实验测试
实验前: 删除之前创建的pod svc等资源
1. 创建正常接受流量的svc v1版本 vim myapp-v1.yaml
2. 创建接收带有header流量的svc v2版本 vim myapp-v2.yaml
3. 查看svc是否正常
4. 创建ingress规则 v1 ingress-v1.yaml
5. 创建ingress规则 v2 vim ingress-v2.yaml
6. 此时测试访问即可
四. 基于权重灰度实验测试
1. 修改ingress规则文件 v2 vim ingress-v2.yaml
2. 方便测试便捷创建测试脚本 vim test.sh
3. 修改百分比在测试 逐渐到100即可
五. 业务域拆分--重定向
1. 删除之前创建的ingress规则
2. 创建编辑文件 vim ingress-v3.yaml
3. 访问测试即可