Rancher金丝雀发布

rancher金丝雀发布

目录

rancher金丝雀发布

金丝雀基于Ingress

集群内部署服务


金丝雀基于Ingress

  • nginx.ingress.kubernetes.io/canary-by-header:基于 Request Header 的流量切分,适用于灰度发布以及 A/B 测试。当 Request Header 设置为 always时,请求将会被一直发送到 Canary 版本;当 Request Header 设置为 never时,请求不会被发送到 Canary 入口;对于任何其他 Header 值,将忽略 Header,并通过优先级将请求与其他金丝雀规则进行优先级的比较。

  • nginx.ingress.kubernetes.io/canary-by-header-value:要匹配的 Request Header 的值,用于通知 Ingress 将请求路由到 Canary Ingress 中指定的服务。当 Request Header 设置为此值时,它将被路由到 Canary 入口。该规则允许用户自定义 Request Header 的值,必须与上一个 annotation (即:canary-by-header)一起使用。

  • nginx.ingress.kubernetes.io/canary-weight:基于服务权重的流量切分,适用于蓝绿部署,权重范围 0 - 100 按百分比将请求路由到 Canary Ingress 中指定的服务。权重为 0 意味着该金丝雀规则不会向 Canary 入口的服务发送任何请求。权重为 100 意味着所有请求都将被发送到 Canary 入口。

  • nginx.ingress.kubernetes.io/canary-by-cookie:基于 Cookie 的流量切分,适用于灰度发布与 A/B 测试。用于通知 Ingress 将请求路由到 Canary Ingress 中指定的服务的cookie。当 cookie 值设置为 always时,它将被路由到 Canary 入口;当 cookie 值设置为 never时,请求不会被发送到 Canary 入口;对于任何其他值,将忽略 cookie 并将请求与其他金丝雀规则进行优先级的比较。

常用值

部署服务

 

首先在rancherUI部署服务,这里是阿里云的一个镜像:registry.cn-hangzhou.aliyuncs.com/macow/home,进入集群的试图,点击部署服务,只填写了名字和镜像,保存;

wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

克隆建好的服务,修改名称v1为v2

 

wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

负载均衡配置

点击工作服务旁边的负载均衡,添加规则

wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

标签和注释规则

	nginx.ingress.kubernetes.io/canary
	nginx.ingress.kubernetes.io/canary-by-header
	nginx.ingress.kubernetes.io/canary-by-header-value

wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

验证

点击

看后台日志

post测试:修改v2的值为其他值,请求都会被路由到v1的版本上,等于v2时请求路由到v2

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值