Amazon web services 向现有kubernetes服务添加端口

Amazon web services 向现有kubernetes服务添加端口,amazon-web-services,service,kubernetes,Amazon Web Services,Service,Kubernetes,我在kubernetes中有一个服务,它通过AWS上的负载平衡器在端口80上公开。 我还将DNS配置为指向负载平衡器主机名 我想在不替换的情况下向服务添加另一个端口,这也会替换负载平衡器及其域 我看到的唯一选择是通过kubectl应用“补丁”操作。 有没有比这更方便的方法 谢谢我不是ELB的专家,所以我不知道这是否可行,但我将讨论GCE,然后断言AWS应该以类似的方式运行 在KubernetesV1.0.x中,有一个不幸的bug,它会释放外部负载平衡器,并在更新服务时重新创建它。在Kuberne

我在kubernetes中有一个服务,它通过AWS上的负载平衡器在端口80上公开。 我还将DNS配置为指向负载平衡器主机名

我想在不替换的情况下向服务添加另一个端口,这也会替换负载平衡器及其域

我看到的唯一选择是通过kubectl应用“补丁”操作。 有没有比这更方便的方法


谢谢

我不是ELB的专家,所以我不知道这是否可行,但我将讨论GCE,然后断言AWS应该以类似的方式运行


在KubernetesV1.0.x中,有一个不幸的bug,它会释放外部负载平衡器,并在更新服务时重新创建它。在Kubernetes v1.1中,我们尽了最大努力不释放负载平衡器(更准确地说是外部IP),因此服务上的PUT或补丁(kubectl替换或kubectl补丁)是安全的。如果AWS发布了外部负载平衡器(我知道它不是ELB的IP),那么我们应该设法解决这个问题。

谢谢您的回答。AWS不会自行发布ELB,必须使用显式命令才能发布。在版本1.0.x上,看起来服务被删除并再次创建,这意味着ELBs被替换。如果在版本1.1.x上您没有删除服务(意味着ELB会删除),那么事情应该按照预期进行。我认为这对服务稳定性非常重要。另一个注意事项是:如果我们不放弃ELB,我们必须改变它以适应新的服务端口要求。ELBs与侦听器一起工作,因此,例如,如果我在端口80上有一个nginx侦听,并在kubernetes中作为负载平衡器服务公开,那么ELB在端口80上有一个侦听器,它将流量转发给服务的指定节点端口上的kubernetes仆从。如果现在我将端口443添加到nginx服务,我们必须在现有的ELB上创建另一个侦听器。我是否应该在kubernetes github中将其作为问题打开?如果它确实要删除ELB以进行更新,那么是的,请打开github问题