RabbitMQ安装指定版本

RabbitMQ install with the special version

Posted by alovn on May 22, 2020

简单记录一下。

yum install rabbitmq-server的版本有些老,如何安装指定的版本呢?

卸载erlang旧版本

1
2
3
4
5
查看erlang安装的相关列表
yum list | grep erlang

卸载erlang已安装的内容
yum -y remove erlang-*

下载安装

查看RabbitQM对应的Erlang版本 https://www.rabbitmq.com/which-erlang.html

下载相应的erlang版本 https://www.erlang-solutions.com/resources/download.html

1
2
3
4
5
6
7
8
9
yum install esl-erlang_xx.x.x.x-1~centos~7_amd64.rpm 

yum install rabbitmq-server-x.x.x-x.el7.noarch.rpm

安装rabbitmq webui插件
rabbitmq-plugins enable rabbitmq_management

systemctl enable rabbitmq-server
service rabbitmq-server restart

常用命令

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
#vhosts操作
rabbitmqctl add_vhost /new_host
rabbitmqctl list_vhosts
rabbitmqctl delete_vhost /new_host

#添加用户
rabbitmqctl add_user admin 123456
rabbitmqctl change_password admin 123456
#验证用户密码
rabbitmqctl authenticate_user admin 123456
rabbitmqctl delete_user admin
rabbitmqctl list_users
#设置管理员角色
rabbitmqctl set_user_tags admin administrator

#rabbitmqctl set_permissions [-p host] {user} {conf} {write} {read}
#vhost 授予用户访问权限的vhost名称 默认 /
#user 可以访问指定vhost的用户名
#conf 一个用于匹配用户在那些资源上拥有可配置的正则表达式
#write 一个用于匹配用户在那些资源上拥有可写的正则表达式
#read 一个用于匹配用户在那些资源上拥有可读的正则表达式
 
#授予admin用户可访问虚拟主机testhost,并在所有的资源上具备可配置、可写及可读的权限
rabbitmqctl set_permissions -p /testhost admin ".*" ".*" ".*"
 
#授予admin用户可访问虚拟主机testhost1,在以queue开头的资源上具备可配置权限、并在所有的资源上可写及可读的权限
rabbitmqctl set_permissions -p /testhost1 admin "^queue.*" ".*" ".*"
 
#清除权限
rabbitmqctl clear_permissions -p /testhost admin
 
#虚拟主机的权限
rabbitmqctl list_permissions -p /testhost
 
#用户权限
rabbitmqctl list_user_permissions admin

如果rabbitmq的管理端ui是在服务器内网内怎么访问呢?可通过VPN,如果是临时用一下,个人感觉最简便的方式还是通过ssh隧道,一条命令即可:

1
ssh -L 15672:rabbitmq-server-ip:15672 root@xxx