【发布时间】:2021-01-09 17:29:49
【问题描述】:
我需要一些帮助来解决特定的 Kubernetes + mTLS 问题。
请问如何让 Kubernetes 活跃度探测在安全的 https mTLS 健康检查端点上工作?
我的应用程序是一个 Web 应用程序,其中健康检查端点通过特定端口公开,与其他业务端点相同。
根据安全性、审计和合规性审查,我必须通过 mTLS 保护我的所有端点,即使是简单且无害的健康检查端点。
根据安全、审计和合规审查,我不能暴露任何其他端口,例如在 https 端口 1 上做我的业务端点,但在 http 端口 2 上做健康。
因此,这是失败并将我的应用程序标记为关闭(因为它通过简单的 http,端点是 https)
livenessProbe:
httpGet:
path: /health
port: 8080
scheme: HTTP
initialDelaySeconds: 10
periodSeconds: 10
为了在测试期间确认,我们禁用了 https 和 mTLS,启用了普通的旧 http,一切正常,但我们根本无法做到。
请问这个问题怎么解决?
谢谢。
【问题讨论】:
-
您是否在集群中使用 Istio?你查了吗istio.io/latest/docs/tasks/security/authentication/authn-policy/…
-
您好,Marius,感谢您的评论。遗憾的是,我们没有使用 Istio,希望我能找到一个解决方案,而无需添加太多依赖项。
-
恐怕kubernetes默认不支持。
-
:'( 感谢 Marius 的评论!
标签: kubernetes https kubernetes-health-check mtls