环境
系统:Alibaba Cloud 3 (OpenAnolis Edition) + rabbitmq 3.12.4
注意:如果是Alibaba Cloud 4 参考文章最后内容
现象
启动和重启 都启动不起来
原因
mq必须依赖erlang, 有的系统可能自带了erlang,但是erlang版本过低和mq的版本不匹配,如3.12最低支持25.x、26.x(推荐)
这是匹配的版本
这是没有装erlang,直接安装mq肯定是启动不起来的
执行安装,可能默认安装较低版本,mq是启动不起来的
yuminstall-yerlang修复
先卸载老的
yum remove-yerlang*让yum 能从指定地址安装 Erlang
cat>/etc/yum.repos.d/rabbitmq-erlang.repo<<EOF [rabbitmq-erlang] name=rabbitmq-erlang baseurl=https://packagecloud.io/rabbitmq/erlang/el/8/\$basearchenabled=1 gpgcheck=0 repo_gpgcheck=1 gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey EOF更新系统缓存后安装,避免从老地址下载
yum clean all yum makecache yuminstall-yerlangdebian
sudoaptupdatesudoaptinstall-yerlang安装成功如下:
再次启动,状态启动了,由于装mq是,系统没有erlang,故没有安装完整,web仍然启动不起来
卸载mq,在安装即可
两个都启动成功
docker 环境可能通过面板启动按钮,无法启动,可以直接在命令行启动
sudoservicerabbitmq-server start如何登录不了,修改一下密码即可
Alibaba Cloud 4 按上方内容仍然启动不起来
已安装好erlang,手动安装mq
安装mq错误如下:
原因:
操作系统太新,宝塔脚本尚未完全适配,宝塔安装脚本中的“文件名变量拼接 Bug”从最后一次的报错日志中可以清晰地看到:error: /tmp/esl-erlang_26.0.2-1alinux.: not an rpm package宝塔脚本在识别你的系统后,将最终去执行的 RPM 文件名拼成了以 “点号 .” 结尾的奇怪路径(即alinux.)
解决
手动安装
# 1. 直接使用系统的 yum 安装 rabbitmq-serveryuminstall-yrabbitmq-server# 2. 启动 RabbitMQ 服务systemctl start rabbitmq-server# 3. 设置为开机自动启动systemctlenablerabbitmq-server# 4. 开启 RabbitMQ 的网页管理后台rabbitmq-pluginsenablerabbitmq_management账号操作
# 1. 创建新用户(设置密码)rabbitmqctl add_user admin YourStrongPassword# 2. 授予管理员标签rabbitmqctl set_user_tags admin administrator# 3. 授予所有资源的读写权限rabbitmqctl set_permissions-p/ admin".*"".*"".*"# 4. 查看确认rabbitmqctl list_users