一、安装erlang(由于RabbitMQ版本对erlang版本有限制,请提前查看使用对应版本)
版本问题请参考:https://www.rabbitmq.com/which-erlang.html,然后下载对应的安装包进行安装
在基于RPM的Linux上安装(RHEL,CentOS,Fedora,openSUSE) https://www.rabbitmq.com/install-rpm.html#package-cloud
使用PackageCloud安装erlang https://packagecloud.io/rabbitmq/erlang/install#bash-rpm
连接软件库
curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash
安装
yum -y install erlang
二、安装RabbitMQ Server
连接软件库
curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash
安装
yum -y install rabbitmq-server
打开防火墙
firewall-cmd --zone=public --add-port=5672/tcp --permanent
firewall-cmd --reload
三、启动RabbitMQ Server
# 设置开启启动
chkconfig rabbitmq-server on
# 启动服务
service rabbitmq-server start
#停止服务
service rabbitmq-server stop
#查看服务
service rabbitmq-server status
启动服务:systemctl start rabbitmq-server.service /rabbitmq-server start & /rabbitmq-server start_app
停止服务:systemctl stop rabbitmq-server.service / rabbitmq-server stop_app
设置开机启动:systemctl enable rabbitmq-server.service
停止开机启动:systemctl disable rabbitmq-server.service
重新启动服务:systemctl restart rabbitmq-server.service
查看服务当前状态:systemctl status rabbitmq-server.service/rabbitmqctl status
查看所有已启动服务:systemctl list-units --type=service
找到运行日志
打开日志
vim /var/log/rabbitmq/rabbit@instance-ocxxm8ec.log
发现无配置文件
四、配置
照着官方的介绍,到/usr/share/doc/rabbitmq-server-3.7.14/目录下复制一份模板到 /etc/rabbitmq 目录下进行修改
cd /usr/share/doc/rabbitmq-server-3.7.14/
#复制
cp rabbitmq.config.example /etc/rabbitmq/rabbitmq.config
1、开启管理后台
rabbitmq-plugins enable rabbitmq_management
# 开放端口
firewall-cmd --add-port=15672/tcp --permanent
firewall-cmd --reload
用 域名:15672 ,进入如下页面启动成功
/
2、创建用户
默认用户为guest密码guest,但是远程不能使用,只能本机使用,可以调整guest权限
#打开配置文件
vim /etc/rabbitmq/rabbitmq.config
修改
# rabbitmq.config 打开以下注释,并记得去掉后面的逗号
{loopback_users, []},
或添加新的用户
# 添加用户
rabbitmqctl add_user 用户名 密码
# 赋予用户管理员角色
rabbitmqctl set_user_tags 用户 administrator
# 查看用户列表
rabbitmqctl list_users
3、其他命令
总的来说,使用webui已经非常方便了,可以实现基本常用的管理操作。当然除了用web ui,还有用命令行:下面列举一下常用的一些命令行操作:
服务启动停止:
启动: rabbitmq-server -detached
停止: rabbitmqctl stop
插件管理:
插件列表: rabbitmq-plugins list
启动插件: rabbitmq-plugins enable XXX (XXX为插件名)
停用插件: rabbitmq-plugins disable XXX
用户管理:
添加用户: rabbitmqctl add_user username password
删除用户: rabbitmqctl delete_user username
修改密码: rabbitmqctl change_password username newpassword
设置用户角色: rabbitmqctl set_user_tags username tag
列出用户: rabbitmqctl list_users
权限管理:
列出所有用户权限: rabbitmqctl list_permissions
查看制定用户权限: rabbitmqctl list_user_permissions username
清除用户权限: rabbitmqctl clear_permissions [-p vhostpath] username
设置用户权限: rabbitmqctl set_permissions [-p vhostpath] username conf write read
conf: 一个正则匹配哪些资源能被该用户访问
write:一个正则匹配哪些资源能被该用户写入
read:一个正则匹配哪些资源能被该用户读取
角色说明
角色说明
none(普通用户)
没有控制台操作权限。
management(普通管理员)
可以查看当前用户的queues, exchanges和bindings。
可以查看和关闭当前用户的channels和connections。
可以查看当前用户的virtual hosts的统计信息。
policymaker(策略管理员)
具有management权限及查看、创建和删除当前用户的policies和parameters。
monitoring(监控管理员)
具有management权限
查看所有virtual hosts及全局的统计信息
查看所有用户的connections和channels
查看所有节点数据,如clustering和memory使用情况
administrator(超级管理员)
具有policymaker、monitoring权限
查看、创建、删除所有virtual hosts
查看、创建、删除所有users
查看、创建、删除所有permissions
可以关闭所有用户的connections
查看所有队列信息
# rabbitmqctl list_queues
关闭应用
# rabbitmqctl stop_app
启动应用,和上述关闭命令配合使用,达到清空队列的目的
# rabbitmqctl start_app
清除所有队列
# rabbitmqctl reset
更多用法及参数,可以执行如下命令查看
# rabbitmqctl查看所有队列信息
# rabbitmqctl list_queues
关闭应用
# rabbitmqctl stop_app
启动应用,和上述关闭命令配合使用,达到清空队列的目的
# rabbitmqctl start_app
清除所有队列
# rabbitmqctl reset
更多用法及参数,可以执行如下命令查看
# rabbitmqctl查看所有队列信息
# rabbitmqctl list_queues
关闭应用
# rabbitmqctl stop_app
启动应用,和上述关闭命令配合使用,达到清空队列的目的
# rabbitmqctl start_app
清除所有队列
# rabbitmqctl reset
更多用法及参数,可以执行如下命令查看
# rabbitmqctl