1.整体步骤
最开始我们介绍了如何安装及运行RabbitMQ服务,不过这些是单机版的,无法满足目前真实应用的要求。如果 RabbitMQ 服务器遇到内存崩溃、机器掉电或者主板故障等情况,该怎么办?单台 RabbitMQ服务器可以满足每秒 1000 条消息的吞吐量,那么如果应用需要 RabbitMQ 服务满足每秒 10 万条消息的吞吐量呢?购买昂贵的服务器来增强单机 RabbitMQ 务的性能显得捉襟见肘,搭建一个 RabbitMQ 集群才是解决实际问题的关键。
首先,我们需要3台Linux操作系统,这里我是直接完整克隆了,大家根据情况来看吧。
然后先修改三台Linux操作系统的主机名称
vim /etc/hostname
这里修改完之后,建议是将它们都重启一下更好(reboot)。
重启之后,配置各个节点的 hosts 文件,让各个节点都能互相识别对方。
vim /etc/hosts
接下来,以确保各个节点的 cookie 文件使用的是同一个值,在 node1 上执行远程操作命令。
scp /var/lib/rabbitmq/.erlang.cookie root@node2:/var/lib/rabbitmq/.erlang.cookie scp /var/lib/rabbitmq/.erlang.cookie root@node3:/var/lib/rabbitmq/.erlang.cookie
启动 RabbitMQ 服务,顺带启动 Erlang 虚拟机和 RbbitMQ 应用服务 (在三台节点上分别执行以下命令)
rabbitmq-server -detached
下面要做的就是将结点node3加入到node1中,结点node2加入到node3中。(你也可以node3加入node1、node2加入node1,都是一样的)
这里要注意一点的是:关闭防火墙!!!
结点加入完成之后,我们就可以查看集群状态了
rabbitmqctl cluster_status
下面我们还需要一个东西就是 RabbitMQ 的账户信息,添加一下、设置好用户名、密码、授予所有权限就可以了。
创建账号 rabbitmqctl add_user admin 123 设置用户角色 rabbitmqctl set_user_tags admin administrator 设置用户权限 rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
至此,集群搭建就全部完成了,最后可以到浏览器中,访问RabbitMQ的后台web管理控制台了。可以看到集群信息完整的呈现出来了!!!