Von meinem Desktop aus kann nicht auf MongoDB zugegriffen werden

Von meinem Desktop aus kann nicht auf MongoDB zugegriffen werden

Ich probiere die neue GUI von MongoDB namens Compass aus.

Mein MongoDB-Server befindet sich jedoch auf der virtuellen Azure-Maschine, die nur über eine private IP verfügt.

Auf alle Azure-Server in unserem virtuellen Subnetz kann über einen Server zugegriffen werden, der als Überwachungsserver bezeichnet wird. Dieser hat eine öffentliche IP-Adresse, auf der ein Haproxy installiert ist, und alle Anfragen werden entsprechend an die betreffenden Server weitergeleitet.

Wie greife ich also mit Compass von meinem Desktop (CentOS) auf MongoDB zu?

Ich habe die folgenden Änderungen an Haproxy vorgenommen und kann mit Compass immer noch nicht auf MongoDB zugreifen.

listen cc-mongo-1 <public ip of monitoring server>:27017
  mode tcp
  balance roundrobin
  server cc-mongo-1 <private ip of mongodb>:27017

Oder können wir es so machen, als ob ich es direkt auf dem Server installiert hätte und dann versuchen, die GUI vom lokalen Computer aus zu öffnen?

Antwort1

Wenn Ihr MongoDB ein Replikatsatz ist, funktioniert die Verbindung über einen Lastenausgleich nicht gut. Die meisten MongoDB-Clients stellen eine Verbindung her, laden die Topologie des Replikatsatzes herunter und versuchen dann, eine direkte Verbindung mit den Mitgliedern des Replikatsatzes herzustellen.

Wenn Sie einen SSH-Server auf dem Überwachungsserver haben (oder installieren können), verwenden Sie die SSH-Tunnelfunktion in Compass. Geben Sie einfach den Benutzernamen/das Passwort oder die Identitätsdatei ein, mit der Sie sich von außen mit dem Überwachungsserver verbinden, und Compass kümmert sich automatisch um die Tunnel.

verwandte Informationen