RabbitMQ : Configure Cluster2025/10/10 |
|
Configure RabbitMQ Cluster. |
|
| [1] |
Install and start RabbitMQ Server on all Nodes, refer to here. |
| [2] | On all Nodes, Configure unique node-name. |
|
root@node01:~#
vi /etc/rabbitmq/rabbitmq-env.conf # line 5 : uncomment and set unique node-name NODENAME= rabbit01
root@node01:~#
root@node01:~# systemctl restart rabbitmq-server
rabbitmqctl eval "node()." rabbit01@node01 |
| [3] | Configure clustering on a Node. |
|
# put the same cookie on all nodes root@node02:~# ssh node01.srv.world 'cat /var/lib/rabbitmq/.erlang.cookie' > /var/lib/rabbitmq/.erlang.cookie root@node02:~# systemctl restart rabbitmq-server
# stop application and reset root@node02:~# rabbitmqctl stop_app Stopping rabbit application on node rabbit02@node02 ... root@node02:~# rabbitmqctl reset Resetting node rabbit02@node02 ... # join in cluster # specify only hostname, not with FQDN root@node02:~# rabbitmqctl join_cluster rabbit01@node01 # start application root@node02:~# rabbitmqctl start_app # show status root@node02:~# rabbitmqctl cluster_status Cluster status of node rabbit02@node02 ... Basics Cluster name: rabbit02@node02.srv.world Total CPU cores available cluster-wide: 4 Cluster Tags (none) Disk Nodes rabbit01@node01 rabbit02@node02 Running Nodes rabbit01@node01 rabbit02@node02 Versions rabbit02@node02: RabbitMQ 4.0.5 on Erlang 27.3.4.1 rabbit01@node01: RabbitMQ 4.0.5 on Erlang 27.3.4.1 CPU Cores Node: rabbit02@node02, available CPU cores: 2 Node: rabbit01@node01, available CPU cores: 2 Maintenance status Node: rabbit02@node02, status: not under maintenance Node: rabbit01@node01, status: not under maintenance Alarms (none) Network Partitions (none) Listeners Node: rabbit02@node02, interface: [::], port: 15672, protocol: http, purpose: HTTP API Node: rabbit02@node02, interface: [::], port: 25672, protocol: clustering, purpose: inter-node and CLI tool communication Node: rabbit02@node02, interface: [::], port: 5672, protocol: amqp, purpose: AMQP 0-9-1 and AMQP 1.0 Node: rabbit01@node01, interface: [::], port: 25672, protocol: clustering, purpose: inter-node and CLI tool communication Node: rabbit01@node01, interface: [::], port: 5672, protocol: amqp, purpose: AMQP 0-9-1 and AMQP 1.0 Feature flags Flag: classic_mirrored_queue_version, state: enabled Flag: classic_queue_type_delivery_support, state: enabled Flag: detailed_queues_endpoint, state: disabled Flag: direct_exchange_routing_v2, state: enabled Flag: drop_unroutable_metric, state: enabled ..... ..... |
| [4] | To Enable management Plugin on all Nodes, it's possible to see each Node's status like follows. |
|
| Sponsored Link |
|
|