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之前和之后的状态对比


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


    image.png

你可能感兴趣的:(Rabbitmq集群部署)