要将新代理加入一组领事成员,需要知道至少一名现有成员的知识产权。 我必须支持一个我不知道任何现有组成员的IP的场景。在这种情况下,人工干预是不可能的,因为服务发现必须完全自动运行。
我的想法是解决这个问题:我可以通过广播或多播向网络中的其他计算机发送消息。每台计算机都托管一个我将实现的自定义服务。该服务使用领事正在监听的IP地址回复此特殊广播/多播消息(例如:"寻找现有集群成员")。然后,该服务将从网络获得一个或多个回复,并使用其中一个IP地址加入群集。
有没有人有更好的想法来解决这个问题?有没有现成的库来解决这个问题?
答案 0 :(得分:3)
Hashicorp提供免费服务作为Atlas的一部分来做到这一点:https://www.consul.io/docs/guides/atlas.html
没有自定义服务的其他更简单的方法: