搭建RabbitMQ集群(通用)
RabbitMQ在Erlang node(节点)上
Erlang天生具有集群特性,非常好搭建集群,每一个节点(node)上具有一个叫erlang.Cookie的东西,也是一个标识符,可以互认。
1)、n台Linux的防火墙都是关闭的(推荐)
2)、erlang节点名称:【host映射】方便机器之间的互访.....
etc -> hosts 192.168.23.141 rabbitmq1
192.168.23.144 rabbitmq2
3)、修改erlang cookie文件,都统一成一个key【每个erlang程序都有一个cookie文件】
root -> .erlang.cookie
*如配权限问题,执行命令 chmod 400 .erlang.cookie
常见集群命令:
1)、查询集群状态
rabbitmqctl cluster_status
2)、将节点加入集群
①先停止
rabbitmqctl stop_app
②加入
rabbitmqctl join_cluster rabbit@rabbitmq1 【磁盘】
③开启
rabbitmqctl start_app
3)、删除节点
rabbitmqctl forget_cluster_node rabbit@rabbitmq2
4)、创建ram集群【添加 --ram】
rabbitmqctl join_cluster --ram rabbit@rabbitmq1
5)、将disk【磁盘】节点转变为ram【内存】节点
①先停止
rabbitmqctl stop_app
②转变
rabbitmqctl change_cluster_node_type ram
③开启
rabbitmqctl start_app