這裡展示的是單機集群的部署,如果機器足夠多,可以選擇多機集群部署,詳細可以參考《rabbitmq集群搭建(多機)》。
1.安裝單機版的 教程:《linux下安裝rabbitmq》
2.要搭建集群,先將之前單機版中歷史記錄乾掉,刪除rabbitmq/var/lib/rabbitmq/mnesia下的所有內容。
3.啟動3個例項
#因為我配置了web管理外掛程式,所以還要指定其web外掛程式占用的埠號,如果不指定,將不能啟動多個節點,因為埠號被占用
rabbitmq_node_port=5672 rabbitmq_server_start_args="-rabbitmq_management listener " rabbitmq_nodename=rabbit rabbitmq-server -detached
rabbitmq_node_port=5673 rabbitmq_server_start_args="-rabbitmq_management listener " rabbitmq_nodename=rabbit2 rabbitmq-server -detached
rabbitmq_node_port=5674 rabbitmq_server_start_args="-rabbitmq_management listener " rabbitmq_nodename=rabbit3 rabbitmq-server -detached
4.在瀏覽器訪問每乙個rabbitmq例項,是夠可以顯示登入頁面,如果顯示成功,繼續往下進行
5.我們以rabbit為主節點,剩下兩個為從節點(在從節點執行以下命令,主節點不用動,-n指定具體那個節點)
[root@localhost mnesia]#
[root@localhost mnesia]#
rabbitmqctl -n rabbit2 reset
resetting node rabbit2@localhost ...
[root@localhost mnesia]#
rabbitmqctl -n rabbit2 join_cluster rabbit@`hostname -s`
clustering node rabbit2@localhost with rabbit@localhost ...
[root@localhost mnesia]#
starting node rabbit2@localhost ...
[root@localhost mnesia]#
[root@localhost mnesia]#
rabbitmqctl -n rabbit3 reset
resetting node rabbit3@localhost ...
[root@localhost mnesia]#
rabbitmqctl -n rabbit3 join_cluster rabbit@`hostname -s`
clustering node rabbit3@localhost with rabbit@localhost ...
[root@localhost mnesia]#
starting node rabbit3@localhost ...
這是檢視每乙個rabbitmq的節點,可以看到以下場景,證明多例項啟動成功
6.如果想加入乙個新的節點到集群,只需要執行第五步相同的命令即可!
刪除節點:rabbitmqctl forget_cluster_node rabbit3@hostname
7.使用rabbitmqctl -n rabbit cluster_status檢視集群資訊
[root@localhost mnesia]#
rabbitmqctl -n rabbit cluster_status
cluster status of node rabbit@localhost ...},,
,,,,
]}]搭建過程中,可能會出現如下錯誤,我感覺只要是出現帶mnesia關鍵字的,把rabbitmq/var/lib/rabbitmq/mnesia下所有內容刪掉(rm -rf *)。
clustering node hare@localhost with rabbit@localhost ...
error: mnesia_not_running
8.測試,生產者使用5672生產訊息,消費者使用5673獲取訊息,如果能獲取到表示集群搭建成功
producer類:
package com.rabbitmq.test.t_helloworld;
import com.rabbitmq.client.channel;
import com.rabbitmq.client.connection;
import com.rabbitmq.client.connectionfactory;
import com.rabbitmq.test.util.connectionutil;
/** * helloworld
* @author lenovo
* */
public class producer
}
consumer類:
package com.rabbitmq.test.t_helloworld;
import com.rabbitmq.client.channel;
import com.rabbitmq.client.connection;
import com.rabbitmq.client.connectionfactory;
import com.rabbitmq.client.queueingconsumer;
import com.rabbitmq.test.util.connectionutil;
public class consumer }}
mysql單機多例項 MYSQL單機多例項
一 建立安裝目錄 mkdir usr local mysql s 5.6.32 mkdir usr local mysql m 5.6.32 wget tar zxv f mysql 5.6.32.tar.gz 二 編譯命令 1 主編引數 cmake dcmake install prefix da...
RabbitMQ 單機集群安裝(十一)
一 環境說明 筆記本 8g 500g 安裝ubuntu 20.04.3 lts,學習rabbitmq集群安裝。rabbitmq 集群 rabbitmq這款訊息佇列中介軟體產品本身是基於erlang編寫,erlang語言天生具備分布式特性 通過同步erlang集群各節點的magic cookie來實現...
MySQL 單機多例項
關於mysql 單機多例項的優缺點等介紹具體可以知乎一下或參考mysql單機多例項配置 實現單機多例項可以通過docker輕鬆做到,這裡主要是分享使用自帶工具mysqld multi的過程及兩個坑點 系統 ubuntu 16.04lts xenial 版本 percorna server 5.7.2...