三台服务器都搭建好RabbitMQ(1-8),配置好主机名,映射。
1、环境搭建
由于RabbitMQ是基于Erlang语言开发, 所以在安装RabbitMQ之前, 需要安装Erlang
rabbitmq需要socat依赖, 所以需要先安装socat
安装socat
yum install -y socat
2、准备RabbitMQ和Erlang rpm包 并上传至/usr/local下
下载地址
https://packagecloud.io/rabbitmq/erlang
RabbitMQ和Erlang版本要一致,不清楚可以看下
https://www.rabbitmq.com/which-erlang.html
我的是
centos7 el7
rabbitmq-server-3.8.8-1.el7.noarch.rpm
erlang-21.3.8.14-1.el7.x86_64.rpm
3、安装RabbitMQ和Erlang
[root@slave1 local]# rpm -ivh erlang-21.3.8.14-1.el7.x86_64.rpm
warning: erlang-21.3.8.14-1.el7.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID 6026dfca: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:erlang-21.3.8.14-1.el7 ################################# [100%]
[root@slave1 local]# rpm -ivh rabbitmq-server-3.8.8-1.el7.noarch.rpm
warning: rabbitmq-server-3.8.8-1.el7.noarch.rpm: Header V4 RSA/SHA256 Signature, key ID 6026dfca: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:rabbitmq-server-3.8.8-1.el7 ################################# [100%]
4、 添加开机启动
chkconfig rabbitmq-server on
5、添加web管理页面插件
rabbitmq-plugins enable rabbitmq_management
6、防火墙设置
# 查看防火墙状态
systemctl status firewalld
# 临时关闭防火墙(系统重启后仍会开启防火墙)
systemctl stop firewalld
# 永久关闭防火墙
systemctl disable firewalld
7、rabbitmq 服务启动
# 查看服务状态
/sbin/service rabbitmq-server status
# 启动服务
/sbin/service rabbitmq-server start
# 停止服务
/sbin/service rabbitmq-server stop
8、添加登陆用户
# 用户名密码分别为admin/admin,拥有所有权限
rabbitmqctl add_user admin admin
rabbitmqctl set_user_tags admin administrator
rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
# 查看用户列表
rabbitmqctl list_users
集群开始
# 三个节点使用相同的cookie,在node1上分别执行(该命令要输入node2、node3的用户密码):
scp /var/lib/rabbitmq/.erlang.cookie root@salve2:/var/lib/rabbitmq/.erlang.cookie
scp /var/lib/rabbitmq/.erlang.cookie root@salve3:/var/lib/rabbitmq/.erlang.cookie
# 将salve2加入到salve1,salve3加入到salve2,以构成三个节点的集群,操作如下:
# 在salve2上执行(stop会关闭erlang虚拟机,stop_app只关闭rabbitmq服务)
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster rabbit@salve1
rabbitmqctl start_app
# 在salve3上执行
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster rabbit@salve2
rabbitmqctl start_app
# 至此,三个节点的集群环境已搭建完毕
# 查看集群状态
rabbitmqctl cluster_status
测试安装
浏览器访问 服务器ip:15672