共计 4223 个字符,预计需要花费 11 分钟才能阅读完成。
RabbitMQ 安装
1 安装 erlang
下载地址:http://www.erlang.org/downloads
博主这里采用的是 otp_src_19.1.tar.gz (200MB+)
[ | ]|
[ | ]|
[ | ]|
[ | ]|
[ | ]
修改 /etc/profile 文件,添加下面的环境变量:
ERLANG_HOME=/opt/erlang | |
export PATH=$PATH:$ERLANG_HOME/bin | |
export ERLANG_HOME |
最后执行 source /etc/profile 让文件生效。
2 安装 simpleJson
下载地址:https://pypi.python.org/pypi/simplejson/
博主这里采用的是 simplejson-3.10.0.tar.gz
[ | ]|
[ | ]|
[ | ]
3 安装 rabbitmq
下载地址:http://www.rabbitmq.com/releases/rabbitmq-server/
博主这里用的版本就有很多了,比如 2.7.0, 3.4.0, 3.4.1, 3.4.2, 3.4.3, 3.5.7, 3.6.0 等等,不过都是用的 rabbitmq-server-generic-unix-..*.tar.gz 的版本。
这里以 3.5.7 举例:
[ | ]|
[ | ]|
[ | ]
修改 /etc/profile 文件,添加下面的环境变量:
export PATH=$PATH:/opt/rabbitmq/sbin
最后执行 source /etc/profile 让文件生效。
运行:rabbitmq-server -detached
之后运行 rabbitmqctl status 查看 rabbitmq 是否正常启动:
[root@zhuzhonghua2-fqawb rabbitmq]# rabbitmqctl status | |
Status of node 'rabbit@zhuzhonghua2-fqawb' ... | |
[{pid,25020}, | |
{running_applications, | |
[{rabbitmq_management,"RabbitMQ Management Console","3.5.7"}, | |
{rabbitmq_management_agent,"RabbitMQ Management Agent","3.5.7"}, | |
{rabbit,"RabbitMQ","3.5.7"}, | |
{mnesia,"MNESIA CXC 138 12","4.14.1"}, | |
{rabbitmq_web_dispatch,"RabbitMQ Web Dispatcher","3.5.7"}, | |
{webmachine,"webmachine","1.10.3-rmq3.5.7-gite9359c7"}, | |
{mochiweb,"MochiMedia Web Server","2.7.0-rmq3.5.7-git680dba8"}, | |
{os_mon,"CPO CXC 138 46","2.4.1"}, | |
{amqp_client,"RabbitMQ AMQP Client","3.5.7"}, | |
{inets,"INETS CXC 138 49","6.3.3"}, | |
{xmerl,"XML parser","1.3.12"}, | |
{sasl,"SASL CXC 138 11","3.0.1"}, | |
{stdlib,"ERTS CXC 138 10","3.1"}, | |
{kernel,"ERTS CXC 138 10","5.1"}]}, | |
{os,{unix,linux}}, | |
{erlang_version, | |
"Erlang/OTP 19 [erts-8.1] [source] [64-bit] [smp:4:4] [async-threads:64] [hipe] [kernel-poll:true]\n"}, | |
{memory, | |
[{total,60110136}, | |
{connection_readers,0}, | |
{connection_writers,0}, | |
{connection_channels,0}, | |
{connection_other,5664}, | |
{queue_procs,1028160}, | |
{queue_slave_procs,1576056}, | |
{plugins,8008840}, | |
{other_proc,6115560}, | |
{mnesia,197760}, | |
{mgmt_db,14219256}, | |
{msg_index,58288}, | |
{other_ets,1181200}, | |
{binary,633896}, | |
{code,17650127}, | |
{atom,711593}, | |
{other_system,8723736}]}, | |
{alarms,[]}, | |
{listeners,[{clustering,25672,"::"},{amqp,5672,"::"}]}, | |
{vm_memory_high_watermark,0.4}, | |
{vm_memory_limit,3301929779}, | |
{disk_free_limit,50000000}, | |
{disk_free,35754786816}, | |
{file_descriptors, | |
[{total_limit,924},{total_used,6},{sockets_limit,829},{sockets_used,1}]}, | |
{processes,[{limit,1048576},{used,195}]}, | |
{run_queue,0}, | |
{uptime,139660}] |
RabbitMQ 集群搭建方法
这里展示的是多机集群的部署,如果机器受限,可以选择单机集群部署,详细可以参考《RabbitMQ 单机多实例配置》。
这里选用三台主机,主机名分别是 hidden1, hidden2, hidden3
1 在这三台机器中安装 rabbitmq-server, 参考上面。
2 读取其中一个节点的 cookie, 并复制到其他节点(节点之间通过 cookie 确定相互是否可通信)。
cookie 存放在 /var/lib/rabbitmq/.erlang.cookie 或者 $HOME/.erlang.cookie 中。
3 逐个启动节点 rabbitmq-server -detached
4 查看各节点的状态:rabbitmqctl status, rabbitmqctl cluster_status
5 配置各节点的 hosts 文件 (vim /etc/hosts)
xxx.xxx.xxx.xxx hidden1
xxx.xxx.xxx.xxx hidden2
xxx.xxx.xxx.xxx hidden3
6 建立集群
以 hidden1 为主节点,在 hidden2 上:
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster rabbit@hidden1
rabbitmqctl start_app
hidden3 上的操作与 hidden2 的雷同。
最后通过 rabbitmqctl cluster_status 查看集群的状态信息:
[{nodes,[{disc,[rabbit@hidden1,'rabbit@hidden2','rabbit@hidden3']}]}, | |
{running_nodes,[rabbit@hidden1,'rabbit@hidden2','rabbit@hidden3']}, | |
{cluster_name,<<"rabbit@hidden1">>}, | |
{partitions,[]}] |
7 在访问 web(http://xxx.xxx.xxx.xxx:15672)时, 如果在 Overview 中的 Nodes 部分看到“Node statistics not available”的信息,说明在该节点上 web 管理插件还未启用。直接运行 rabbitmq-plugins enable rabbitmq_management 即可。
CentOS 7.2 下 RabbitMQ 集群搭建 http://www.linuxidc.com/Linux/2016-12/137812.htm
CentOS7 环境安装使用专业的消息队列产品 RabbitMQ http://www.linuxidc.com/Linux/2016-11/13673.htm
RabbitMQ 入门教程 http://www.linuxidc.com/Linux/2015-02/113983.htm
在 CentOS7 上安装 RabbitMQ 详解 http://www.linuxidc.com/Linux/2017-05/143765.htm
NServiceBus 结合 RabbitMQ 使用教程 http://www.linuxidc.com/Linux/2017-05/143787.htm
CentOS 7 下 RabbitMQ 集群安装配置 http://www.linuxidc.com/Linux/2017-10/147707.htm
RabbitMQ 实战:高效部署分布式消息队列 中文 PDF 扫描版 http://www.linuxidc.com/Linux/2017-10/147592.htm
RabbitMQ 的详细介绍 :请点这里
RabbitMQ 的下载地址 :请点这里
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2017-10/147723.htm
