小编sav*_*vas的帖子

没有发夹 nat 的 kubernetes 上的证书管理器

我有一个在 vmware vcloud Director 上运行的裸机 kubernetes 部署,我正在努力设置 cert-manager 来管理 ssl 证书。如以下问题所述,“挑战”总是在对集群域名/公共 IP 进行自检时失败,因为它无法从集群内部访问(vmware vcloud Director 不支持将流量从内部服务器路由回的发夹 nat到使用边缘网关公共 IP 的内部服务器)。

https://github.com/jetstack/cert-manager/issues/863

还有一个功能要求禁用 http01 和 dns01 自检,但尚未实现。

https://github.com/jetstack/cert-manager/issues/1292

我的问题是“是否有解决此自检请求的解决方案?” 我也在使用 node-port 向外部打开 nginx-ingress 服务。因此,我必须在不离开 kubernetes 集群的情况下将 www.domain.com:80 请求从 cert-manager pod 路由到 ingress-nginx pod 31080 端口。

在此处输入图片说明

最良好的问候

cloud ssl virtual-machine kubernetes cert-manager

7
推荐指数
0
解决办法
323
查看次数

Kubernetes ingress-nginx 粘性会话不适用于 Spring Security

我有一个有状态的 Spring 应用程序,我想将其部署到 kubernetes 集群。该应用程序将有多个实例,因此我需要使用 ingress-nginx 控制器启用静态会话。我做了以下配置:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: ingress-nginx
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/ssl-redirect: "false"
    nginx.ingress.kubernetes.io/affinity: "cookie"
    nginx.ingress.kubernetes.io/session-cookie-name: "JSESSIONID"
    nginx.ingress.kubernetes.io/session-cookie-expires: "172800"
    nginx.ingress.kubernetes.io/session-cookie-max-age: "172800"
    nginx.ingress.kubernetes.io/session-cookie-path: /ingress-test
    # UPDATE THIS LINE ABOVE
spec:
  rules:
     - http:
        paths:
          - path: /ingress-test
            backend:
              serviceName: ingress-test
              servicePort: 31080
Run Code Online (Sandbox Code Playgroud)

如果登录成功,ingress-nginx 将后续请求重定向到正确的 pod。然而,它有时会在 JSESSIONID 更改后立即切换到其他 pod(JSESSIONID cookie 在成功登录后由 spring-security 更改),并且即使用户凭据正确,前端也会重定向回登录页面。有人尝试过 ingress-nginx 和 spring-security 吗?

此致

spring spring-security kubernetes sticky-session

3
推荐指数
1
解决办法
7272
查看次数