Distribué RabbitMQ Nœuds de ne pas reconnaître les uns les autres

Je suis en train de travailler sur un RabbitMQ distribué POC et je suis coincé à l'bases de la mise en cluster de nœuds.
Je suis en train de suivre le lapin tutoriel sur le clustering donc, c'est ma référence.
Après l'installation d'erlang (R14B04) et le lapin (2.8.2-1) j'ai copié le .erlang.cookie fichier contenu d'un nœud à l'autre des deux autres.
Je n'étais pas sûr de savoir comment obtenir erlang pour avis de ce changement, j'ai dû redémarrer les machines elles-mêmes (assez de force brute, mais je ne sais pas erlang).
En outre, j'ai ouvert dans iptables 4369 et 5 ports supplémentaires pour les communications et placé sous
/usr/lib64/erlang/bin/sys.config
la configuration suivante:

{kernel,[{inet_dist_listen_min, XX00},{inet_dist_listen_max,XX05}]}]

Puis un autre redémarrage (stupide je sais) pour vérifier erlang les prend en considération, mais encore quand je le lance:

rabbitmqctl cluster rabbit@HostName1

J'obtiens:

Clustering node rabbit@HostName2 with [rabbit@HostName1] ...
Error: {no_running_cluster_nodes,[rabbit@HostName1],
                                 [rabbit@HostName1]}

Il y a une chance de ma battre avec l'erlang.cookie ou avec les ports n'ont pas réussi, mais je ne sais pas comment le vérifier. J'ai essayé de taper erl dans le cmd et ensuite erl_epmd:names() ou d'autres commandes pour obtenir de plus amples renseignements, mais je suis probablement loin en erlang terre.

Serait vraiment reconnaissant de toute aide

Mise à jour:
J'ai essayé une requête ping à deux erlang nœuds manuellement et a obtenu pang dos.
Je n'ai suivantes:
Connecté à deux nœuds, arrêté rabbitmq (n'étais pas sûr si besoin, mais pour être sûr), a commencé à erlang comme (erl -sname dilbert et erl -sname dilbert2) lorsque l'erlang ligne de commande a commencé, j'ai couru node(). sur chacun d'eux et a obtenu dilbert@HostName1 et dilbert2@HostName2 respectivement. J'ai ensuite essayé d'exécuter net_adm:ping('dilbert'). et net_adm:ping('dilbert@HostName1'). avec la citation simple et sans eux, à partir de deux nœuds (a changé de nom bien sûr) et j'ai pris tous les 8 cas pang.
Quand j'ai couru nodes(). sur une des machines que je suis de retour un tableau vide.
J'ai aussi essayé d'autoriser tout le trafic dans le pare-feu (script) et puis essayez d'exécuter les commandes ci-dessus (ne vous inquiétez pas, ils sont de retour sur maintenant) et toujours eu de retour pang.
Update2:
Pour une raison quelconque, j'ai eu cookies incompatibilité dont j'avais besoin pour résoudre (merci @kjw0188 pour la suggestion [j'ai couru erlang:get_cookie(). dans l'erlang ligne de commande]).
Cela n'aide pas et je devais arrêter de iptables complètement (je ne sais pas pourquoi, mais je le saurai bientôt) et de charger de l'erlang nœud avec -name dilbert@my-ip parce que mon rackspace les serveurs ont pas de dns-nom. Cette finalement m'a permis de faire un pong et de voir les nœuds de voir les uns les autres (nodes(). retourne un non-vide après le ping).
Le problème que je me pose maintenant est de savoir comment charger RabbitMQ à utiliser-nom à la place de sname lors du démarrage d'erlang.

A vous de voir si vous pouvez commencer à erl nœuds sur chaque machine, et voir si elles peuvent ping les uns des autres?
N'ai pas encore essayé (erlang noob). Savez-vous comment je peux vérifier que le nœud courant n'est pas en cours d'exécution? Je pense que RabbitMQ commence un nœud lorsqu'il charge donc je vais arrêter, mais je veux vérifier aucun nœud n'est en cours d'exécution avant j'ai essayer votre suggestion. Merci
Vous ne devriez pas avoir besoin de prendre lapin vers le bas, mais si vous le souhaitez, vous pouvez essayez d'arrêter le service sudo /etc/init.d/rabbitmq-server stop
Toujours pas de chance, consultez ma mise à jour ci-dessus. Merci
Faire les cookies match? Essayez erlang:get_cookie(). sur dilbert et dogbert ou de la définition du cookie manuellement avec le -setcookie option de ligne de commande. Si ils ne peuvent toujours pas de ping les uns des autres, il semble que erlang ne pouvez pas trouver les autres nœuds pour une raison quelconque. Sont les hôtes accessibles par la normale ping? Utiliser le nom d'hôte pour les machines pour le ping, pas l'adresse IP.

OriginalL'auteur Ittai | 2012-06-14