【发布时间】:2021-06-11 01:07:03
【问题描述】:
我有几个用 Spring Boot 编写的微服务,它们相互交互以执行某些任务。我需要使用 Kubernetes 在 AWS 中部署这些微服务。为了使微服务相互交互,一个服务需要知道另一个服务的名称。这是我不确定如何继续的地方。
由于我计划使用 Kubernetes 进行部署,我将为这两个微服务创建 Kubernetes 服务,并希望利用 Kubernetes 的 DNS 解析。现在我的问题是如何让一个微服务知道 Kubernetes 服务名称。我能想到的一个选择是,将微服务的名称放在 application.properties 中并创建具有相同名称的 Kubernetes 服务,但使用这种方法,我的印象是我正在计划失败。如果将来我的服务名称需要更改,那么我还需要记住更改依赖于此的每个微服务中的名称。
我认为这是人们在使用 Kubernetes 部署微服务期间可能面临的非常常见的场景。那么,这样做的最佳做法是什么?
【问题讨论】:
标签: java kubernetes deployment microservices