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~~

相关推荐
xu_yule1 小时前
Linux_12(进程信号)内核态和用户态+处理信号+不可重入函数+volatile
linux·运维·服务器
2501_941870562 小时前
多语言微服务架构下的分布式事务管理与最终一致性实践
rabbitmq
虾..2 小时前
Linux 环境变量&&进程优先级
linux·运维·服务器
2501_941878742 小时前
智能推荐系统与多语言微服务实现:Python、Java、C++与Go全栈开发实战
rabbitmq
2501_941809144 小时前
Python在高并发互联网系统开发中的架构设计与性能优化全流程实践分享
rabbitmq
2501_941145854 小时前
基于 Node.js 与 NestJS 构建高并发微服务与实时 API 系统实践分享
rabbitmq
郝学胜-神的一滴4 小时前
Linux命名管道:创建与原理详解
linux·运维·服务器·开发语言·c++·程序人生·个人开发
宾有为4 小时前
【Linux】Linux 常用指令
linux·服务器·ssh
wanhengidc5 小时前
云手机性能如何?
运维·服务器·科技·智能手机·云计算
2501_941147115 小时前
Python大数据处理实战:异步IO与协程高效数据解析代码解析
rabbitmq