ingress-nginx如何在多个后端设置上属性配置会话亲和性

时间:2020-03-19 12:16:13

标签: cookies kubernetes-ingress session-affinity

我有一个大型应用程序,其使用的ingress-nginx的配置类似于:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    nginx.ingress.kubernetes.io/affinity: "cookie"
    nginx.ingress.kubernetes.io/affinity-mode: "persistent"
    nginx.ingress.kubernetes.io/ssl-redirect: SSL_REDIRECT
  name: MY_INGRESS
spec:
  tls:
  - secretName: SSL_CERTIFICATE_NAME
  rules:
  - host: EXTERNAL_HOST
    http:
      paths:
      - backend:
          serviceName: service2
        path: /service2
      - backend:
          serviceName: service3
        path: /service3
      - backend:
          serviceName: service4
        path: /service4
      - backend:
          serviceName: service5
        path: /service5
      - backend:
          serviceName: service6
        path: /service6
      - backend:
          serviceName: service7
        path: /service7
      - backend:
          serviceName: service1
        path: /

使用当前配置,我的cookie值会经常更新,并且会路由到其他服务器。

我的问题是每个服务都是唯一的,每个服务都链接到一组不同的POD,因此我需要会话关联。

实现此目标的最佳方法是什么?每个后端都有一个不同的Cookie名称的入口?

0 个答案:

没有答案