更改Kubernetes服务名称而不删除它

时间:2020-10-10 17:49:33

标签: kubernetes

假设在我的微服务体系结构中,我有一个微服务可以接收API调用,并将所需的RPC发送到其他微服务以响应调用。我们称之为server

为了暴露给外界,我有一个NodePort服务,用于以该微服务的名称(server)命名。 目前,我正在使用RabbitMQ进行服务间通信,server正在通过RMQ队列与其他微服务通信。

现在,我想部署服务网格并将gRPC用于服务间通信。因此,我需要使用其微服务名称(包括server)为我的所有微服务创建gRPC端口的K8s服务。但是,名称为server的K8s服务已经存在,我需要更改该NodePort的名称才能创建其gRPC服务,但是K8s不允许我更改服务名称。 。如果我删除NodePort并使用新名称创建另一个,则我的应用程序将在这几秒钟内关闭。

最后的问题是,在向用户提供我的应用程序的同时,如何实现重命名NodePort

1 个答案:

答案 0 :(得分:2)

您可以执行以下操作:

  1. 创建一个全新的NodePort服务“服务器重命名”(具有与“服务器”相同的选择器,并且所有内容都与服务器相同)

  2. 更改您的微服务配置以使用它并检查一切正常

  3. 删除“服务器”服务,并使用新的必需规范重新创建它。

相关问题