Linux(CentOS8)服务器安装RabbitMQ

我安装了很久都没有成功, 各种问题, 每次的异常都不一样, 现将成功安装过程做个总结

安装前工作

确保已经安装了一些基础工具和组件库

下载安装包

text 复制代码
https://www.erlang.org/patches/otp-24.3.4.5
https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.9.15/rabbitmq-server-3.9.15-1.el8.noarch.rpm

安装erlang

执行安装命令

bash 复制代码
rpm -ivh erlang-24.3.4.5-1.el8.x86_64.rpm

如果提示已安装啥的,现卸载

bash 复制代码
yum remove erlang

如果安装时还有类似于已安装的提示, 就加上以下参数

bash 复制代码
rpm -ivh erlang-24.3.4.5-1.el8.x86_64.rpm --force --nodeps

查看是否安装成功

输入命令:

bash 复制代码
erl

安装插件 socat(系统需要安装socat依赖插件)

bash 复制代码
yum install -y socat

安装rabbitmq

执行安装命令:

bash 复制代码
rpm -Uvh rabbitmq-server-3.9.15-1.el8.noarch.rpm

启用rabbitmq服务

开始启动的时候, 可以在控制直接输入:

bash 复制代码
rabbitmq-server

查看上图中的日志, 看看是否正常, 有没有一直在刷日志,看看控制台,登陆成功就ok了, 如果一直在刷日志, 说明启动失败, 需要修改参数, 请看后面遇到的问题章节

如果上面启动服务调试一切正常后, 可用下面的命令启动服务

bash 复制代码
systemctl start rabbitmq-server 

查看状态

bash 复制代码
systemctl status rabbitmq-server 

我启动时报了一个错误, erl not found, 那么就去安装目录启动, 执行下面的命令, 查找安装的目录:

bash 复制代码
find / -name rabbitmq-server

我的在以下目录

进入bin目录, 执行

./rabbitmq-server

至此, 安装完毕, 打开网页, 输入http://xxx:15672
如果提示这个: User can only log in via localhost, 则需要创建用户

创建好用户后, 再次登录, 就正常了

以下是管理用户的命令

#新增用户

bash 复制代码
rabbitmqctl add_user rabbit rabbitpwd

#设置标签

bash 复制代码
rabbitmqctl set_user_tags user administrator

#赋权

bash 复制代码
rabbitmqctl set_permissions -p / user ".*" ".*" ".*"

#查看用户

bash 复制代码
rabbitmqctl list_users

遇到的问题

第一次启动时查看日志, 提示错误信息为:

Ranch acceptor reducing accept rate: out of file descriptors

这个是服务器的最大打开文件数量显示,可以用以下命令查看一下:

bash 复制代码
#看一下默认大小
ulimit -n
#设置大小
ulimit -n 524288

再次启动, 如果不提示错误了, 下面就不用设置了

bash 复制代码
vim /etc/security/limits.conf 

在最后增加:

bash 复制代码
* soft nofile 65535
* hard nofile 65535

然后执行:

bash 复制代码
sysctl -p

再次启动提示控制台提示错误: Cookie file /var/lib/rabbitmq/.erlang.cookie must be accessible by owner only, 这个是因为.erlang.cookeie这个文件的问题, 我就直接把/root/下的这个文件拷贝到/var/lib/rabbitmq下面了

再次启动提示: Error when reading /var/lib/rabbitmq/.erlang.cookie: eacces

执行以下命令

bash 复制代码
sudo chmod 600 /var/lib/rabbitmq/.erlang.cookie
sudo chown rabbitmq:rabbitmq /var/lib/rabbitmq/.erlang.cookie

注意: .erlang.cookie这个文件一定要处理好, 否则会一直出错, 一定要仔细看错误信息

启动时日志一直在刷连接5672, 然后关闭连接, 这种情况, 我是直接重启一下服务器就好了

再次启动, 正常了

Good luck~~

相关推荐
running thunderbolt1 小时前
项目---网络通信组件JsonRpc
linux·服务器·c语言·开发语言·网络·c++·性能优化
影子24011 小时前
Windows Server2016 服务器安装JDK,一直卡在“应用程序正在为首次使用作准备,请稍候” ,导致jdk安装失败解决方案
运维·服务器·windows·jdk
_OP_CHEN2 小时前
Linux 系统编程:(一)从历史演进到 XShell 远程登录实操
linux·运维·服务器·centos·unix·xshell
为java加瓦3 小时前
Rust 的类型自动解引用:隐藏在人体工学设计中的魔法
java·服务器·rust
未来之窗软件服务3 小时前
操作系统应用开发(二十八)rust OIDC服务器—东方仙盟筑基期
服务器·rustdesk·仙盟创梦ide·东方仙盟
杨云龙UP4 小时前
小工具大体验:rlwrap加持下的Oracle/MySQL/SQL Server命令行交互
运维·服务器·数据库·sql·mysql·oracle·sqlserver
阿巴~阿巴~4 小时前
使用 C 语言连接 MySQL 客户端(重点)
服务器·数据库·sql·mysql·ubuntu
白水先森5 小时前
Python 字符串与布尔值详解
java·服务器·前端
is08155 小时前
全志 H3 armbian 备份
linux·服务器·网络
Paul_09209 小时前
golang面经——内存相关模块
服务器·网络·golang