rabbitmq集群节点加入与删除

1.rabbitmq集群增加节点

新配置一个centos7节点,关闭防火墙和selinux

安装erlang和rabbitmq

参考:rabbitmq单节点部署_Apex Predator的博客-CSDN博客

安装完成后,先不要启动

修改主机hostname

vi /etc/hostname

rabbitmq04.localdomain

配置主机hosts文件,在末尾增加以下内容

vi /etc/hosts

10.1.60.112 rabbitmq03
10.1.60.114 rabbitmq01
10.1.60.115 rabbitmq02
10.1.60.80 rabbitmq04

将hosts文件拷贝到其它集群节点上

scp /etc/hosts [email protected]:/etc/hosts

scp /etc/hosts [email protected]:/etc/hosts

scp /etc/hosts [email protected]:/etc/hosts

重新启动network服务

systemctl restart network

拷贝任意一个集群节点的cookie文件到rabbitmq04节点上

scp  /var/lib/rabbitmq/.erlang.cookie root@rabbitmq04:/var/lib/rabbitmq/.erlang.cookie

启动rabbitmq服务

systemctl start rabbitmq-server

systemctl enable rabbitmq-server

启动rabbitmq web服务

rabbitmq-plugins enable rabbitmq_management

将rabbitmq04节点加入集群

rabbitmqctl stop_app  #停止rabbitmq应用

rabbitmqctl join_cluster rabbit@rabbitmq01  #加入集群

rabbitmqctl start_app  #启动rabbitmq应用

rabbitmq集群节点加入与删除_第1张图片

2.删除集群节点(例如rabbitmq04节点)

rabbitmq集群节点加入与删除_第2张图片 

在rabbitmq04节点执行以下命令

rabbitmqctl stop_app

在其它任意节点执行删除命令

rabbitmqctl forget_cluster_node rabbit@rabbitmq04

rabbitmq集群节点加入与删除_第3张图片

rabbitmq集群节点加入与删除_第4张图片

 在rabbitmq04节点执行以下命令

rabbitmqctl reset  #清除该节点的所有状态信息,包括队列和交换机等对象,必须得执行此命令不然节点起不来

rabbitmqctl start_app

执行 rabbitmqctl reset 命令可以清除 RabbitMQ 节点的所有状态信息,包括队列和交换机等对象。这意味着,如果你想要完全从 RabbitMQ 集群中删除一个节点,并且不再使用该节点上的任何对象,那么执行 rabbitmqctl reset 是一个好的选择

 但是,如果你不想清除该节点的状态信息,或者你想在以后将该节点重新加入集群,那么你可以跳过 rabbitmqctl reset 步骤

请注意,如果你在节点上执行 rabbitmqctl stop_app 命令,该节点将停止 RabbitMQ 应用程序,但该节点仍将保留其状态信息。因此,如果你想要完全删除该节点,你需要执行 rabbitmqctl reset 命令

你可能感兴趣的:(rabbitmq,java-rabbitmq,rabbitmq,java)