在K8S入口会话亲缘关系错误中放大Pod时

时间:2019-05-08 04:48:18

标签: docker kubernetes google-kubernetes-engine

我正在运行一个带有反应包的python应用程序。

当前,我正在运行单个Pod应用程序,似乎一切正常,但是当我扩展到Pod 2-3时,在某些情况下造成了无法登录应用程序的问题。

进入时,我已添加  入口Yaml配置为:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: admin-ingress
  annotations:
    kubernetes.io/ingress.class: "nginx"
    certmanager.k8s.io/cluster-issuer: admin-prod
    nginx.ingress.kubernetes.io/ssl-redirect: "true"
    nginx.ingress.kubernetes.io/secure-backends: "true"
    nginx.ingress.kubernetes.io/affinity: "cookie"
    nginx.ingress.kubernetes.io/session-cookie-name : "session"
spec:
  tls:
  - hosts:
    - domain
    secretName: admin-prod
  rules:
  - host: domain
    http:
      paths:
      - path: /
        backend:
          serviceName: admin-service
          servicePort: 80

1 个答案:

答案 0 :(得分:1)

似乎您正在将用户会话信息存储在cookie中。

nginx.ingress.kubernetes.io/affinity:“ cookie”

以上设置将启用使用cookie的粘性会话。例如,用户已连接到副本1。他的会话信息存储在cookie中。他注销并重新登录,将被带到副本1。