大厂技术 大亨经验分享Linux源码安装RabbitMQ高可用集群

1.环境说明

  • linux版本:CentOS Linux release 7.9.2009
  • erlang版本:erlang-24.0
  • rabbitmq版本:rabbitmq_server-3.9.13

2.源码安装erlang、RabbitMQ

  Rabbitmq采用erlang语言开发,所以在安装rabbitmq之前,需要安装erlang。

2.1 下载erlang、RabbitMQ源码包

erlang官网下载地址:Index of /download/ 选择opt_src_版本号.tar.gz(这里我选择的是 otp_src_24.0.tar.gz)

或者在linux服务器上使用 wget http://www.erlang.org/download/otp_src_24.0.tar.gz 进行下载

 RabbitMq官网下载地址:Downloading and Installing RabbitMQ — RabbitMQ

2.2 安装erlang

  1. 安装相关依赖 

yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel gtk2-devel binutils-devel unixODBC unixODBC-devel xz

2. 上传并解压erlang安装包

#上传otp_src_24.0.tar.gz rabbitmq-server-generic-unix-3.9.13.tar.xz 到指定路径(这里我上传到/lee)

#解压安装包

[root@lee lee]# tar -zxvf otp_src_24.0.tar.gz

[root@lee lee]# ll

total 111200

drwxr-xr-x 12 2004 wheel      4096 May 12  2021 otp_src_24.0

-rw-r--r--  1 root root  101193664 Mar 21 09:45 otp_src_24.0.tar.gz

-rw-r--r--  1 root root   12660820 Mar 21 09:45 rabbitmq-server-generic-unix-3.9.13.tar.xz

3. 编译安装erlang

1

2

3

4

5

6

7

8

9

10

11

12

#创建erlang安装目录

[root@lee lee]# mkdir -p /lee/erlang

#进入otp_src_24.0目录

[root@lee lee]# cd otp_src_24.0

[root@lee otp_src_24.0]# ./configure prefix=/lee/erlang

[root@lee otp_src_24.0]# make && make install

#安装完成后安装路径下的目录如下

[root@lee otp_src_24.0]# cd ../erlang/

[root@lee erlang]# ll

total 8

drwxr-xr-x 2 root root 4096 Mar 21 11:03 bin

drwxr-xr-x 3 root root 4096 Mar 21 11:02 lib

 

在执行 ./configure prefix=/lee/erlang 时出现如下问题可不用处理,这样编译完成

4. 配置环境变量并验证erlang是否安装成功

1

2

3

4

5

6

7

8

9

10

11

12

# 将erlang安装路径/bin 添加到 /ect/profile 末尾

[root@lee erlang]# vi /etc/profile

[root@lee erlang]# source /etc/profile

# 验证是否安装成功,执行erl 结果如下表示正常

[root@lee erlang]# erl

Erlang/OTP 24 [erts-12.0] [source] [64-bit] [smp:2:2] [ds:2:2:10] [async-threads:1]

Eshell V12.0  (abort with ^G)

1>

# 执行 halt(). 退出控制台

1> halt().

[root@lee erlang]#

 2.3. 安装RabbitMQ

安装RabbitMQ前需要确认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

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

# 解压 rabbitmq-server-generic-unix-3.9.13.tar.xz

[root@lee lee]# xz -d rabbitmq-server-generic-unix-3.9.13.tar.xz

[root@lee lee]# tar -xvf rabbitmq-server-generic-unix-3.9.13.tar

[root@lee lee]# mv rabbitmq_server-3.9.13/ rabbitmq

# 配置 RabbitMQ 环境变量

# 将 export PATH=$PATH:/lee/rabbitmq/bin:/lee/rabbitmq/sbin 添加到 /etc/profile 末尾

[root@lee lee]# vi /etc/profile

[root@lee lee]# source /etc/profile

# 后台启动 RabbitMQ

[root@lee lee]# rabbitmq-server -detached

# 查看端口 5672 存在表示启动成功

[root@lee lee]# ss -tnlp|grep 5672

LISTEN     0      128          *:25672                    *:*                   users:(("beam.smp",pid=8418,fd=17))

LISTEN     0      128       [::]:5672                  [::]:*                   users:(("beam.smp",pid=8418,fd=32))

# 添加rabbitmq浏览器管理插件

[root@lee lee]# rabbitmq-plugins enable rabbitmq_management

# RabbitMQ有默认用户名密码 guest/guest,该用户名密码只能在本地登陆

# 如若在浏览器中登陆,须新创建用户名密码

# 添加用户名密码

[root@lee lee]# rabbitmqctl add_user rabbitmq_user rabbitmq_pwd

# 检查用户列表

[root@lee lee]# rabbitmqctl list_users

Listing users ...

user    tags

guest   [administrator]

rabbitmq_user   []

# 为 rabbitmq_user 用户添加administrator角色

[root@lee lee]# rabbitmqctl set_user_tags rabbitmq_user administrator

Setting tags for user "rabbitmq_user" to [administrator] ...

# 设置 rabbitmq_user 用户权限,允许访问vhost及read/write

[root@lee lee]# rabbitmqctl set_permissions -p / rabbitmq_user ".*" ".*" ".*"

Setting permissions for user "rabbitmq_user" in vhost "/" ...

# 检查权限列表

[root@lee lee]# rabbitmqctl list_permissions -p /

Listing permissions for vhost "/" ...

user    configure   write   read

guest   .*  .*  .*

rabbitmq_user   .*  .*  .*

# 启动消息队列服务

[root@lee lee]# rabbitmqctl start_app

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值