在之前的文章中我已经介绍过使用源码来安装RabbitMQ(可参考文章 ),安装过程也比较繁琐,使用docker部署,方便快捷,本文将采用docker来部署步骤记录下来: 搭建环境: 操作系统:CentOS7.6 内存大小:8GB 硬盘:100G 1、IP地址规划(将信息配置到/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)四个节点同时运行,下载RabbitMQ镜像
[root@RabbitMQ01~]
(2)四个节点分别运行,启动RabbitMQ容器
[root@RabbitMQ01~]
[root@RabbitMQ02~]
[root@RabbitMQ03~]
[root@RabbitMQ04~]
(3)、将节点添加至集群服务中,我们将节点03设置为集群的master节点,其他为子节点,注意配置两个节点为ram节点,另两个为disc节点,执行时注意命令的不同 节点01上执行:
[root@RabbitMQ01~]
[rabbit@rabbit01]
[rabbit@rabbit01]
[rabbit@rabbit01]
[rabbit@rabbit01]
[rabbit@rabbit01]
节点02上执行:
[root@RabbitMQ02~]
[rabbit@rabbit02]
[rabbit@rabbit02]
[rabbit@rabbit02]
[rabbit@rabbit02]
[rabbit@rabbit02]
节点04上执行:
[root@RabbitMQ04~]
[rabbit@rabbit04]
[rabbit@rabbit04]
[rabbit@rabbit04]
[rabbit@rabbit04]
[rabbit@rabbit04]
节点03上执行:
[root@RabbitMQ03~]
[rabbit@rabbit03]
[rabbit@rabbit03]
[rabbit@rabbit03]
[rabbit@rabbit03]
3、配置添加ha-mode镜像 Name:HA Pattern:. Definition:ha-mode = all 集群启动后的访问主界面: 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]
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_pass http://rabbitmqstream/;
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]
[root@nginx~conf]
[root@nginx~conf]
|