Erlang安装
rabbitmq依赖于Erlang,需先安装,推荐安装rabbitmq/erlang-rpm:
#clone源码 git clone https://github.com/rabbitmq/erlang-rpm.git #make cd erlang-rpm make #需要等待较长时间 cd RPMS/x86_64 #其下有两个rpm包 erlang-19.3.6-1.alios6.x86_64.rpm erlang-debuginfo-19.3.6-1.alios6.x86_64.rpm, 选择前者安装 #安装 sudo rpm -ivh erlang-19.3.6-1.alios6.x86_64.rpm
RabbitMQ安装
在官网下载页面找到和系统版本对应的rabbitmq版本:
#安装rabbitmq-server sudo yum install rabbitmq-server-3.6.10-1.el6.noarch.rpm #此时可能报:Requires: socat, 以下是解决方法, 参考:http://www.cnblogs.com/ray30th/p/6651800.html sudo wget --no-cache http://www.convirture.com/repos/definitions/rhel/6.x/convirt.repo -O /etc/yum.repos.d/convirt.repo sudo yum makecache sudo yum install socat #重新安装rabbitmq-server sudo yum install rabbitmq-server-3.6.10-1.el6.noarch.rpm
启动/关闭/状态查看
#启动/停止 start/stop $sudo /sbin/service rabbitmq-server start Starting rabbitmq-server: SUCCESS rabbitmq-server. $sudo /sbin/service rabbitmq-server stop Stopping rabbitmq-server: rabbitmq-server. #状态查看 sudo rabbitmqctl status
访问端口
SELinux和与其机制类似的系统可能会阻止RabbtMQ绑定相应端口,所以安装完之后需要确保一下端口可以打开:
- 4369,epmd(Erlang Port Mapper Daemon),是Erlang的端口/结点名称映射程序,用来跟踪节点名称监听地址,在集群中起到一个类似DNS的作用。
- 5672, 5671, AMQP 0-9-1 和 1.0 客户端端口,used by AMQP 0-9-1 and 1.0 clients without and with TLS(Transport Layer Security)
- 25672,Erlang distribution,和4369配合
- 15672,HTTP_API端口,管理员用户才能访问,用于管理RbbitMQ,需要启用management插件,
rabbitmq-plugins enable rabbitmq_management
,访问http://server-name:15672/
- 61613, 61614,当STOMP插件启用的时候打开,作为STOMP客户端端口(根据是否使用TLS选择)
- 1883, 8883,当MQTT插件启用的时候打开,作为MQTT客户端端口(根据是否使用TLS选择)
- 15674,基于WebSocket的STOMP客户端端口(当插件Web STOMP启用的时候打开)
- 15675,基于WebSocket的MQTT客户端端口(当插件Web MQTT启用的时候打开)