JWo*_*JWo 3 mqtt kubernetes kubernetes-ingress nginx-ingress
我有一个 Kubernetes 集群,其中包含一个 REST API 的有效 Ingress 配置。现在我想将端口转发到我的 mqtt 适配器添加到此配置中,但我在寻找将 TCP 规则添加到配置中的方法时遇到问题。Kubernetes 文档仅显示一个 HTTP 示例。https://kubernetes.io/docs/concepts/services-networking/ingress/
我对 Kubernetes 还很陌生,在适应其他配置时遇到了问题,因为我发现的任何内容看起来都与我在 Kubernetes 文档中找到的完全不同。
我使用了常规的 nginx Web 服务器和 LetsEncrypt 来保护 TCP 连接。我希望这也适用于入口控制器。
我的目标是通过 MQTT 使用 TLS 将消息发送到我的集群。有人有这方面的正确文档或知道如何添加配置吗?
我的配置如下:
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: ratings-web-ingress
annotations:
kubernetes.io/ingress.class: nginx
cert-manager.io/cluster-issuer: letsencrypt
spec:
tls:
- hosts:
- example.com
secretName: ratings-web-cert
rules:
- host: example.com
http:
paths:
- backend:
serviceName: test-api
servicePort: 8080
path: /
Run Code Online (Sandbox Code Playgroud)
Ingress 系统一般只处理 HTTP 流量。一些入口控制器支持非 HTTP 数据包处理的自定义扩展,但每个入口控制器都不同。https://kubernetes.github.io/ingress-nginx/user-guide/exusing-tcp-udp-services/显示了如何专门针对 ingress-nginx 执行此操作,如图所示,您可以通过一些 ConfigMap 将其完全带外配置,而不是通过 Ingress 对象。
您可能真正想要的是 LoadBalancer 类型的 Service 对象。
| 归档时间: |
|
| 查看次数: |
3592 次 |
| 最近记录: |