配置时如何知道不同节点上的服务IP地址?

时间:2017-10-16 10:04:00

标签: chef digital-ocean terraform

我使用Terraform和Chef配置我的数字海洋基础设施。在一个节点上,我有Grafana。此节点有一个脚本需要知道MongoDB和Elasticsearch的位置,因为它更新了仪表板。

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

我如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

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