MMS 从 uname 获取主机名,但无法连接

MMS 从 uname 获取主机名,但无法连接

我正在努力10gen 的 MongoDB 监控服务监控我的 3 节点副本集。副本集在 AWS VPC 中运行。每个节点在不同的 [虚拟] 机器上运行。假设它们的 IP 是192.168.1.1(主或辅助)、192.168.1.2(主或辅助)、192.168.1.3(仲裁器)。

从源代码来看,MMS 似乎获取了其正在运行的机器的主机名,如下所示:

platform.uname()[1]

对于我的 VPC EC2 实例,这将返回类似

ip-192-168-1-1

然后,MMS 尝试连接到此主机名,但无法解析。我宁愿只使用 IP 地址(因为它们始终是静态的),但似乎硬编码使用platform.uname()[1]inmmsAgent.py会阻止这一点。

那么,有什么优雅的办法可以解决这个问题?黑客/etc/hosts?我并不是专门为此设置 DNS 服务器。也许我只是误解了如何配置 MMS。

答案1

代理中的这一部分实际上是代理报告的名称,而不是它要连接的内容。至于它要连接的内容,一旦你运行它:

  • mms.10gen.com(端口 443 - SSL)- 它连接到此处以上传数据并读取其配置
  • 您从 MMS 页面配置的每个主机(+ 按钮)
  • 任何自动发现的主机(例如,如果您添加 mongos)

它将根据您单击添加按钮时输入到 MMS 的主机名连接到主机,或者使用它自动发现的主机名。

注意:您可以将 IP 地址添加到 MMS 配置中,而不是主机名,代理会很好地接收该地址,然后您可以添加别名以提高网站的可读性

因为我为 10gen 工作,所以如果您愿意,可以单独将组名发送给我,我可以查看您的 MMS 组。如果不行,我建议您查看“代理日志”选项卡 - 假设代理可以连接到 mms.10gen.com,该选项卡将列出代理发现的错误。

答案2

我总是设置这样的主机条目:

1.2.3.4 host.domain.com host

正因为如此。据我所知,没有其他方法可以在主机本身上获取 FQDN。

相关内容