目前,我们正在使用loadbalancer类型的服务将外部请求路由到我们的一个pod。
我们希望将其移动到一个入口类型的服务(已经有一个外部负载平衡器和一个入口控制器一起设置-我们确实有其他pod配置为通过这个入口控制器接收外部请求)
我们现在拥有的是下面的url,用于客户端外部连接:
ws://streamevents.app.com:7080/stomp
wss://streamevents.app.com:7443/stomp
我们想把它移到
ws://streameventsv2.app.com/stomp
wss://streameventsv2.app.com/stomp
这样,我们可以释放负载均衡器IP,而不需要特定的端口。我们确实希望在一段时间内同时支持两个url -因为客户端已经连接到旧的url。我们怎样才能做到这一点呢?
我能想到的选项(我们使用helm):
- 使用Ingress服务创建一个单独的图表和部署-旧的仍然使用LoadBalancer
- 相同的图表-以两种方式暴露服务(这真的可能吗?)
- 将当前url更改为Ingress -并且以某种方式确保我们将请求路由到旧url到新入口(如何?)
或其他可能的方法?
我猜你拥有舵图,因此你可以对它进行更改。如果是这样,您可以使用Ingress和LoadBalancer服务公开您的服务。除了添加Ingress资源外,您不需要对helm图中的任何其他资源进行任何更改。当你不再支持LoadBalancer对象时,你可以删除它。