溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

CentOS7.X環(huán)境下基于docker安裝部署Rabbit

發(fā)布時間:2020-03-02 18:26:34 來源:網(wǎng)絡(luò) 閱讀:167 作者:liveyoufo 欄目:系統(tǒng)運維

1、IP地址規(guī)劃(將信息配置到/etc/hosts中)
主機名 IP地址
RabbitMQ01 192.168.8.131
RabbitMQ02 192.168.8.132
RabbitMQ03 192.168.8.133
RabbitMQ04 192.168.8.134
2、RabbitMQ集群安裝
(1)四個節(jié)點同時運行,下載RabbitMQ鏡像
[root@RabbitMQ01~]# docker pull rabbitmq:3-management
(2)四個節(jié)點分別運行,啟動RabbitMQ容器

[root@RabbitMQ01~]# docker run -d --restart=always --hostname rabbit01 --name rabbit-01 -p 25672:25672 -p 15672:15672 -p 5672:5672 -p 5671:5671 -p 4369:4369 --add-host rabbit02:192.168.8.132 --add-host rabbit03:192.168.8.133 --add-host rabbit04:192.168.8.134 -e RABBITMQ_ERLANG_COOKIE='rbmqcookie' rabbitmq:3-management
[root@RabbitMQ02~]# docker run -d --restart=always --hostname rabbit02 --name rabbit-02 -p 25672:25672 -p 15672:15672 -p 5672:5672 -p 5671:5671 -p 4369:4369 --add-host rabbit01:192.168.8.131 --add-host rabbit03:192.168.8.133 --add-host rabbit04:192.168.8.134 -e RABBITMQ_ERLANG_COOKIE='rbmqcookie' rabbitmq:3-management
[root@RabbitMQ03~]# docker run -d --restart=always --hostname rabbit03 --name rabbit-03 -p 25672:25672 -p 15672:15672 -p 5672:5672 -p 5671:5671 -p 4369:4369 --add-host rabbit01:192.168.8.131 --add-host rabbit02:192.168.8.132 --add-host rabbit04:192.168.8.134 -e RABBITMQ_ERLANG_COOKIE='rbmqcookie' rabbitmq:3-management
[root@RabbitMQ04~]# docker run -d --restart=always --hostname rabbit04 --name rabbit-04 -p 25672:25672 -p 15672:15672 -p 5672:5672 -p 5671:5671 -p 4369:4369 --add-host rabbit01:192.168.8.131 --add-host rabbit02:192.168.8.132 --add-host rabbit03:192.168.8.133 -e RABBITMQ_ERLANG_COOKIE='rbmqcookie' rabbitmq:3-management
(3)、將節(jié)點添加至集群服務中,我們將節(jié)點03設(shè)置為集群的master節(jié)點,其他為子節(jié)點,注意配置兩個節(jié)點為ram節(jié)點,另兩個為disc節(jié)點,執(zhí)行時注意命令的不同
節(jié)點01上執(zhí)行:

[root@RabbitMQ01~]# docker exec -it rabbit-01 bash
[rabbit@rabbit01]# rabbitmqctl stop_app
[rabbit@rabbit01]# rabbitmqctl reset
[rabbit@rabbit01]# rabbitmqctl join_cluster --ram rabbit@rabbit03
[rabbit@rabbit01]# rabbitmqctl start_app
[rabbit@rabbit01]# exit
節(jié)點02上執(zhí)行:

[root@RabbitMQ02~]# docker exec -it rabbit-02 bash
[rabbit@rabbit02]# rabbitmqctl stop_app
[rabbit@rabbit02]# rabbitmqctl reset
[rabbit@rabbit02]# rabbitmqctl join_cluster --ram rabbit@rabbit03
[rabbit@rabbit02]# rabbitmqctl start_app
[rabbit@rabbit02]# exit
節(jié)點04上執(zhí)行:

[root@RabbitMQ04~]# docker exec -it rabbit-01 bash
[rabbit@rabbit04]# rabbitmqctl stop_app
[rabbit@rabbit04]# rabbitmqctl reset
[rabbit@rabbit04]# rabbitmqctl join_cluster rabbit@rabbit03
[rabbit@rabbit04]# rabbitmqctl start_app
[rabbit@rabbit04]# exit
節(jié)點03上執(zhí)行:

[root@RabbitMQ03~]# docker exec -it rabbit-03 bash
[rabbit@rabbit03]# rabbitmqctl stop_app
[rabbit@rabbit03]# rabbitmqctl reset
[rabbit@rabbit03]# rabbitmqctl start_app
[rabbit@rabbit03]# exit
3、配置添加ha-mode鏡像
Name:HA
Pattern:.
Definition:ha-mode = all
CentOS7.X環(huán)境下基于docker安裝部署RabbitMQ集群

集群啟動后的訪問主界面:
CentOS7.X環(huán)境下基于docker安裝部署RabbitMQ集群

3、安裝配置nginx,以提供高可用
nginx的安裝,這里略過,直接進入配置
[root@nginx~]# cd /usr/local/nginx/conf
[root@nginx~conf]# vi nginx.conf
其他配置略過

stream{
upstream rabbitmq{
server 192.168.8.131:5672 max_fails=2 fail_timeout=5s weight=2;
server 192.168.8.132:5672 max_fails=2 fail_timeout=5s weight=2;
server 192.168.8.133:5672 max_fails=2 fail_timeout=5s weight=2;
server 192.168.8.134:5672 max_fails=2 fail_timeout=5s weight=2;
}
server{
listen 5678;
proxy_pass rabbitmq;
}
}
[root@nginx~conf]# vi rabbitmqstream.conf
upstream mqweb {
ip_hash;
server 192.168.8.131:15672;
server 192.168.8.132:15672;
server 192.168.8.133:15672;
server 192.168.8.134:15672;
}
server {
listen 80;
server_name localhost;

location / {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 100m;
client_body_buffer_size 256k;

proxy_connect_timeout 60;
proxy_send_timeout 60;
proxy_read_timeout 60;

proxy_buffer_size 256k;
proxy_buffers 8 256k;
proxy_busy_buffers_size 512k;
proxy_temp_file_write_size 512k;
}
}
? 重新啟動nginx容器

[root@nginx~conf]# /usr/local/nginx/sbin/nginx -s reload
[root@nginx~conf]# /usr/local/nginx/sbin/nginx -s stop
[root@nginx~conf]# /usr/local/nginx/sbin/nginx

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI