环境准备

基础系统:CentOS 7.6
Erlang 和 RabbitMQ 需要版本对应,参考 这里,本次使用如下版本
Erlang:otp_src_22.0.tar.gz (RabbitMQ 是基于 Erlang 语言开发的,所以必须先安装 Erlang)
RabbitMQ:rabbitmq-server-generic-unix-3.7.15.tar.xz

1.下载并上传对应版本的软件包

1.1.Erlang 下载

erlang官网https://www.erlang.org/downloads

otp_src_22.0.tar.gz( 1 慢就用 2 ) 下载 1 下载 2

1.2.RabbitMQ 下载

下载地址https://github.com/rabbitmq/rabbitmq-server/releases/tag/v3.7.15

rabbitmq-server-generic-unix-3.7.15.tar.xz 下载

1.3. 上传

通过 WinScp 把两个文件拖到服务器的目录 /usr/local/

2.安装依赖

1
yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto perl wget gtk2-devel binutils-devel

3.Erlang 安装

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@localhost /]# cd /usr/local/

#解压
[root@localhost local]# tar -zxvf otp_src_22.0.tar.gz

#创建安装目录
[root@localhost local]# mkdir erlang

#切换目录
[root@localhost local]# cd otp_src_22.0

#配置安装路径
[root@localhost otp_src_22.0]# ./configure --prefix=/usr/local/erlang

如果遇到如下界面,百度说不用管,那咱们就继续下一步
在这里插入图片描述

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
#安装
[root@localhost otp_src_22.0]# make install

#查看是否安装完成
[root@localhost otp_src_22.0]# cd /usr/local/erlang/
[root@localhost erlang]# ls -l
总用量 0
drwxr-xr-x. 2 root root 128 1月 21 15:40 bin
drwxr-xr-x. 3 root root 20 1月 21 15:39 lib

#配置 Erlang 环境变量
[root@localhost erlang]# echo 'export PATH=$PATH:/usr/local/erlang/bin' >> /etc/profile

#刷新环境变量
[root@localhost erlang]# source /etc/profile

#验证是否成功
[root@localhost erlang]# cd /
[root@localhost /]# erl
Erlang/OTP 22 [erts-10.4] [source] [64-bit] [smp:1:1] [ds:1:1:10] [async-threads:1] [hipe]

Eshell V10.4 (abort with ^G)
1>

#输入 halt(). 命令退出(没看错,有点)
1>
1> halt().
[root@localhost /]#

4.RabbitMQ 安装

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
#tar.xz 文件需要命令 xz,没有的话就先安装 
[root@localhost /]# cd /usr/local/
[root@localhost local]# yum install -y xz

#解压
[root@localhost local]# xz -d rabbitmq-server-generic-unix-3.7.15.tar.xz
[root@localhost local]# tar -xvf rabbitmq-server-generic-unix-3.7.15.tar

#文件夹重命名
[root@localhost local]# mv rabbitmq_server-3.7.15 rabbitmq

#配置 RabbitMQ 环境变量
[root@localhost local]# echo 'export PATH=$PATH:/usr/local/rabbitmq/sbin' >> /etc/profile

#刷新环境变量
[root@localhost local]# source /etc/profile

#验证服务是否安装成功
#服务启动
[root@localhost local]# rabbitmq-server -detached
Warning: PID file not written; -detached was passed.

#服务状态
[root@localhost local]# rabbitmqctl status

#服务关闭
[root@localhost local]# rabbitmqctl stop
Stopping and halting node rabbit@localhost ...

5.安装 WEB 管理界面

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#安装
[root@localhost local]# rabbitmq-plugins enable rabbitmq_management

#防火墙放开端口 5672 和 15672
[root@localhost local]# firewall-cmd --zone=public --add-port=5672/tcp --permanent
success
[root@localhost local]# firewall-cmd --zone=public --add-port=15672/tcp --permanent
success

#查看防护墙端口是否放开
[root@localhost local]# firewall-cmd --query-port=15672/tcp
no
[root@localhost local]# firewall-cmd --query-port=5672/tcp
no

#重启防火墙
[root@localhost local]# firewall-cmd --reload
success

#查看防护墙端口是否放开
[root@localhost local]# firewall-cmd --query-port=5672/tcp
yes
[root@localhost local]# firewall-cmd --query-port=15672/tcp
yes

浏览器访问:ip:15672 如下图

在这里插入图片描述

默认账号密码:guest guest(这个账号只允许本机访问)

6.RabbitMQ 用户管理

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
#查看所有用户
[root@localhost local]# rabbitmqctl list_users
Listing users ...
user tags
guest [administrator]

#添加一个用户和密码
[root@localhost local]# rabbitmqctl add_user charmsongo 123456
Adding user "charmsongo" ...

#配置权限
[root@localhost local]# rabbitmqctl set_permissions -p "/" charmsongo ".*" ".*" ".*"
Setting permissions for user "charmsongo" in vhost "/" ...

查看 charmsongo 权限
[root@localhost local]# rabbitmqctl list_user_permissions charmsongo
Listing permissions for user "charmsongo" ...
vhost configure write read
/ .* .* .*

#设置 tag 为 administrator
[root@localhost local]# rabbitmqctl set_user_tags charmsongo administrator
Setting tags for user "charmsongo" to [administrator] ...
[root@localhost local]# rabbitmqctl list_users
Listing users ...
user tags
charmsongo [administrator]
guest [administrator]

#删除默认用户(安全起见)
[root@localhost local]# rabbitmqctl delete_user guest
Deleting user "guest" ...

7.登录验证

用新账号和密码登录(如果失败,可重启 RabbitMQ 服务)

在这里插入图片描述

结束……

如果有哪些不对的地方烦请指认,先行感谢