CentOS7安装/卸载rabbitmq及踩坑(详细)记录

目录

一、RabbitMQ 服务器在安装之前需要安装 erlang。

 二、erlang安装

方式一:rpm包安装方式

方式二:源码安装方式

 三、socat下载安装

四、下载RabbitMQ rpm 安装包

五、启动rabbitmq

六、rabbitmq与erlang卸载

1、卸载rabbitmq

        2、卸载erlang

七、可能出现的问题:

查看错误日志命令:journalctl -xe

问题1:ERROR: epmd error for host 192: badarg (unknown POSIX error)

问题2: /usr/sbin/rabbitmq-server: line 16: /usr/sbin/rabbitmq-env: No such file or directory

问题3、/usr/lib/rabbitmq/bin/rabbitmq-env: line 179: exec: erl: not found

rabbitmq /usr/lib/rabbitmq/bin/rabbitmq-server: line 85: erl: command not found

问题4、error: Failed dependencies: erlang >= 23.2 is needed by rabbitmq-server-3.8.


一、RabbitMQ 服务器在安装之前需要安装 erlang。

具体版本之间的依赖关系请查看官方网址,RabbitMQ Erlang Version Requirements — RabbitMQ

 下面列举部分示例:CentOS7安装/卸载rabbitmq及踩坑(详细)记录_第1张图片

 CentOS7安装/卸载rabbitmq及踩坑(详细)记录_第2张图片

CentOS7安装/卸载rabbitmq及踩坑(详细)记录_第3张图片

 二、erlang安装

方式一:rpm包安装方式

  • 下载Erlang rpm 安装包
    RPM 下载包版本地址:rabbitmq/erlang - Packages · packagecloud

 选择对应版本的符合依赖关系的erlang包,el/7,数字7代表系统版本。CentOS7安装/卸载rabbitmq及踩坑(详细)记录_第4张图片

 根据链接点击后进入详细页面,获取下载链接:CentOS7安装/卸载rabbitmq及踩坑(详细)记录_第5张图片

wget --content-disposition https://packagecloud.io/rabbitmq/erlang/packages/el/7/erlang-23.3.4.11-1.el7.x86_64.rpm/download.rpm

选择一个存放当前rpm的目录文件,这里放在了 /usr/local/rabbitMQ/ 文件夹下

 在这里插入图片描述

cd /usr/local/rabbitmq/
# 安装
rpm -ivh erlang-23.3.4.11-1.el7.x86_64.rpm

# 查看版本
erl -v

方式二:源码安装方式

1.先安装一些需要的依赖:

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

 2.下载对应版本的Erlang

如果在线下载太慢了,也可以其他地方预先下载好,再上传到服务器

3.解压编译安装

cd /usr/local
mkdir erlang
tar -zxvf otp_src_24.0.tar.gz
cd otp_src_24.0
./configure --prefix=/usr/local/erlang

此过程可能比较久,configure的过程如果有err,要解决依赖的问题,info和warn没有影响。
如果有APPLICATIONS INFORMATION,DOCUMENTATION INFORMATION,也没有影响。

make && make install

此过程可能比较久,如果有提示缺少其他的依赖包就按提示安装

yum install -y 缺少的依赖xxx

 4.配置环境变量并编译生效

安装完成后配置环境变量/etc/profile

vim /etc/profile

在最后加入一行

#erlang
export PATH=$PATH:/usr/local/erlang/bin

wq保存退出

编译生效

source /etc/profile

5.验证Erlang是否安装成功

输入erl,会出现版本信息,即安装成功

# erl -v

退出erlang命令行:

halt().

 三、socat下载安装

 【socat下载地址】:RPM resource socat(x86-64)

 CentOS7安装/卸载rabbitmq及踩坑(详细)记录_第6张图片

 下载后到下载目录执行以下命令即可:

# 安装命令
rpm -ivh socat-1.7.3.2-2.el7.x86_64.rpm 

四、下载RabbitMQ rpm 安装包

【rabbitmq下载地址】:Releases · rabbitmq/rabbitmq-server · GitHub

或地址:

GitHub - rabbitmq/rabbitmq-server: Open source RabbitMQ: core server and tier 1 (built-in) plugins

CentOS7安装/卸载rabbitmq及踩坑(详细)记录_第7张图片

CentOS7安装/卸载rabbitmq及踩坑(详细)记录_第8张图片

安装命令
# rpm -ivh rabbitmq-server-3.8.26-1.el7.noarch.rpm

五、启动rabbitmq

1、
# 启动rabbitmq
systemctl start rabbitmq-server

# 查看rabbitmq状态
systemctl status rabbitmq-server
2、	配置用户和权限
rabbitmqctl list_users
rabbitmqctl add_user root 123456
rabbitmqctl set_permissions -p "/" root ".*" ".*" ".*"
rabbitmqctl delete_user guest
rabbitmq-plugins enable rabbitmq_management
rabbitmqctl change_password root '123456'
rabbitmqctl set_user_tags root administrator

 /etc/rabbitmq/rabbitmq.config第一次打开时会自动创建,直接在里面输入内容即可。

