kubernetes吊舱如何发现彼此?

Gop*_*get 5 kubernetes

我正在尝试实现使用共识算法(https://raft.github.io/)的etcd服务之类的东西。在这种情况下,etcd服务的多个实例需要相互了解。为此,如果复制控制器中有3个etcd实例容器,则这些容器必须能够彼此通信(至少能够知道self和所有其他容器的IP)。

有没有一种方法可以在复制控制器或pod规范中实现这一点,而不必在pod容器中使用kubernetes API?

Pau*_*rie 4

您可以通过为每个 pod 提供一些标签(例如 )来将服务放在这些 pod 前面etcd-service=true,并使用与该标签匹配的选择器创建 kubernetes 服务。使用 DNS 插件,您将获得服务中每个端点的 DNS A 记录。您可以在此处的文档中阅读更多内容。