🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
##一、前提和参考文档 ###1.说明 需要按安装文档安装好rabbitmq,多实例启动后,在命令行操作时, 需要配合-n参数指定实例名进行操作 ###2.参考文档 http://blog.51cto.com/canonind/1864719 http://www.okay686.cn/968.html ###3.杀掉原进程mq进程 略 ##二、多实例部署 ###1.多实例启动命令 ####1)多实例启动命令[完整] ``` RABBITMQ_NODE_PORT=5672 RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15672}] -rabbitmq_stomp tcp_listeners [61614] -rabbitmq_mqtt tcp_listeners [1884]" RABBITMQ_NODENAME=rabbit2 rabbitmq-server -detached ``` ####2)多实例启动命令[简化] ``` RABBITMQ_NODE_PORT=5672 RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15672}]" RABBITMQ_NODENAME=rabbit2 rabbitmq-server -detached ``` ####3)说明 此种启动方式,可以为每个实例都启用web插件,并且产检的端口也不一样,便于自己管理 ###2.启动两个实例 * 5672 ``` RABBITMQ_NODE_PORT=5672 RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15672}]" RABBITMQ_NODENAME=rabbit2 rabbitmq-server -detached ``` * 5673 ``` RABBITMQ_NODE_PORT=5673 RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15673}]" RABBITMQ_NODENAME=rabbit3 rabbitmq-server -detached ``` ###3.配置用户 ####1)5672端口用户配置 ``` rabbitmqctl -n rabbit2 add_user ttd 123456 rabbitmqctl -n rabbit2 set_user_tags ttd administrator rabbitmqctl -n rabbit2 set_permissions -p "/" ttd ".*" ".*" ".*" ``` ####2)5673端口用户配置 ``` rabbitmqctl -n rabbit3 add_user ttd 123456 rabbitmqctl -n rabbit3 set_user_tags ttd administrator rabbitmqctl -n rabbit3 set_permissions -p "/" ttd ".*" ".*" ".*" ``` ###4.写入开机启动文件 ``` cat >>/etc/rc.local <<"EOF" RabbitMQ多实例开机启动 RABBITMQ_NODE_PORT=5672 RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15672}]" RABBITMQ_NODENAME=rabbit2 rabbitmq-server -detached RABBITMQ_NODE_PORT=5673 RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15673}]" RABBITMQ_NODENAME=rabbit3 rabbitmq-server -detached EOF ``` ###5.web端查看 访问`http://192.168.100.201:15672` 查看5602的状态 访问`http://192.168.100.201:15673` 查看5603的状态 ##三、多实例启停等命令示例 ###1.启停实例 ####1)停止 `rabbitmqctl -n rabbit2 stop_app` ####2)启动 `rabbitmqctl -n rabbit2 start_app` ###2.集群 ####1)加入集群 ``` rabbitmqctl -n rabbit3 join_cluster rabbit2@`hostname` ``` hostname是主机名 ####2)查看集群状态 `rabbitmqctl -n rabbit2 cluster_status` ###3.用户 ####1)创建用户 `rabbitmqctl -n rabbit2 add_user ttd 123456` ####2)授权 `rabbitmqctl -n rabbit2 set_user_tags ttd administrator` `rabbitmqctl -n rabbit2 set_permissions -p "/" ttd ".*" ".*" ".*"` ###4.总结 多实例的操作,和单实例的区别,就是rabbitmqctl命令后多加[-n实例名]