我想制作一个Ubuntu服务器映像,在公共云中运行,发现同一映像中的其他服务器何时联机。 我想出了这个解决scheme清单,但我不确定什么是最好的?
可能的解决scheme:
更可能的解决scheme:(服务器必须有一个IP地址已经)
有没有更多的方法来发现节点? 大型云集群中通常会做什么?
公共云提供商通常不支持广播/多播方法,因此任何依赖这些方法的解决scheme都不是“最好的”。 至less对于包含平台独立性重要组成部分的“最佳”值。
在单播土地上,你有很多select,很大程度上取决于你想要对这些图像做什么以及哪些服务实际上在做这个发现。
如果你完全在一个单一的云基础设施提供商内部,通常的方法是向基础设施询问有关内容 。 你将得到一个IP地址的服务器列表,然后你可以使用它来构build你的dynamic集群。
如果你出于某种原因不能这么做,也许你是在多个提供者上,或者你需要一个已知活动主机的列表,你将不得不去build立一个特定于应用程序的方法来构build一个dynamic集群。 这种方法是不同的,但我已经看到:
什么最适合你取决于你在做什么。 但是首先要进行API查找,如果这些查找不起作用,那么就只有这样才行。
据我所知,这样做的正确方法是使用您的云提供商提供给您的API。 试图从主机做到这一点是一个“石斧”领土。 使用您付费的太空时代精美的基础设施。