我们在学习 RabbitMQ 的时候肯定会需要用到集群的,那么如何去搭建这个集群呢?这边提供一种 一主一从 的搭建方案,其他的搭建也是一样,到时候会点出来在哪里进行更改即可!首先我们要准备好一台配置好 Erlang + RabbitMQ 的服务器,至于怎么搭建这个服务器大家也可以查看我前几期的博客,那边写的很清楚!欢迎考古~
接着 第一步我们必须确保我们的环境是可以运行的,输入命令:
ps aux|grep rabbitmq 或 systemctl status rabbitmq-server
去人没有问题了的话那么我们就可以先停掉!
systemctl stop rabbitmq-server第二步 1、启动第一个结点 rabbit-1
sudo RABBITMQ_NODE_PORT=5672 RABBITMQ_NODENAME=rabbit-1 rabbitmq-server start &
注意:这里必须等到结点1启动完成
2、启动第二结点 rabbit-2sudo RABBITMQ_NODE_PORT=5673 RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15673}]" RABBITMQ_NODENAME=rabbit-2 rabbitmq-server start &
注意:这里必须等到结点2启动完成
如果说你需要搭建更多的从机的话那那就把上面的稍作修改,更改端口号,更改名字即可!!!!
ps aux|grep rabbitmq
没什么问题的话那么我们的结点就创建完成!
设置主从结点我们这边就将 rabbit-1 设置成主节点
# 停止应用 sudo rabbitmqctl -n rabbit-1 stop_app # 目的是清除的结点上的历史数据(如果不清楚,无法将结点加入到集群) sudo rabbitmqctl -n rabbit-1 reset # 启动应用 sudo rabbitmqctl -n rabbit-1 start_app
设置从结点 rabbit-2
#停止应用 sudo rabbitmqctl -n rabbit-2 stop_app # 目的是清除的结点上的历史数据(如果不清楚,无法将结点加入到集群) sudo rabbitmqctl -n rabbit-2 reset #将rabbit2 结点加入到rabbit1(主节点) 集群中[Server-node为服务器的主机名] sudo rabbitmqctl -n rabbit-2 join_cluster rabbit-1@'Server-node' # 启动应用 sudo rabbitmqctl -n rabbit-2 start_app
验证集群是否生效
sudo rabbitmqctl cluster_status -n rabbit-1
结果如下图:
首先打开web管理的权限
rabbitmq-plugins enable rabbitmq_management
接着我们将这个几个集群设置账号和密码及权限
rabbit-1
# 设置账号密码 rabbitmqctl -n rabbit-1 add_user admin admin # 设置角色 rabbitmqctl -n rabbit-1 set_user_tags admin administrator #设置权限 rabbitmqctl -n rabbit-1 set_permissions -p / admin ".*" ".*" ".*"
rabbit-2
# 设置账号密码 rabbitmqctl -n rabbit-2 add_user admin admin # 设置角色 rabbitmqctl -n rabbit-2 set_user_tags admin administrator #设置权限 rabbitmqctl -n rabbit-2 set_permissions -p / admin ".*" ".*" ".*"
多从机的话那么久以此类推下去即可!
接着我们去界面中登录,看到下面的界面那么就恭喜你 RabbitMQ 的集群就部署好了!
收工~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)