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 root@10.1.60.112:/etc/hosts
scp /etc/hosts root@10.1.60.114:/etc/hosts
scp /etc/hosts root@10.1.60.115:/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应用
2.删除集群节点(例如rabbitmq04节点)
在rabbitmq04节点执行以下命令
rabbitmqctl stop_app
在其它任意节点执行删除命令
rabbitmqctl forget_cluster_node rabbit@rabbitmq04
在rabbitmq04节点执行以下命令
rabbitmqctl reset #清除该节点的所有状态信息,包括队列和交换机等对象,必须得执行此命令不然节点起不来
rabbitmqctl start_app
执行 rabbitmqctl reset 命令可以清除 RabbitMQ 节点的所有状态信息,包括队列和交换机等对象。这意味着,如果你想要完全从 RabbitMQ 集群中删除一个节点,并且不再使用该节点上的任何对象,那么执行 rabbitmqctl reset 是一个好的选择
但是,如果你不想清除该节点的状态信息,或者你想在以后将该节点重新加入集群,那么你可以跳过 rabbitmqctl reset 步骤
请注意,如果你在节点上执行 rabbitmqctl stop_app 命令,该节点将停止 RabbitMQ 应用程序,但该节点仍将保留其状态信息。因此,如果你想要完全删除该节点,你需要执行 rabbitmqctl reset 命令
好文推荐
发表评论