0

我有一个部署,其中包含 2 个 pod,其中有一个 webapp。安装 Nginx 入口控制器以使用 tls-passthrough 公开这两个 pod。我曾尝试使用注释来设置粘性会话,但无济于事。标头中没有 cookie,因此没有粘性。我该怎么做才能让它发挥作用?非常感谢您的明智回答。

我创建的入口:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
 name: ingress
 annotations:
 # nginx.ingress.kubernetes.io/secure-backends: "true"
 # nginx.ingress.kubernetes.io/ssl-passthrough: "true"
 # nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
 # nginx.ingress.kubernetes.io/rewrite-target: /
   nginx.ingress.kubernetes.io/affinity: "cookie"
   nginx.ingress.kubernetes.io/affinity-mode: "persistent"
   nginx.ingress.kubernetes.io/session-cookie-name: "wabam"
   nginx.ingress.kubernetes.io/session-cookie-expires: "172800"
   nginx.ingress.kubernetes.io/session-cookie-max-age: "172800"
namespace: default
spec:
 rules:
  - host: wabam.moulip.lan
     http:
     paths:
      - backend:
          serviceName: wabam-ingress-svc
          servicePort: 443
        path: /
4

1 回答 1

0

我将此作为社区 wiki 答案发布,以提高知名度。

正如评论中已经提到的:与ssl-passthrough. 官方文档也提到了这一点:

因为 SSL Passthrough 在 OSI 模型 (TCP) 的第 4 层而不是第 7 层 (HTTP) 上工作,所以使用 SSL Passthrough 会使 Ingress 对象上设置的所有其他注释无效。

于 2020-07-27T10:25:57.203 回答