MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Remote-Verbindung zur MongoDB-HTTP-Schnittstelle auf dem EC2-Server

Ich hatte ein ähnliches Problem beim Versuch, remote auf die Mongo-Shell zuzugreifen, und mehrere dieser Antworten halfen bei Teilen der Lösung. Zusammenfassend:

  • Öffentliche IP/DNS :Wählen Sie Ihre Instance in der EC2-Verwaltungskonsole aus und stellen Sie sicher, dass sie über eine öffentliche IP oder ein öffentliches DNS verfügt. AWS verschiebt mehr der Standardeinstellungen in eine Virtual Private Cloud (VPC), und es ist möglich, in einer nur mit einer privaten IP-Adresse (innerhalb der VPC) zu starten. Wenn Sie kein öffentliches DNS oder keine öffentliche IP haben, müssen Sie eine elastische IP zuweisen.

  • Ports der Sicherheitsgruppe :Sehen Sie sich erneut die Instanzdetails in der EC2-Konsole an, suchen Sie die Sicherheitsgruppen und wählen Sie „Regeln anzeigen“. Angenommen, Sie verwenden standardmäßige Mongo-Ports, sollten Sie 27017 haben und 28017 offen für TCP ab 0.0.0.0/0 oder (sicherer) von Ihrer IP-Adresse. Wenn nicht, wählen Sie eine Sicherheitsgruppe für Ihre Instanz aus und gehen Sie in der Konsole zu Inbound> Edit> Add Rule> Custom TCP Rule , Port Range: 27017 , und eine entsprechende IP-Source . Fügen Sie für die HTTP-Schnittstelle eine weitere Regel für Port Range: 28017 hinzu .

  • /etc/mongod.conf :

    • Entkommentieren Sie port=27017 um sicherzustellen, dass Sie den Standardport haben (ich glaube nicht, dass das wirklich notwendig ist, aber es hat mir ein besseres Gefühl gegeben und es ist gut zu wissen, wo man den Standardport ändern kann ...)
    • Kommentieren Sie bind_ip=127.0.0.1 aus um externe Schnittstellen (z. B. Remote-Verbindungen) abzuhören
    • Entkommentieren Sie httpinterface=true wenn Sie die http-Schnittstelle verwenden möchten
  • Benutzer erstellen :Sie müssen einen Administrator und/oder Benutzer erstellen, um remote auf die Datenbank zuzugreifen.