介绍
RabbitMQ是流行的开源消息队列系统,用erlang语言开发。RabbitMQ是AMQP(高级消息队列协议)的标准实现。
本文通过centos7安装RabbitMQ最新版3.9.0进行演示。
RabbitMQ官方下载页面
erlang与rabbitmq版本对应关系
安装
1.卸载旧安装包
centos7默认安装erlang的版本为R16B03。
查看erlang版本命令:
erl
如果为旧版本需要卸载:
yum remove erlang-erts-R16B-03.18.el7.x86_64
2.安装erlang
从Erlang Solution安装最新版的erlang
最新版本已更新至erlang-solutions-2.0-1.noarch.rpm
wget https://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm
rpm -Uvh erlang-soulutions-1.0-1.noarch.rpm
yum install erlang
3.下载Rabbit安装包
下载地址:https://github.com/rabbitmq/rabbitmq-server/tags
下载命令:
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.9.0/rabbitmq-server-3.9.0-1.el7.noarch.rpm
4.安装RabbitMQ
yum install rabbitmq-server-3.9.0-1.el7.noarch.rpm
5.开启web界面(可选)
rabbitmq-plugins enable rabbitmq_management
6.开启远程访问
默认guest用户除了本地之外的ip无法进行登录访问,如需其他ip进行访问需要修改配置文件并进行重启。
vi /etc/rbabitmq/rabbitmq.config
将如下的内容添加到rabbitmq.config
# 旧版的配置方式
[
{rabbit, [{loopback_users, [""]}]}
]
#3.7版本后的新版配置方式
# awful security practice,
# consider creating a new
# user with secure generated credentials!
loopback_users = none
注意文件权限设置为755。
7.访问
linux默认的端口为15762
http://localhost:15762
其他
启动/脚本命令
也可以使用systemctl服务名称为rabbitmq-server
# 启动服务
rabbitmq-server start
# 查看服务状态
rabbitmq-server status
# 停止服务
rabbitmq-server stop
# 查看当前所有用户
rabbitmqctl list_users
# 查看guest用户权限
rabbitmqctl list_user_permissions guest
# 删除用户guset
rabbitmqctl delete_user guset
# 添加新用户
rabbitmqctl add_user username password
# 设置用户tag
rabbitmqctl set_user_tags username administrator
# 授予用户所有默认权限
rabbitmqctl set_permissions-p / username ".*" ".*" ".*"
配置文件
# 配置文件路径
# /etc/rbabitmq/rabbitmq.config
[
#修改控制台端口号
{rabbitmq_management, [{listener, [{port, 8888}]}]}
#修改mq服务端口号
{rabbit, [{tcp_listeners, [5673]}]}
]