rabbitmq3.7集群搭建实战
环境:
3台 centos7.4
rabbitmq3.7
erlang 22
1. 有几种方式安装,这里使用的yum安装(官方推荐)
2. 使用rabbitmq时需要安装erlang,在各个节点上使用vim添加两个repo文件
**/etc/yum.repos.d/rabbitmq_erlang.repo**
```
[rabbitmq_erlang]
name=rabbitmq_erlang
baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
[rabbitmq_erlang-source]
name=rabbitmq_erlang-source
baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/SRPMS
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
```
**/etc/yum.repos.d/rabbitmq.repo**
```
[bintray-rabbitmq-server]
name=bintray-rabbitmq-rpm
baseurl=https://dl.bintray.com/rabbitmq/rpm/rabbitmq-server/v3.7.x/el/7/
gpgcheck=0
repo_gpgcheck=0
enabled=1
```
3. 使用yum安装:yum install erlang rabbitmq-server -y
4. 设置自启动:systemctl enable rabbitmq-server
5. 每个节点都按2,3步骤安装完毕后开始搭建集群
6. 先在一个节点里启动rabbitmq服务器:systemctl start rabbitmq-server
7. 查看节点启动情况,active行为running则启动正常:systemctl status rabbitmq-server
8. 默认路径/var/lib/rabbitmq/.erlang.cookie,复制这个文件到其他节点相同的目录:scp /var/lib/rabbitmq/.erlang.cookie root@server2:/var/lib/rabbitmq/
复制的文件有权限问题,需要修改,如果不修改启动会报错:
[error] Error when reading /var/lib/rabbitmq/.erlang.cookie: eacces
修改权限:chown rabbitmq:rabbitmq /var/lib/rabbitmq/.erlang.cookie
9. 逐个节点启动rabbitmq服务器:ssh root@server2 "systemctl start rabbitmq-server"
10. 集群配置:需要使用域名,修改/etc/hosts和/etc/hostname,把各个节点的域名,ip添加好
11. 选择server1作为主节点,不需要操作,进入其他节点,执行关闭app:rabbitmqctl stop_app,然后执行加入集群:rabbitmqctl join_cluster rabbit@server1 server1根据自己取的名字更改,rabbit为固定用户名称
12. 所有节点都执行完毕后,进入主节点,使用rabbitmqctl cluster_status查看集群状况,把各个节点都列出来即为成功。
13. 移除节点:在某个节点里使用rabbitmqctl reset即可移除