rabbitmq-server startet nicht, nachdem sich der Hostname zum ersten Mal geändert hat
Bin ich mit django-celery für meinen django-Projekt. Letzten Tag habe ich geändert mein computer der hostname (ich verwende Ubuntu 12.04, bearbeitet die Datei '/etc/hostname'), und nach dem nächsten Neustart django-celery scheiterte mit Fehler
Consumer: Connection Error: [Errno 111] Connection refused. Trying again in 4 seconds...
Nach einigen Recherchen auf diese Fehler, die ich finden konnte, dass, die änderung meiner host-name, der diesen Fehler verursacht hat aus hier. Meine rabbitmq startup log zeigt
file: /var/log/rabbitmq/startup_log
Activating RabbitMQ plugins ...
********************************************************************************
********************************************************************************
0 plugins activated:
ERROR: epmd error for host "jinesh": nxdomain (non-existing domain)
Meine startup_err die Datei leer ist.
wenn ich
root@jinesh:/home/jinesh# rabbitmqctl list_users
Listing users ...
Error: unable to connect to node rabbit@jinesh: nodedown
DIAGNOSTICS
===========
nodes in question: [rabbit@jinesh]
hosts, their running nodes and ports:
- unable to connect to epmd on jinesh: nxdomain
current node details:
- node name: rabbitmqctl4956@jinesh
- home dir: /var/lib/rabbitmq
- cookie hash: RGhmB2JR1LbZ57j7xWWTxg==
Ich hoffe, dass die änderung der Knotenname kann dieses Problem lösen. Aber ich konnte nicht einen Weg gefunden, dies zu tun. Jemand ne Idee, wie dieses Problem zu lösen?
update
beim ändern des Hostnamen ein, den Sie ändern müssen, sowohl /etc/hostname
und /etc/hosts
- Dateien.
Habe ich neu installiert rabbitmq und hat dieses Problem gelöst, Wird diese Frage beantworten.
InformationsquelleAutor der Frage Jinesh | 2013-02-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Entfernen Sie die alte installation von RabbitMQ um dieses problem zu beheben. Hier sind die Schritte, um neu zu installieren RabbitMQ. Diese Befehle sind als root-Benutzer ausgeführt:
Stop RabbitMQ:
rabbitmqctl stop
Ändern
/etc/hosts
Ändern
/etc/hostname
Deinstallieren von alten RabbitMQ:
dpkg -P rabbitmq-server
Entfernen RabbitMQ-Datenbank:
rm -rf /var/lib/rabbitmq
Finden erlang - Prozess, der ausgeführt wird, Kaninchen:
ps ax | grep rabbit
Töten die aufgeführten Prozess
Neu Installieren RabbitMQ:
apt-get install rabbitmq-server
Schrieb ich über diese Schritte auf mein blog.
REVISION
Zog ich mein blog auf eine neue website.
InformationsquelleAutor der Antwort Richard H Fung
Dank an Richard H Fung.
Seine Schritte hat mir geholfen, um dieses Problem zu lösen.
Als ich öffnete meine
/etc/hosts
Datei habe ich gefunden, dassIP
zugeordnet, mein Rechnername ist anders als die tatsächlicheip(192.168.1.200 [static])
.so, ich habe gerade IP-Adresse zu
192.168.1.200
in meinem/etc/hosts
Datei und es hat funktioniert.InformationsquelleAutor der Antwort Kishor Pawar
Richard s Antwort ist gut, aber verlieren Sie möglicherweise einige Informationen in der rabbitmq-Warteschlangen. Im folgenden ist ein möglicher Weg, um die Erhaltung der früheren setup von rabbitmq mit dem neuen host-Namen.
Eine Kurze Antwort:
Wenn Sie möchten, um den neuen host-Namen ändern, dann erstellen Sie ein
rabbitmq-env.conf
Dateien in/etc/rabbitmq
der auf den alten host Namen und alle sollte gut sein. Das folgende ist, was sollte in derrabbitmq-env.conf
Datei:Nach dem hinzufügen der config-Datei, starten Sie den rabbitmq-server, dann sollten Sie gut sein. (z.B.
service rabbitmq-server restart
(vielleicht einensudo
mit ubuntu))Weitere details Lesen Sie aus dem rabbitmq-website: https://www.rabbitmq.com/man/rabbitmq-env.conf.5.man.html
Mehr Details Über die Antwort:
Ich hatte ein ähnliches hostname Probleme mit CentOS... Das root-Problem wurde bei Kaninchen installiert, es verweist auf den aktuellen Hostnamen zum Zeitpunkt der Installation. Da dies ein rabbitmq Sache, die Lösung sollte auch für andere linux-Geschmacksrichtungen. Wenn Sie möchten, um die vollständige Antwort können Sie es sehen: rabbtimqadmin - Konnte keine Verbindung herstellen: [Errno -2] Name oder Dienst nicht bekannt
InformationsquelleAutor der Antwort James Oravec
Könnte man dieses problem lösen, indem Sie entweder das löschen der erlang-mnesia-Datenbank im Zusammenhang mit rabbitmq oder installieren rabbitmq.
Bekam ich Hinweis für die erste Lösung von rabbitmq-mailing-Liste. Auszug aus der Antwort
The Erlang Mnesia database is host specific (because it is a distributed DB). The simplest way to get you fixed is to clear out the database dir.
Die zweite Methode ist der einfachste Weg (nicht empfohlen obwohl).
Deinstallieren tun
Finden Sie diese linkwenn Sie wissen möchten, mehr über die Installation/das entfernen von debian-Paketen.
InformationsquelleAutor der Antwort Jinesh
Unter Windows, das Problem, das ich konfrontiert war, war durch die McAfee-firewall. Der genaue Fehler war epmd Fehler bei host "": - Adresse (keine Verbindung zu host/port)
Begann es zu arbeiten, sobald ich die firewall deaktiviert
InformationsquelleAutor der Antwort Gautam
Entfernen RabbitMQ-Datenbank:
rm -rf /var/lib/rabbitmq/*
Diese Aktion löst das problem. Ich glaube irgendwo in Deponien gespeichert wird ein Datensatz mit der Korrespondenz von Knoten host-Namen und IP-Adressen. Diese Tatsache bewirkt, dass Widerspruch, wenn einige hosts unerwartet geändert.
InformationsquelleAutor der Antwort I159
In meinem Fall hatte ich nicht einen folgenden Eintrag in
/etc/hosts
:wo
<hostname>
ist der hostname von meinem Rechner (wie derhostname
- Befehl). Nach dem hinzufügen dieser Zeile, RabbitMQ erfolgreich gestartet. Ich habe keine früheren Installationen von RabbitMQ.InformationsquelleAutor der Antwort Adam Michalik
War meine Lösung zu prüfen und korrigieren Sie die
$HOSTNAME
und/etc/hostname
. Es stellte sich heraus, dass mein router war ein wenig verwirrt und gab mir einen falschen hostname domain. Nach dem Neustart, ich riefexport HOSTNAME=the.correct.hostname
und mein Kaninchen läuft ohne Neustart des server os.InformationsquelleAutor der Antwort bert
Ich hatte das gleiche problem und tut die Schritte, Richard H Fung zur Verfügung gestellt hat mir nicht geholfen. Ich hatte auch nach der deinstallation dieser Pakete:
erlang erlang-epmd rabbitmq-server
Wenn du ein anderes OS als openSUSE verwenden Sie einfach Ihr Paket-manager, diese Pakete zu entfernen (z.B.
apt-get
)InformationsquelleAutor der Antwort Peter
Überprüfen qpidd daemon, es könnte auch schon in Beschlag Hafen, rabbitmq muss.
InformationsquelleAutor der Antwort ash zak