文章目录
1.RabbitMQ 客户端下载地址:
https://github.com/RobinsonSir/QtRabbitMQ
1.1RabbitMQ基本结构:
2.搭建RabbitMQ server
Centos 7上搭建。
下载安装文件:(这里不提供,注意是el7,不要选el8)
- rabbitmq-server-3.8.8-1.el7.noarch.rpm
- rabbitmq_delayed_message_exchange-3.8.0.ez
- erlang-21.3-1.el7.x86_64.rpm
- 下载地址见文章结尾
3.安装步骤
# 执行以下命令解压安装erlang
rpm -ivh erlang-21.3-1.el7.x86_64.rpm
# 在RabiitMQ安装过程中需要依赖socat插件 再执行以下命令安装该插件
yum install socat -y
# 然后再执行以下命令解压安装RabbitMQ的安装包
rpm -ivh rabbitmq-server-3.8.8-1.el7.noarch.rpm
4.运行
# 1.启动RabbitMQ的服务
systemctl start rabbitmq-server
# 2.查看RabbitMQ的服务状态
systemctl status rabbitmq-server
# 3.RabbitMQ的服务设置为开启自启动
systemctl enable rabbitmq-server
4.1 报错问题解决
[root@10 rabbitmq]# systemctl start rabbitmq-server
Job for rabbitmq-server.service failed because the control process exited with error code. See "systemctl status rabbitmq-server.service" and "journalctl -xe" for details.
参考:
https://blog.csdn.net/kang_tian/article/details/105719318
亲测有效!
5.使用
5.1 配置Web管理界面
默认情况下,rabbitmq没有安装web端的客户端软件,需要安装才可以生效。
可以执行以下命令安装远程的Web管理界面
rabbitmq-plugins enable rabbitmq_management
注意一般需要开放防火墙,才能远程访问!
[root@centos0001 ~]# firewall-cmd --zone=public --add-port=5672/tcp --permanent
success
[root@centos0001 ~]# firewall-cmd --zone=public --add-port=15672/tcp --permanent
success
[root@centos0001 ~]# firewall-cmd --reload
success
[root@centos0001 ~]#
然后我们就可以直接通过 主机地址:15672 就可以访问远程的web管理界面
这时还是没办法进行登陆的,即使使用默认的用户和密码也无法登陆,可以执行以下流程实现登陆。
创建账号: 用户名为admin 密码为 123 各位用户朋友可以自定义
# 加账户
rabbitmqctl add_user admin 123456
# 设置用户角色
rabbitmqctl set_user_tags admin administrator
# 设置用户权限:用户 user\_admin 具有/vhost1 这个 virtual host 中所有资源的配置、写、读权限,相当于超级管理员权限。
rabbitmqctl set_permissions -p "/" admin ".\*" ".\*" ".\*"
6.常用命令总结
rabbitmqctl list_users // 列出当前系统的用户
rabbitmqctl list_user_permissions [用户名] // 查看用户权限
rabbitmqctl delete_user [用户名] // 删除用户
rabbitmqctl change_password [用户名] [密码] // 修改用户密码
rabbitmq-plugins enable rabbitmq_management // 开启web远程管理界面
rabbitmq-plugins disable rabbitmq_management // 关闭web远程管理界面
systemctl start rabbitmq-server // 启动rabbitmq-server服务
systemctl stop rabbitmq-server // 停止rabbitmq-server服务
systemctl restart rabbitmq-server // 重启rabbitmq-server服务
systemctl reload rabbitmq-server // 重载rabbitmq-server服务 (推荐使用)
systemctl status rabbitmq-server // 查看rabbitmq-server状态
systemctl enable rabbitmq-server // 设置为开机启动rabbitmq-server服务
6.1 基于python3发送MQ消息
- 使用了rabbitmqadmin 脚本python3
- publish 发送消息命令
- exchange=direct_exchanger
- routing_key=MAC1
- –username=admin --password=123
- –vhost=/
- payload=‘{“message”: “Hello, RabbitMQ!”}’ 消息体
python3 rabbitmqadmin publish exchange=direct_exchanger routing\_key=MAC1 --username=admin --password=123 --vhost=/ payload='{"message": "Hello, RabbitMQ!"}'