关于K8s 1.18.6版本基于 ingress-nginx 实现金丝雀发布

本文档详细介绍了如何在Kubernetes 1.18.6环境中,利用ingress-nginx控制器实现金丝雀发布(灰度发布)。通过创建和配置Deployment、Service以及Ingress资源,逐步演示了基于权重、请求头、请求头的值和Cookie来控制流量路由到不同版本的应用。
摘要由CSDN通过智能技术生成

K8s 1.18.6版本基于 ingress-nginx 实现金丝雀发布(灰度发布)
环境
软件 版本
kubernetes v1.18.6
nginx-ingress-controller 0.32.0
Rancher v2.4.5

本次实验基于 Rancher-v2.4.5 部署了1.18.6版本的k8s集群,nginx-ingress 版本为0.32.0,理论上 ingress-nginx >= 0.21.0都是可以的。
介绍

金丝雀发布:又叫灰度发布,控制产品从A版本平滑的过度到B版本

ingress-nginx:k8s ingress工具,支持金丝雀发布,可以实现基于权重、请求头、请求头的值、cookie转发流量。

rancher:k8s集群管理工具,使用UI简化k8s相关操作

ingress-nginx canary官方说明:https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md#canary
首先创建两个nginx应用

部署两个deployment的http应用

apiVersion: apps/v1
kind: Deployment
metadata:
name: appv1
labels:
app: v1
spec:
replicas: 1
selector:
matchLabels:
app: v1
template:
metadata:
labels:
app: v1
spec:
containers:
- name: nginx
image: zerchin/canary:v1
ports:
- containerPort: 80

apiVersion: apps/v1
kind: Deployment
metadata:
name: appv2
lab

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值