我目前正在尝试在我的 kubernetes 集群 (GKE) 上设置 MQTT 代理 (VerneMQ)。目前,我正在使用 nginx-ingress-controller 和 Google 提供的 L4 负载均衡器。VerneMQ 部署和服务正在集群中运行,子域指向负载均衡器的特定 IP。已创建 nginx-ingress-controller 上 TCP 的特定配置映射。我能够通过 MQTT/TCP 通过子域连接到 MQTT 客户端,但现在我希望它也以更安全的方式使用 MQTTS/TLS 运行。
是否可以通过 nginx-ingress-controller 使用 cert-manager 颁发的 lets-encrypt 证书通过 SSL 运行 TCP,以便将 MQTTS 连接到我的代理?
是否有其他入口控制器提供这些功能?
先感谢您。
答案1
看起来haproxy-ingress
支持吗?我还没有测试过,但是文档这个选项可能有效:
...
data:
"9900": "system-prod/admin:9900:PROXY::system-prod/tcp-9900"
9900 将代理到 system-prod 命名空间上的管理服务(端口 9900)。客户端应使用 PROXY 协议 v1 或 v2 进行连接。即将到来的连接应加密,HAProxy 将使用 system-prod/tcp-9900 secret 提供的 crt/key 进行 ssl 卸载数据。