1.安装RabbitMQ之前需要安装Erlang环境,因为RabbitMQ底层通讯是通过Erlang实现的。
官网下载指定版本,右侧有下载命令提示
https://packagecloud.io/rabbitmq/rabbitmq-server/packages/el/7/rabbitmq-server-3.8.22-1.el7.noarch.rpm
centos8安装RabbitMQ
一、安装erlang【mq编译需要的】
# 添加仓库
curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash
Detected operating system as centos/8.
# 安装erlang
dnf install erlang
二、导入密钥
rpm --import https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
三、在/etc/yum.repos.d目录下添加rabbitmq.repo文件,内容如下:根据需要的版本修改baseurl链接
[bintray-rabbitmq-server]
name=bintray-rabbitmq-rpm
baseurl=https://dl.bintray.com/rabbitmq/rpm/rabbitmq-server/v3.8.x/el/8/
gpgcheck=0
repo_gpgcheck=0
enabled=1
四、下载rabbitmq
#el8
wget --content-disposition https://packagecloud.io/rabbitmq/rabbitmq-server/packages/el/8/rabbitmq-server-3.8.22-1.el8.noarch.rpm/download.rpm
#el7
wget --content-disposition https://packagecloud.io/rabbitmq/rabbitmq-server/packages/el/7/rabbitmq-server-3.8.22-1.el7.noarch.rpm/download.rpm
五、安装rabbitmq
dnf install rabbitmq-server-3.8.22-1.el7.noarch.rpm/download.rpm
六、设置开机起动
chkconfig rabbitmq-server on
七、起动、停止命令
/sbin/service rabbitmq-server start
/sbin/service rabbitmq-server stop
八、启动插件
rabbitmq-plugins enable rabbitmq_management
错误场景
1. 使用 systemctl start rabbitmq-server.service 命令启动
Job for rabbitmq-server.service failed because the control process exited with error code. See "systemctl status rabbitmq-server.service" and "journalctl -xe" for details.
错误信息里说,让我们使用命令 systemctl status rabbitmq-server.service 或 journalctl -xe 查看详情。
2. 使用 journalctl -xe 命令进一步查看问题
我们看到报错信息:ERROR: epmd error for host 192: badarg (unknown POSIX error)
我用这条错误信息百度后看到博客:
https://blog.csdn.net/fvdfsdafdsafs/article/details/89332506
最终顺利解决。
解决方式
1. 创建配置文件
// 跳转目录
cd /etc/rabbitmq/
// 创建文件
vim rabbitmq-env.conf
2. 添加内容
NODENAME=rabbit@localhost
保存后再次启动 RabbitMQ,问题解决。
无法进入后台管理面板[0.0.0.0:15672]端口未开启
2.安装Erlang环境后,安装RabbitMQ,但在RabbitMQ服务成功启动后,却无法访问http://127.0.0.1:15672的原因是因为RabbitMQ默认禁用了管理界面,所以只需要通过命令重新开启管理界面即可。
步骤如下:
(1)打开RabbitMQ Server的开始菜单安装目录
(2)选择RabbitMQ Command Prompt 命令行并打开,
输入:
rabbitmq-plugins enable rabbitmq_management
再启动sever 尝试访问,问题解决。
九、使用http://ip:15672登录,默认用户为guest,密码为guest
提示:
说只能通过localhost来登录
第一种
创建/etc/rabbitmq/rabbitmq.config文件并添加以下内容
[{rabbit, [{loopback_users, []}]}].
#然后重启rabbitmq服务即可
第二种
再添加个用户即可,如下所示:
rabbitmqctl add_user admin 111111
#Adding user "admin" ...
#Done. Don't forget to grant the user permissions to some virtual hosts! See 'rabbitmqctl help set_permissions' to learn more.
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
#Setting permissions for user "admin" in vhost "/" ...
set_user_tags admin administrator
#Setting tags for user "admin" to [administrator] ...
不用重启服务,直接访问即可。
# create a user
rabbitmqctl add_user full_access s3crEt
# tag the user with "administrator" for full management UI and HTTP API access
rabbitmqctl set_user_tags full_access administrator
创建用户时报错如下信息:
把端口25672,4369放开后还是报上述错误,最后在https://blog.csdn.net/y_k_y/article/details/81350274 中找到了解决办法,在/etc/hosts文件中把主机名添加进去
添加前
添加后
十、设置添加的用户为管理员权限,上一步有命令
十一、给新用户所有权限
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"