RabbitMQ : क्लस्टर कॉन्फ़िगर करें2023/09/26 |
RabbitMQ क्लस्टर कॉन्फ़िगर करें।
यह इस उदाहरण पर 2 RabbitMQ सर्वर को कॉन्फ़िगर करना दिखाता है। |
|
[1] | |
[2] | नोड पर क्लस्टरिंग कॉन्फ़िगर करें। |
# सभी नोड्स पर एक ही कुकी डालें root@node02:~# ssh node01.srv.world 'cat /var/lib/rabbitmq/.erlang.cookie' > /var/lib/rabbitmq/.erlang.cookie root@node02:~# systemctl restart rabbitmq-server
# एप्लिकेशन बंद करें और रीसेट करें root@node02:~# rabbitmqctl stop_app Stopping rabbit application on node rabbit@node02 ... root@node02:~# rabbitmqctl reset Resetting node rabbit@node02 ... # क्लस्टर में शामिल हों # केवल होस्टनाम निर्दिष्ट करें, FQDN के साथ नहीं root@node02:~# rabbitmqctl join_cluster rabbit@node01 Clustering node rabbit@node02 with rabbit@node01 # आवेदन प्रारंभ करें root@node02:~# rabbitmqctl start_app Starting node rabbit@node02 ... completed with 3 plugins. # स्थिति दिखाओ root@node02:~# rabbitmqctl cluster_status Cluster status of node rabbit@node02 ... Basics Cluster name: rabbit@node02 Disk Nodes rabbit@node01 rabbit@node02 Running Nodes rabbit@node01 rabbit@node02 Versions rabbit@node01: RabbitMQ 3.9.13 on Erlang 24.2.1 rabbit@node02: RabbitMQ 3.9.13 on Erlang 24.2.1 Maintenance status Node: rabbit@node01, status: not under maintenance Node: rabbit@node02, status: not under maintenance Alarms (none) Network Partitions (none) Listeners Node: rabbit@node01, interface: [::], port: 25672, protocol: clustering, purpose: inter-node and CLI tool communication Node: rabbit@node01, interface: [::], port: 5672, protocol: amqp, purpose: AMQP 0-9-1 and AMQP 1.0 Node: rabbit@node02, interface: [::], port: 25672, protocol: clustering, purpose: inter-node and CLI tool communication Node: rabbit@node02, interface: [::], port: 5672, protocol: amqp, purpose: AMQP 0-9-1 and AMQP 1.0 Feature flags Flag: implicit_default_bindings, state: enabled Flag: maintenance_mode_status, state: enabled Flag: quorum_queue, state: enabled Flag: stream_queue, state: enabled Flag: user_limits, state: enabled Flag: virtual_host_metadata, state: enabled |
[3] | क्यू सिंक सेटिंग कॉन्फ़िगर करें. यदि [rabbitmqadmin] कमांड नहीं मिलता है, तो इसे इंस्टॉल करें, यहां देखें। यह उदाहरण कॉन्फ़िगर करने के लिए दिखाता है कि कतार सभी नोड्स पर समन्वयित है। नोड्स के बीच सिंक करने के लिए कुछ तरीके हैं, विवरण नीचे आधिकारिक साइट पर देखें। ⇒ https://www.rabbitmq.com/ha.html |
# सिंक के लिए कतार जोड़ें [root@node01 ~]# rabbitmqadmin declare queue name=shared_queue queue declared # सिंक नीति सेट करें # rabbitmqctl set_policy [policy name(any name you like)] [Queue] [Mode] [root@node01 ~]# rabbitmqctl set_policy ha-policy "shared_queue" '{"ha-mode":"all"}' Setting policy "ha-policy" for pattern "shared_queue" to "{"ha-mode":"all"}" with priority "0" for vhost "/" ... # स्थिति दिखाओ [root@node01 ~]# rabbitmqadmin list queues name node policy slave_nodes state synchronised_slave_nodes +--------------+---------------+-----------+---------------+---------+--------------------------+ | name | node | policy | slave_nodes | state | synchronised_slave_nodes | +--------------+---------------+-----------+---------------+---------+--------------------------+ | shared_queue | rabbit@node01 | ha-policy | rabbit@node02 | running | rabbit@node02 | +--------------+---------------+-----------+---------------+---------+--------------------------+ |
[4] | सभी नोड्स पर प्रबंधन प्लगइन सक्षम करने के लिए, प्रत्येक नोड की स्थिति को निम्नानुसार देखना संभव है। |
![]() |
Sponsored Link |