RabbitMQ集群配置

一、 集群配置

系统环境: CentOS 7.4
集群规模: 三节点

1. 停止所有节点服务
rabbitmqctl stop
2. 所有节点配置相同的cookie文件
echo -n 'SUZEYEPYOBVGZTWPMMLS' > /var/lib/rabbitmq/.erlang.cookie
chown -R rabbitmq. /var/lib/rabbitmq/.erlang.cookie
chmod 600 /var/lib/rabbitmq/.erlang.cookie
3. 启动所有节点上的rabbitmq-server服务
systemctl start rabbitmq-server
4. 第一节点使用detached参数独立运行
rabbitmq-server -detached
5. 查看第一节点状态,获取节点名称 rabbit@xg-dc26-z093-openstack-h001
rabbitmqctl cluster_status
6. 停止第二、三个节点服务
rabbitmqctl stop_app
7. 将第二节点作为内存节点加入节点一
rabbitmqctl join_cluster --ram rabbit@xg-dc26-z093-openstack-h001
8. 将第三作为磁盘节点加入节点一
rabbitmqctl join_cluster rabbit@xg-dc26-z093-openstack-h001
9. 启动第二、第三节点服务
rabbitmqctl start_app
10. 设置集群镜像自动同步
rabbitmqctl set_policy ha-all "." '{"ha-mode":"all", "ha-sync-mode":"automatic"}'
11. 更改集群名
rabbitmqctl set_cluster_name OpenStack-RabbitMQ-Cluster-01
12. 查看集群状态
rabbitmqctl cluster_status
13. 所有节点上执行内存优化,默认是0.4(40%),以减少erlang的GC频率
rabbitmqctl set_vm_memory_high_watermark 0.6

二、 插件和用户配置

14. 所有节点(或者其中一个也可以)启用web管理插件
rabbitmq-plugins enable rabbitmq_management
15. 列出所有插件
rabbitmq-plugins list
16. 删除guest用户(做完集群后在其中任意一个节点运行即可,以下命令相同)
rabbitmqctl delete_user guest
17. 创建管理员账号
rabbitmqctl add_user admin k4vOu4WPmP3n0pJw
18. 赋予administrators角色
rabbitmqctl set_user_tags admin administrator
19. 赋权
rabbitmqctl set_permissions -p / admin '.*' '.*' '.*' 
20. 创建监控用户
rabbitmqctl add_user monitor f6FPTLBS5y2MtmwU
21. 赋予monitoring角色并赋权
rabbitmqctl set_user_tags monitor monitoring
rabbitmqctl set_permissions -p / monitor '.*' '.*' '.*' 
22. 创建项目专用用户
rabbitmqctl add_user openstack 52ufsiO24GVINUeZ
23. 赋予management角色并赋权
rabbitmqctl set_user_tags openstack management
rabbitmqctl set_permissions -p / openstack '.*' '.*' '.*' 
24. 查看用户权限
rabbitmqctl list_user_permissions openstack

三、服务设置

25. 最后设置rabbitmq服务开机自启,并重启服务。
systemctl enable rabbitmq-server
systemctl restart rabbitmq-server
订阅
提醒
0 评论
在线反馈
查看全部评论