1

我正在尝试在 kubernetes 上部署 vernemq,并希望使用带有 ssl 的子域访问它,但在请求转到端口 1883 上的 vernemq 之前,应终止 ssl。

4

1 回答 1

2

创建haproxy-ingress-values.yaml具有以下内容的文件

controller:
  tcp:
    "1883": "default/vernemq:1883:::default/mqtt-tls"

default/vernemq:1883vernemq端口 1883的服务,default/mqtt-tls是您想要终止的 mqtt 的 tls 机密。

然后使用以下命令升级您的haproxy-ingress

helm upgrade haproxy-ingress haproxy-ingress/haproxy-ingress --create-namespace --namespace ingress-controller --version 0.13.4 -f haproxy-ingress-values.yaml

只需替换upgradeinstall新安装的 haproxy-ingress。

然后最后部署以下入口

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: vernemq-ingress
  annotations:
    kubernetes.io/ingress.class: haproxy
    ingress.kubernetes.io/tcp-service-port: "1883"
spec:
  rules:
    - http:
        paths:
          - path: /
            pathType: ImplementationSpecific
            backend:
              service:
                name: vernemq
                port:
                  number: 1883
于 2021-10-09T17:09:44.917 回答