Ich versuche, den MongoDB-Überwachungsdienst von 10gen dazu zu bringen, mein 3-Knoten-Replikatset zu überwachen. Der Replikatsatz, der in einer AWS VPC ausgeführt wird. Jeder Knoten wird auf einer anderen [virtuellen] Maschine ausgeführt. Angenommen, ihre IPs sind 192.168.1.1
(primär oder sekundär), 192.168.1.2
(primär oder sekundär), 192.168.1.3
(Arbiter).
Bei einem kurzen Blick auf die Quelle scheint MMS den Hostnamen des Computers zu erhalten, auf dem es ausgeführt wird:
platform.uname()[1]
Für meine VPC EC2-Instanz gibt dies ungefähr so zurück
ip-192-168-1-1
MMS versucht dann, eine Verbindung zu diesem Hostnamen herzustellen, der nicht aufgelöst wird. Ich würde lieber nur IP-Adressen verwenden (da diese immer statisch sind), aber es scheint, dass die fest codierte Verwendung von platform.uname()[1]
in dies mmsAgent.py
ausschließt.
Was ist ein eleganter Ausweg? Hack /etc/hosts
? Ich richte nicht nur dafür einen DNS-Server ein. Vielleicht verstehe ich nur falsch, wie man MMS konfiguriert.
quelle
Ich habe immer einen Host-Eintrag wie folgt festgelegt:
Genau dafür. Soweit ich weiß, gibt es keine andere Möglichkeit, den vollqualifizierten Domänennamen auf dem Host selbst abzurufen.
quelle