消息队列
RabbitMQ安装
RabbitMQ常用命令
RabbitMQ集群
RabbitQM集群(docker)
kafka操作
kafka集群搭建
kafka配置问题
本文档使用MrDoc发布
返回首页
-
+
RabbitMQ集群
2023年3月30日 11:39
admin
##普通集群模式 rabbitmq集群与其他集群有些不同,rabbitmq集群同步指的是复制队列,元数据信息的同步,即同步的是数据存储信息;消息的存放只会存储在创建该消息队列的那个节点上。并非在节点上都存储一个完整的数据。在通过非数据所在节点获取数据时,通过元数据信息,路由转发到存储数据节点上,从而得到数据 。 ##镜像集群模式 与普通集群模式区别 主要是消息实体会主动在镜像节点间同步数据,而不是只存储数据元信息。 故普通集群模式 但凡数据节点挂了,容易造成数据丢失但镜像集群模式可以保证集群只要不全部挂掉,数据就不会丢失,当相对于性能来说,镜像集群模式会比普通集群模式多出消耗数据的传输。故取决于业务场景进行取舍。 --- #主节点: >##修改hosts文件 vim /etc/hosts ------------------------------------------------------- 把各节点的信息填进去 >![](/media//202005/2020-05-29150732842937.png) --- >##停止RabbitMQ 服务 systemctl stop rabbitmq-server.service --- >##设置Erlang Cookie >>####设置不同节点间同一认证的Erlang Cookie scp /var/lib/rabbitmq/.erlang.cookie <节点ip>:/var/lib/rabbitmq/ >>####然后将 node1 中的该文件拷贝到 node2、node3最后将权限和所属用户/组修改回来 chown -R rabbitmq:rabbitmq /var/lib/rabbitmq/.erlang.cookie --- >##启动RabbitMQ 服务 systemctl start rabbitmq-server.service #从节点: >##修改hosts文件 vim /etc/hosts ------------------------------------------------------- 把各节点的信息填进去 >![](/media//202005/2020-05-29150732842937.png) --- >##停止RabbitMQ 服务 systemctl stop rabbitmq-server.service --- >##加入集群 rabbitmqctl join_cluster rabbit@MiWiFi-R4A-srv >![](/media//202005/2020-05-29151024646257.png) --- >##启动RabbitMQ 服务 systemctl start rabbitmq-server.service #查看 rabbitmqctl cluster_status ![](/media//202005/2020-05-29151222409034.png) --- >##Node statistics not available原因及解决办法 >####原因: cluster搭建起来后若在web管理工具中rabbitmq_management的Overview的Nodes部分看到“Node statistics not available”的信息,说明在该节点上web管理插件还未启用。 >####解决办法: 直接在显示提示信息的节点上运行rabbitmq-plugins enable rabbitmq_management即可。 >![](/media//202005/2020-05-29151442625962.png)
分享到: