在 Traefik Ku​​bernetes Ingress 中开放除 HTTP 和 HTTPS 之外的其他端口

2024-01-29

我已经使用以下配置将 Traefik 作为 Kubernetes 中的入口:https://github.com/RedxLus/traefik-simple-kubernetes/tree/master/V1.7 https://github.com/RedxLus/traefik-simple-kubernetes/tree/master/V1.7

并且适用于 HTTP 和 HTTPS,但我不知道如何打开其他端口进行转发,例如,在端口 3306 中具有带有 MySQL 的 Ingress 的 Pod

感谢您的每一个回答!


如果您使用 Ingress 资源并且该资源不支持其他答案中提到的 L4 类型流量,Traefik 不支持它。

但如果您使用的是 Nginx 入口控制器,则有一个解决方法,即使用带有入口控制器选项的 ConfigMap--tcp-services-configmap and --udp-services-configmap如上所述here https://kubernetes.github.io/ingress-nginx/user-guide/exposing-tcp-udp-services/。那么你的tcp-servicesConfigMap 看起来像这样:

apiVersion: v1
kind: ConfigMap
metadata:
  name: tcp-services
  namespace: ingress-nginx
data:
  9000: "default/example-go:8080"

这样做的优点是集群有一个入口点(这适用于任何用于 TCP/UDP 的入口),但缺点是与仅拥有 Kubernetes 相比,拥有额外层的开销Service https://kubernetes.io/docs/concepts/services-networking/service/(NodePort 或 LoadBalancer)已侦听 TCP/UDP 端口。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Traefik Ku​​bernetes Ingress 中开放除 HTTP 和 HTTPS 之外的其他端口 的相关文章

随机推荐