美文网首页
RabbitMQ单机多实例集群搭建

RabbitMQ单机多实例集群搭建

作者: aidenliu | 来源:发表于2021-01-05 17:47 被阅读0次
在单机环境下,配置RabbitMQ集群(以三个节点为例)
  • 清理单机版中历史数据
 rm -rf /var/lib/rabbitmq/mnesia
  • 分别启动三个RabbitMQ节点
RABBITMQ_NODE_PORT=5672 RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15672}]" RABBITMQ_NODENAME=rabbit rabbitmq-server -detached
RABBITMQ_NODE_PORT=5673 RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15673}]" RABBITMQ_NODENAME=rabbit2 rabbitmq-server -detached
RABBITMQ_NODE_PORT=5674 RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15674}]" RABBITMQ_NODENAME=rabbit3 rabbitmq-server -detached
注意事项

1、因为启用了Web管理插件,所有每个节点的Management也要指定不一样的监听端口,否则会因为端口冲突而节点启动失败。
2、如果不指定每个节点单独的插件监听节点,也可将插件先移除(2.7.0以前版本)或禁用(2.7.0及以后版本)。

  • 以rabbit为主节点,其它两个节点为从节点,在从节点中执行以下命令:
rabbitmqctl -n rabbit2 stop_app
rabbitmqctl -n rabbit2 reset
rabbitmqctl -n rabbit2 join_cluster rabbit@`hostname -s`
rabbitmqctl -n rabbit2 start_app

rabbitmqctl -n rabbit3 stop_app
rabbitmqctl -n rabbit3 reset
rabbitmqctl -n rabbit3 join_cluster rabbit@`hostname -s`
rabbitmqctl -n rabbit3 start_app

可用join_cluster参数--disc或--ram指定是磁盘节点还是内存节点,具体可查看join_cluster命令帮助。

  • 删除节点
rabbitmqctl forget_cluster_node rabbit3@`hostname -s`
  • 查看集群状态
rabbitmqctl -n rabbit cluster_status
  • 设置高可用集群
rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all"}'

相关文章

网友评论

      本文标题:RabbitMQ单机多实例集群搭建

      本文链接:https://www.haomeiwen.com/subject/wwxbbktx.html