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

  

 

posted @   -零  阅读(2457)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示