在 CentOS7 上安装 RabbitMQ 消息队列中间件

RabbitMQ 是流行的开源消息队列系统,是 AMQP(Advanced Message Queuing Protocol 高级消息队列协议)的标准实现,用 erlang 语言开发。RabbitMQ 具备良好的性能和时效性,同时还可以很是好的支持集群和负载部署,很是适合在较大规模的分布式系统中使用。vim

 

1、安装 erlang

// 下载
rpm -Uvh http://download.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-8.noarch.rpm
// 安装
yum install erlang

 安装过程当中会有提示,一路输入 "y" 便可。安装完成后再安装 RabbitMQ。服务器

 

2、安装 RabbitMQ

1. 下载 rpm:app

wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.6/rabbitmq-server-3.6.6-1.el7.noarch.rpm

2. 安装:tcp

yum install rabbitmq-server-3.6.6-1.el7.noarch.rpm

3. 查看状态分布式

systemctl status rabbitmq-server.service

以下则表示安装成功:oop

4. 添加配置文件性能

上图咱们看到日志文件在:Logs: /var/log/rabbitmq/rabbit@....logui

打开日志能够看到以下内容:spa

这里提示没有找到配置文件,咱们能够手动在这个目录下添加一个:插件

// 跳转目录
cd /etc/rabbitmq
// 建立文件
vim rabbitmq.config

添加内容:

[{rabbit, [{loopback_users, []}]}].

重启:

systemctl restart rabbitmq-server.service

 

3、开启管理端

1. 启动插件

rabbitmq-plugins enable rabbitmq_management

 2. 修改防火墙

// 开放管理端端口
firewall-cmd --zone=public --add-port=15672/tcp --permanent
// 开放服务器端口
firewall-cmd --zone=public --add-port=5672/tcp --permanent
// 重启
firewall-cmd --reload

3. 访问管理页面

http://localhost:15672

RabbltMQ 默认的帐号 guest,密码 guest。

该帐号只容许在本地访问。

4. 配置远程访问

// 添加用户
rabbitmqctl add_user admin admin123
// 添加权限
rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
// 赋予超级管理员角色
rabbitmqctl set_user_tags admin administrator

 

4、重置 RabbitMQ 配置

1. 关闭 RabbitMQ

rabbitmqctl stop_app

2. 重置

rabbitmqctl reset

3. 启动 RabbitMQ

rabbitmqctl start_app

重置后,远程用户也会清除。须要从新配置远程用户。

 

5、其余命令

add_user <UserName> <Password>
delete_user <UserName>
change_password <UserName> <NewPassword>
list_users
add_vhost <VHostPath>
delete_vhost <VHostPath>
list_vhostsset_permissions [-p <VHostPath>] <UserName> <Regexp> <Regexp> <Regexp>
clear_permissions [-p <VHostPath>] <UserName>
list_permissions [-p <VHostPath>]
list_user_permissions <UserName>
list_queues [-p <VHostPath>] [<QueueInfoItem> ...]
list_exchanges [-p <VHostPath>] [<ExchangeInfoItem> ...]
list_bindings [-p <VHostPath>]
list_connections [<ConnectionInfoItem> ...]
相关文章
相关标签/搜索