Rabbitmq集群部署

集群部署步骤

0 前期准备

集群中的所有节点安装部署好了rabbitmq,并且所有的配置保持一致,例如配置 /etc/rabbitmq/rabbitmq.config

1 集群部署

例如要对 node1 / node2 / node3 三个rabbitmq服务器搭建集群,其中node1为首节点

  • 在三个节点服务器上的 /etc/hosts 文件的内容进行添加如下内容,将三个节点的服务器IP,创建名称
192.168.1.1 node1
192.168.1.2 node2
192.168.1.3 node3
  • node1节点的rabbitmq进程可以拉起来 rabbitmq-server -detached,还有rabbitmq-management,但是其他节点就不要拉起来了,然后将node1的文件/var/lib/rabbitmq/.erlang.cookie内容复制替换到node2、node3的该文件中,只有保证每个节点的该文件内容一致,才能保证集群之间的认证是正常,可以互相联通
    • 由于文件 /var/lib/rabbitmq/.erlang.cookie的属性默认是 400 ,所以在修改文件内容时,需要执行如下命令:
chmod 777 /var/lib/rabbitmq/.erlang.cookie
vi /var/lib/rabbitmq/.erlang.cookie  # 修改内容
chmod 400 /var/lib/rabbitmq/.erlang.cookie
chown rabbitmq:rabbitmq /var/lib/rabbitmq/.erlang.cookie
  • 除了node1以外的所有节点,拉起rabbitmq进程,命令如下;
rabbitmq-server -detached

# node2作为disk节点
rabbitmqctl stop_app
rabbitmqctl join_cluster rabbitmq@node1
rabbitmqctl start_app

# node3作为ram节点
rabbitmqctl stop_app
rabbitmqctl join_cluster --ram rabbitmq@node1
rabbitmqctl start_app

2 检查集群

集群部署注意事项

  • 启动app之前和之后的状态对比


    image.png
  • 在部署集群时,如果集群中的首节点存在的用户,在之后的节点上没有该用户时,集群是不会存在该用户的,需要重新创建,新创建的用户在集群所有节点上都可以查看到
  • 集群的所有节点需要都打开 rabbitmq_management,才可以在web上查看到节点的状态信息。并且查看的地址,必须是集群的首节点,例如集群的首节点是node1,然后node2加入了node1,那么两节点都打开了 rabbitmq_management 之后,需要通过 node1节点来查看集群的状态


    image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 整体架构 部署步骤 基于 Docker 基本概念内存节点只保存状态到内存,例外情况是:持久的 queue 的内容将...
    mvictor阅读 14,360评论 5 30
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,323评论 19 139
  • RabbitMQ 原理介绍及安装部署 标签:RabbitMQ 安装 简介 RabbitMQ 是一个用 Erlang...
    神仙CGod阅读 12,728评论 0 60
  • 关于消息队列,从前年开始断断续续看了些资料,想写很久了,但一直没腾出空,近来分别碰到几个朋友聊这块的技术选型,是时...
    预流阅读 585,824评论 51 787
  • rabbitmq有3种模式,集群模式2种• 单机模式:即单机情况不做集群,就单独运行一个rabbitmq而已。...
    嗷大彬彬阅读 9,491评论 1 9