问题描述
在下一个版本的ingress-nginx控制器中,似乎不赞成使用TCP和UDP.是否有其他任何入口控制器支持TCP和UDP?或其他任何在kubernetes之外公开非HTTP端口的解决方案?
It seems to be TCP and UDP support is going to be deprecated in next version of ingress-nginx controller . Any other ingress controllers supports TCP and UDP ?or any other solutions for exposing non-http ports outside kubernetes ?
- kubernetes初学者在这里*
推荐答案
nginx入口(和 Ingress 资源是第7层设施,不支持第4层,无论如何,将来可能会支持第4层.请注意, nginx本身支持第4层流量,而不是K8s Ingress.
The nginx-ingress (and the Ingress resource in K8s for that matter) is a layer 7 facility and doesn't support layer 4, in any case, layer 4 might be supported at some point in the future. Note that nginx itself supports layer 4 traffic but not the K8s Ingress.
如果您想直接终止TCP或UDP,则可以使用标准的 Kubernetes服务. NodePort 和 LoadBalancer (取决于云提供商)类型的服务也应支持TCP/UDP.
If you like to directly terminate TCP or UDP you can use standard Kubernetes services. NodePort and LoadBalancer (depending on the cloud provider) types of services should also support TCP/UDP.
更新:
这里有一个有关如何通过nginx入口(来自NGINX公司)支持TCP/UDP的教程此处.
There's a tutorial on how to support TCP/UDP with an nginx ingress (from the NGINX company) here.
这篇关于Kubernetes中的TCP入口支持的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!