如何在配置时了解不同节点上的服务的IP地址?

问题描述:

我使用Terraform和Chef,在Digital Ocean上使用我的基础设施。在一个节点上,我有Grafana。这个节点有一个脚本,需要知道MongoDB和Elasticsearch在哪里,因为它更新了仪表板。如何在配置时了解不同节点上的服务的IP地址?

我不知道哪个是MongoDB或Elasticsearch的IP,因为它们在调配时位于不同节点上。

我该如何解决这个问题?

的完全基于厨师的答案是使用厨师搜索API。这允许基于属性来查询节点,在这种情况下可能是roles:mongo或类似的。厨师搜索是一个相对缓慢,虽然收敛系统,以厨师在其中可能需要几分钟的正确顺序两边跑。像Consul或Eureka这样较新的专用工具可以在几毫秒内重新收敛。

+0

我会看看领事,它看起来不错! – Lechucico