Wie man mongod.conf bind_ip mit mehreren IP-Adressen setzt
Ich bin ein Neuling, der zum einrichten der server-Umgebung und mongoDB. Dies kann klingt wirklich etwas einfach, aber ich brauche wirklich Ihre Hilfe.
Ich versuche eine Verbindung zu meinem virtuellen Maschine, die läuft über die mongodb-Instanz auf dem lokalen Rechner, was ich glauben sollte ähnlich wie die Produktionsumgebung, bei der Ausführung auf einem separaten remote-server.
Die Umgebung ist wie folgt:
- Private IP-Adresse für die virtuelle Maschine: 192.168.184.155
- Öffentliche IP für den lokalen Rechner und der virtuellen Maschine: 96.88.169.145
Änderte ich die bind_ip in /etc/mongod.conf-Datei von
bind_ip = 127.0.0.1
zu
bind_ip = 127.0.0.1,192.168.184.155,96.88.169.145
Nachdem ich wieder den service mongod, weder die virtuelle Maschine noch die lokale Maschine zugreifen können, mongodb durch mongodb-Befehl und gibt mir die folgende Fehlermeldung.
MongoDB shell version: 3.0.1
connecting to: test
2015-03-17T16:02:22.705-0400 W NETWORK Failed to connect to 127.0.0.1:27017, reason: errno:111 Connection refused
2015-03-17T16:02:22.707-0400 E QUERY Error: couldn't connect to server 127.0.0.1:27017 (127.0.0.1), connection attempt failed
at connect (src/mongo/shell/mongo.js:179:14)
at (connect):1:6 at src/mongo/shell/mongo.js:179
exception: connect failed
Jedoch, wenn ich den
bind_ip = 192.168.184.155
und den Dienst neu starten, es funktioniert und ich kann auf mit mongo von meiner lokalen Maschine. Es scheint einfach nicht funktionieren mit mehreren ip-Adressen. Ich habe versucht zu tun, sich in der mongodb-Dokument, jedoch, Sie nicht zu erwähnen, dass bind_ip nimmt eine durch Kommas getrennte Liste, die wirklich verwirrt mich.
Vielen Dank für Eure Hilfe im Voraus.
InformationsquelleAutor der Frage yeelan | 2015-03-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wickeln Sie die Komma-getrennt-Ips mit Klammern arbeitet in mongo 3.2.7 für mich:
InformationsquelleAutor der Antwort Joe Cheng
Können Sie tun, indem:
Erinnern Sie sich nicht setzen Sie ein Leerzeichen nach dem Komma.
InformationsquelleAutor der Antwort pungoyal
Ich bin mit 3.6 auf SUSE 12.x und hatte eine Probleme mit durch Komma getrennte IP-Listen. Ich reparierte die Ausgabe von
bindIp: 0.0.0.0
InformationsquelleAutor der Antwort jprism
Danke für @wdberkeley und @anhlc brachte die Ahnung.
Ich schaute auf die log-Datei unter /var/log/mongodb/mongod.log. Es zeigt das Versagen Grund für das problem.
Also die mongo.conf-Datei ist empfindlich auf Leerzeichen, die ich da hinzufügen, und Sie sollten bemerkt haben. Auch so wie @anhlc darauf hingewiesen, 96.88.169.145 ist keine gültige IP-Adresse für die VM. So dass man auch einen Beitrag zu dem Fehler.
Großer Dank für beide Ihre Hilfe! Hoffe das kann helfen, wenn jemand zufällig in die gleiche problem.
InformationsquelleAutor der Antwort yeelan
In Mongo 3.*,
verwenden Sie eine Klammer, wie
InformationsquelleAutor der Antwort KyungHoon Kim
Fall in mongodb version 3.6 auf meine Ubuntu16.04 LTS ist, dass Sie nicht brauchen, um die IP-Adressen in den eckigen Klammern "[]". Löschen Sie das Leerzeichen nach dem Komma lösen der Verbindung fehlgeschlagen problem in der mongod-log (/var/log/mongodb/mongod.log)
Nach dem ändern der
bindIp: 127.0.0.1
zubindIp: 127.0.0.1,xxx.xxx.xxx.xxx
(beachten Sie kein Komma zwischen IPs)die host-IP ist hören als unten:InformationsquelleAutor der Antwort Bruce Yo
Habe ich erfolgreich Hinzugefügt, wird eine zweite ip auf meine version 3.2 service mit einem Komma, ohne Leerzeichen und einen FQDN
InformationsquelleAutor der Antwort Joshua Goldstein
Wenn alles, was Sie tun möchten, ist eine Verbindung zu diesem Computer über das Netzwerk Sie NICHT ändern muss
bind_ip
Wert.In Ihrem Fall müssen Sie befolgen Sie die folgenden Schritte aus.
Wenn Sie nicht sicher sind, wie zu allen dieser Schritte. Überprüfen Sie heraus einen blog-post, den ich geschrieben habe, geht mehr in die details, wie dies zu tun.
Blog-Post
Hoffe, das hilft.
InformationsquelleAutor der Antwort Rick