3、	配置外部访问
vi /etc/rabbitmq/rabbitmq.config
修改所在行如下图所示

[{rabbit,[{loopback_users,[]}]}].

 CentOS7安装/卸载rabbitmq及踩坑(详细)记录_第9张图片

六、rabbitmq与erlang卸载

1、卸载rabbitmq

卸载前先停掉rabbitmq服务

service rabbitmq-server stop

查看rabbitmq安装的相关列表

yum list | grep rabbitmq

卸载rabbitmq已安装的相关内容

yum -y remove rabbitmq-server.noarch

2、卸载erlang

查看erlang安装的相关列表

yum list | grep erlang

卸载erlang已安装的相关内容

yum -y remove erlang-*
yum remove erlang.x86_64

七、可能出现的问题:

查看错误日志命令:journalctl -xe

# journalctl -xe

问题1:ERROR: epmd error for host 192: badarg (unknown POSIX error)

ERROR: epmd error for host "77":badarg (unknown POSIX error) 

解决办法:编辑:vi /etc/rabbitmq/rabbitmq-env.conf  添加一行

# vi /etc/rabbitmq/rabbitmq-env.conf 

在文件里面添加这一行:NODENAME=rabbit@localhost,保存 (注意:rabbitmq-env.conf这个文件没有,打开之后自动创建)

NODENAME=rabbit@localhost

 如下图所示:

 CentOS7安装/卸载rabbitmq及踩坑(详细)记录_第10张图片

 再次启动:service rabbitmq-server start

# service rabbitmq-server start

 

 成功启动!

问题2: /usr/sbin/rabbitmq-server: line 16: /usr/sbin/rabbitmq-env: No such file or directory

解决方案:此类问题均为安装时缺少某种环境配置文件,只需要通过which命令和find命令,找到相应的文件进行拷贝放到对应位置即可,或者是直接创建软链接。

例如:该错误缺少rabbitmq-env文件,我们先找这个已有文件在何位置

# which rabbitmq-env

或者 在根目录搜索找到报错中缺少的文件信息,拿到该文件的路径后,将此文件拷贝至需要的目录

 find / -name rabbitmq*

CentOS7安装/卸载rabbitmq及踩坑(详细)记录_第11张图片

可以将下面这个文件拷贝到报错的那个缺失目录中,重新启动即可。

 CentOS7安装/卸载rabbitmq及踩坑(详细)记录_第12张图片

启动rabbitmq 
service rabbitmq-server start

CentOS7安装/卸载rabbitmq及踩坑(详细)记录_第13张图片

问题3、/usr/lib/rabbitmq/bin/rabbitmq-env: line 179: exec: erl: not found

rabbitmq /usr/lib/rabbitmq/bin/rabbitmq-server: line 85: erl: command not found

解决方案:此类问题均为erlang包 安装问题,安装后环境变量未配置好,此步骤详见步骤二中的erlang安装内容,即可解决。

查询erlang版本:能查到erlang版本,基本就不会出现这种问题。

# erl -v

退出erlang命令行:

halt().

问题4、error: Failed dependencies: erlang >= 23.2 is needed by rabbitmq-server-3.8.

解决方案:此类问题均为装rabbitmq-server-xx.rpm包时遇到的依赖问题,只需要在最后加--nodeps去掉依赖安装即可

例如:

# rpm -ivh rabbitmq-server-3.8.26-1.el7.noarch.rpm --nodeps

启动rabbitmq 
service rabbitmq-server start

------------------------------------------------------------------------------------------以下无正文-----------------------------------------------------------

注:仅供学习,记录问题和参考,共勉!

参考文章:

1、【Linux中安装/卸载RabbitMQ记录】_SLAG-man.木子的博客-CSDN博客_linux 卸载rabbitmq

2、centos7中安装RabbitMQ和erlang_程序工厂的博客-CSDN博客

3、CentOS7.5 安装rabbitmq采坑 - 简书

4、Linux环境RabbitMQ安装教程 - bug毁灭者 - 博客园

5、Centos7环境安装Erlang、RabbitMQ详细过程(配图)_错过了时间的博客-CSDN博客_centos7 erlang

6、CentOS 6.8 安装RabbitMQ提示ERROR: epmd error for host "77": badarg (unknown POSIX error)_dw_java08的博客-CSDN博客_epmd error for host 192: badarg (unknown posix err

7、ERROR: epmd error for host 192: badarg (unknown POSIX error)_疯狂一世。的博客-CSDN博客_error: epmd error for host 192: badarg (unknown po

你可能感兴趣的:(Linux,rabbitmq,网络,服务器,linux,运维开发)