目录
一、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 Version Requirements — RabbitMQ
rpm
安装包RPM
下载包版本地址:rabbitmq/erlang - Packages · packagecloud选择对应版本的符合依赖关系的erlang包,el/7,数字7代表系统版本。
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下载地址】:RPM resource socat(x86-64)
下载后到下载目录执行以下命令即可:
# 安装命令
rpm -ivh socat-1.7.3.2-2.el7.x86_64.rpm
【rabbitmq下载地址】:Releases · rabbitmq/rabbitmq-server · GitHub
或地址:
GitHub - rabbitmq/rabbitmq-server: Open source RabbitMQ: core server and tier 1 (built-in) plugins
安装命令
# rpm -ivh rabbitmq-server-3.8.26-1.el7.noarch.rpm
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,[]}]}].
卸载前先停掉rabbitmq服务
service rabbitmq-server stop
查看rabbitmq安装的相关列表
yum list | grep rabbitmq
卸载rabbitmq已安装的相关内容
yum -y remove rabbitmq-server.noarch
查看erlang安装的相关列表
yum list | grep erlang
卸载erlang已安装的相关内容
yum -y remove erlang-*
yum remove erlang.x86_64
# journalctl -xe
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
如下图所示:
再次启动:service rabbitmq-server start
# service rabbitmq-server start
成功启动!
解决方案:此类问题均为安装时缺少某种环境配置文件,只需要通过which命令和find命令,找到相应的文件进行拷贝放到对应位置即可,或者是直接创建软链接。
例如:该错误缺少rabbitmq-env文件,我们先找这个已有文件在何位置
# which rabbitmq-env
或者 在根目录搜索找到报错中缺少的文件信息,拿到该文件的路径后,将此文件拷贝至需要的目录
find / -name rabbitmq*
可以将下面这个文件拷贝到报错的那个缺失目录中,重新启动即可。
启动rabbitmq
service rabbitmq-server start
解决方案:此类问题均为erlang包 安装问题,安装后环境变量未配置好,此步骤详见步骤二中的erlang安装内容,即可解决。
查询erlang版本:能查到erlang版本,基本就不会出现这种问题。
# erl -v
退出erlang命令行:
halt().
解决方案:此类问题均为装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