2017-07-25 6 views
1

Ich versuche, einen RabbitMQ-Cluster auf einem einzelnen PC einzurichten.
Wie richte ich einen RabbitMQ Cluster ein? Ähnlich wie bei localhost: 15672RabbitMQ: Wie man Cluster einrichtet?

+0

, was die Dinge haben Sie versucht? – KlwntSingh

+0

http://coding-insomnia.com/2013/02/23/clustering-rabbitmq-on-windows/ versuchte dies. –

Antwort

1

den Umfang meiner Antwort Um zu klären:

  • Mit „Single PC“, ich nehme an, Sie wollen alle Knoten auf dem Host-Betriebssystem laufen zu lassen, nicht in irgendeiner Art von Behälter oder VM .
  • Das Ausführen dieser RabbitMQ-Knoten als separate Windows-Dienste ist wahrscheinlich möglich, aber ich weiß nicht, wie ich Windows-Dienste einrichten soll, also werde ich das überspringen und nur über das manuelle Starten von RabbitMQ sprechen. Wie auch immer, das Ausführen mehrerer Knoten auf demselben Host ist nur für Entwicklungs- und Testzwecke relevant, daher glaube ich, dass das in Ordnung ist.

Ich bin kein Windows-Benutzer, daher sind die folgenden Beispiele nicht getestet und enthalten möglicherweise Fehler. Entschuldigung, wenn das nicht sofort funktioniert.

Schritt 1: Starten mehrerer Knoten auf einem einzigen Host

Um mehrere Knoten auf demselben Host zu starten, egal ob Sie planen, sie gruppieren oder nicht, werden Sie jeden Knoten geben müssen:

  • ein eindeutiger Name;
  • dedizierte TCP-Ports.

Um dies zu tun, müssen Sie mehrere environment variables setzen. Zum Beispiel können zwei Knoten starten:

Jedes Mal, wenn Sie wollen, werde rabbitmqctl verwenden Um einen der Knoten zu verwalten, müssen Sie seinen Namen angeben. Zum Beispiel gibt das Sie den Status des Knotens 2:

rabbitmqctl -n [email protected]%COMPUTERNAME% status 

Der Wert RABBITMQ_NODE_PORT ist der AMQP hört TCP-Port. In diesem Beispiel behält Knoten 1 den Standard-AMQP-Port 5672 und nachfolgende Knoten die folgenden Ports (5673 usw.). RabbitMQ berechnet automatisch andere Listening-Ports von dem AMQP-Ports:

  • Das Management UI auf RABBITMQ_NODE_PORT + 10000 (zum Beispiel 15673 für Knoten 2) hören. Also wäre die URL so etwas wie http://myhost:15673/.
  • Erlang-Verteilung wird auf RABBITMQ_NODE_PORT + 20000 (z. B. 25673 für Knoten 2) sein. Dieser Port wird von rabbitmqctl und für die Kommunikation zwischen Knoten verwendet, sobald er geclustert wurde.

Schritt 2: Clusterknoten

Nun, da Sie mehrere Knoten ausgeführt haben, können Sie rabbitmqctl wie gewohnt verwenden, um diese Knoten Cluster:

rabbitmqctl -n [email protected]%COMPUTERNAME% stop_app 
rabbitmqctl -n [email protected]%COMPUTERNAME% join_cluster [email protected]%COMPUTERNAME% 
rabbitmqctl -n [email protected]%COMPUTERNAME% start_app