Linux下RabbitMQ安装、运行与管理
Linux下RabbitMQ安装、运行与管理
安装erlang
RabbitMQ的安装需要Erlang的基础环境,必须按照RabbitMQ Erlang版本要求进行安装。
1 2 3 4 5 | 关于Erlang官方的安装方式有三种: 官方制作的依赖软件包 Erlang Solutions的软件包(这个可以自定义yum库安装,本人自己下载安装) EPEL(“Enterprise Linux的额外软件包”) |
1.依赖环境安装
1 | yum -y install make gcc gcc -c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC unixODBC-devel httpd python-simplejson |
2.获取安装文件
1 | wget http: //erlang .org /download/otp_src_19 .2. tar .gz |
3.解压erlang安装包
1 | tar -xzvf otp_src_19.2. tar .gz |
4. cd erlang目录
1 | cd otp_src_19.2 |
5.编译安装erlang语言环境--prefix=/usr/local/erlang为安装目录
1 | . /configure --prefix= /usr/local/erlang |
6.编译安装
1 | make && make install |
7.配置环境变量
1 2 3 4 5 | vi /etc/profile export PATH=$PATH: /usr/local/erlang/bin source /etc/profile |
8.验证是否安装成功
1 | erl |
安装RabbitMQ
安装指南 安装版本选择:
1.cd到指定目录
1 | cd /usr/local // 切换到计划安装RabbitMQ的目录,我这里放在 /usr/local |
2.下载
1 | wget http: //www .rabbitmq.com /releases/rabbitmq-server/v3 .6.1 /rabbitmq-server-generic-unix-3 .6.1. tar .xz // 下载RabbitMQ安装包 |
3.解压
1 | xz -d rabbitmq-server-generic-unix-3.6.1. tar .xz |
1 | tar -xvf rabbitmq-server-generic-unix-3.6.1. tar |
4.改名
1 | mv rabbitmq_server-3.6.1/ rabbitmq |
5.配置rabbitmq环境变量
1 2 3 4 | vi /etc/profile #set rabbitmq environment export PATH=$PATH: /usr/local/rabbitmq/sbin source /etc/profile |
RabbitMQ 运行和管理
运行常用命令
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | // 常用的rabbitmq的命令 service rabbitmq-server start service rabbitmq-server stop service rabbitmq-server status service rabbitmq-server rotate-logs| service rabbitmq-server restart service rabbitmq-server condrestart service rabbitmq-server try-restart service rabbitmq-server reload service rabbitmq-server force-reload service rabbitmq-server -detached // 后台启动 ps -ef | grep rabbitmq 查看rabbitMq进程 netstat -anplt | grep LISTEN rabbitmq默认监听端口15672 /5672 |
web管理
1 | 15672 网页管理, 5672 AMQP端口 |
1 | rabbitmq默认创建的用户guest,密码也是guest,这个用户默认只能是本机访问,localhost或者127.0.0.1,从外部访问需要添加上面的配置。 |
1 2 | // 先创建目录,以免报错 mkdir /etc/rabbitmq// 开启管理页面插件 rabbitmq-plugins enable rabbitmq_management |
1 2 3 4 5 6 7 8 9 | 管理插件安装完成后,出现如下提示,表示安装成。 The following plugins have been enabled: mochiweb webmachine rabbitmq_web_dispatch amqp_client rabbitmq_management_agent rabbitmq_management Plugin configuration has changed. Restart RabbitMQ for changes to take effect. |
重启rabbitmq服务
1 | service rabbitmq-server restart |
1 | 可以用浏览器输入localhost:15672,账号密码全输入guest即可登录 |
配置防火墙
配置linux 端口 15672 网页管理 5672 AMQP端口:
1 2 3 | firewall-cmd --permanent --add-port=15672 /tcp firewall-cmd --permanent --add-port=5672 /tcp systemctl restart firewalld.service |
管理常用命令
1 2 3 4 5 6 7 8 9 10 11 | 查看mq用户:rabbitmqctl list_users 查看用户权限:rabbitmqctl list_user_permissions guest 新增用户: rabbitmqctl add_user admin 123456 赋予管理员权限: rabbitmqctl set_user_tags admin administrator rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*" |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | 可以创建管理员用户,负责整个MQ的运维,例如: rabbitmqctl add_user user_admin passwd_admin 赋予其administrator角色: rabbitmqctl set_user_tags user_admin administrator 可以创建RabbitMQ监控用户,负责整个MQ的监控,例如: rabbitmqctl add_user user_monitoring passwd_monitor 赋予其monitoring角色: rabbitmqctl set_user_tags user_monitoring monitoring 可以创建某个项目的专用用户,只能访问项目自己的virtual hosts sudo rabbitmqctl add_user user_proj passwd_proj 赋予其monitoring角色: rabbitmqctl set_user_tags user_proj management 创建和赋角色完成后查看并确认: rabbitmqctl list_users |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | RabbitMQ用户角色及权限控制 1.RabbitMQ的用户角色分类: none、management、policymaker、monitoring、administrator 2.RabbitMQ各类角色描述: none 不能访问 management plugin management 用户可以通过AMQP做的任何事外加: 列出自己可以通过AMQP登入的virtual hosts 查看自己的virtual hosts中的queues, exchanges 和 bindings 查看和关闭自己的channels 和 connections 查看有关自己的virtual hosts的“全局”的统计信息,包含其他用户在这些virtual hosts中的活动。 policymaker management可以做的任何事外加: 查看、创建和删除自己的virtual hosts所属的policies和parameters monitoring management可以做的任何事外加: 列出所有virtual hosts,包括他们不能登录的virtual hosts 查看其他用户的connections和channels 查看节点级别的数据如clustering和memory使用情况 查看真正的关于所有virtual hosts的全局的统计信息 administrator policymaker和monitoring可以做的任何事外加: 创建和删除virtual hosts 查看、创建和删除 users 查看创建和删除permissions 关闭其他用户的connections |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?