我们希望在Azure Kubernetes Service (AKS)上的Kubernetes集群中运行Wowza流引擎和其他容器。Wowza使用各种端口,有些使用TCP,有些使用UDP协议。
我们需要将这些端口暴露给外部世界。我们似乎找不到一种方法来设置既可以转发TCP端口又可以转发UDP端口的负载平衡器。
在即将发布的K8s版本之前,LoadBalancer服务不支持混合协议,而在AKS:link中提供此版本之前,还需要更长的时间。
我们已经尝试使用nginx-ingress,但由于底层的K8s限制,它具有相同的限制:请参阅作者here的评论
根据citrix-ingress的文档,它似乎允许这样做,但我们在让它工作时有很多问题……
有没有什么办法可以做到这一点,而我们可能错过了呢?我想确保我们没有遗漏一些明显的东西。
发布于 2020-12-23 10:25:44
这是一个社区维基的答案,为了更好的可见性。当最终解决方案可用时,您可以随意编辑它(AKS上的k8s v1.20 )。
有一个开放的增强:Support of mixed protocols in Services with type=LoadBalancer #1435,它在实现时将支持创建具有不同协议的不同端口定义的LoadBalancer
服务。稳定版本计划在k8s v1.20中发布。
不幸的是,目前还不能将TCP和UDP端口同时用于LoadBalancer
服务。然而,当上面的解决方案到位时,它就会出现。
发布于 2020-12-14 09:54:12
您可以在hostNetwork模式下运行pods,然后在该模式或类似模式上手动设置负载平衡器。出于安全性和自动化的原因,不建议这样做。
https://stackoverflow.com/questions/65286712
复制相似问题