使用Nginx Ingress控制器启用Canary发布的会话亲和力

时间:2019-02-27 18:24:18

标签: nginx kubernetes kubernetes-ingress nginx-ingress canary-deployment

我正在尝试使用Nginx入口控制器设置canary-release。问题在于它无法保持会话亲和力,从而导致每个请求都由随机服务提供服务。

我的金丝雀入口:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  namespace: canary
  name: ingress-nginx
  annotations:
    kubernetes.io/ingress.class: "nginx"
    nginx.ingress.kubernetes.io/canary: "true"
    nginx.ingress.kubernetes.io/canary-weight: "50"

我的默认入口:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: ingress-nginx
  annotations:
    kubernetes.io/ingress.class: "nginx"
    nginx.ingress.kubernetes.io/affinity: cookie

当前是否可以通过Nginx入口启用会话亲和力以进行金丝雀释放?

1 个答案:

答案 0 :(得分:1)

似乎您不是唯一遇到此问题的人。 github上存在一个开放问题,其中大部分都存在相同的问题:Session affinity doesn't work for canaries

等待修复