CentOS 7.3 下安装RabbitMQ

前言

最近想研究一下rabbitmq,昨晚参照网上教程安装,遇到了一些问题,但是今天终于豁然开朗了,在此记录一下Linux环境下安装RabbitMQ的过程,及分享一些遇到的问题和解决方式。

这里我们安装RabbitMQ都使用最新的版本。

环境

服务器:aliyun服务器

操作系统:CentOS 7.3

RabbitMQ版本:v3.6.15

安装

Erlang安装

由于RabbitMQ是Erlang语言编写的,所以在安装RabbitMQ之前,我们先安装并配置Erlang

erlang下载地址:http://www.erlang.org/downloads

 点击OTP 21.1 Sourxe File 进行下载,并上传到服务器  /opt目录下

解压源文件:tar -zxvf otp_src_21.1.tar.gz

进入目录:cd otp_src_21.1

配置编译安装在/opt/erlang目录下:./configure --prefix=/opt/erlang

安装后重新编译:make && make install

配置环境变量:vim /etc/profile   文末添加:export PATH=$PATH:/opt/erlang/bin

生效环境:source /etc/profile

验证Erlang是否安装成功:

 出现上图则说明安装成功

退出(后面有个点哈,别忘了):halt().

RabbitMQ安装

erlang安装成功后开始安装rabbitmq

安装包下载地址:http://www.rabbitmq.com/releases/rabbitmq-server/

最新版本github下载地址:https://github.com/rabbitmq/rabbitmq-server/releases/

可以选择下载安装包上传到服务器进行解压缩安装

也可以通过:

wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.15/rabbitmq-server-generic-unix-3.6.15.tar.xz  下载

 下载后进行解压:xz -d rabbitmq-server-generic-unix-3.6.15.tar.xz  解压为tar文件

再使用:tar -xvf rabbitmq-server-generic-unix-3.6.15.tar 解压文件

解压完之后,为方便使用重命名目录为rabbitmq:mv rabbitmq_server-3.6.15/ rabbitmq

配置环境变量:export PATH=$PATH:/opt/rabbitmq/sbin

环境变量生效:source /etc/profile

接下来启动rabbitmq:cd /opt/rabbitmq/sbin

后台启动:./rabbitmq-server -detached

(启动发现报一个pid file not written,网上找了很多也没找到具体原因,但是通过查看rabbitmq运行状态是正常启动的

暂且先留着这个问题)

查看rabbitmq状态:./rabbitmqctl status

这里查看rabbitmq状态发生了错误,看起来rabbitmq好像没有启动起来,但是我们实际上已经运行启动命令

通过看日志发现也是一头雾水,于是就去网上寻找答案,各种关键词,最后在一个博客发现:erlang和CentOS,rabbitmq与erlang都是有版本依赖关系的,不同版本会存在版本的不兼容

博客地址:https://blog.csdn.net/qq_35131811/article/details/80985142

rabbitmq官方给出的与erlang/OTP的版本兼容要求: http://www.rabbitmq.com/which-erlang.htm

回顾一下,我是用的rabbitmq版本为v.3.6.15,而erlang版本使用的v21.1

v3.6.15最小必要版本为3.6.15,而最大支持版本为20.3.x

而我们使用erlang版本不在范围内,因此所以我们重新下载安装范围内的erlang版本,这里我换成了v20.2

重新安装后,启动rabbitmq并查看状态,发现正常启动

配置网页管理插件:当我们通过http://ip:15672访问的时候,访问不到

停止rabbitmq:./rabbitmqctl stop

开启插件:rabbitmq-plugins enable rabbitmq_management

启动rabbitmq:./rabbitmq-server -detached

访问,发现可以正常访问:

rabbitmq默认的账户是guest 只能本地访问,因此远程访问只能添加用户去访问

  • 查看rabbitmq用户:rabbitmqctl list_users  

  • 查看用户权限:rabbitmqctl list_user_permissions guest

  • 增加用户: rabbitmqctl add_user admin admin

  • 赋予管理员权限:

rabbitmqctl set_user_tags admin administrator 

rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*" 

 设置完之后,我们在页面用admin账号登陆,可以正常登陆进去:

  • 注意一点,如果你是阿里云服务器,在管理控制台还需要添加相应端口及对应地址段的安全组规则

这样我们才能在浏览器访问,不然会出现空白页。

 

知识嘛,无非都是借鉴、自思、自学、自悟,欢迎转载和留言,有问题留言随便提。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值