RabbitMQ 服务器在安装之前需要安装 erlang。 最新版本的 RabbitMQ 3.8.0 需要 Erlang 21.3 以上的版本支持。 在这里,我们需要在你的 CentOS 中安装 Erlang 21.3.8.8 版本。 下载地址和软件更新 Erlang 21.3.8.8 版本的下载地址,请参考链接: https://packagecloud.io/rabbitmq/erlang/packages/el/7/erlang-21.3.8.8-1.el7.x86_64.rpm RabbitMQ 3.8.0 的下载地址,请参考链接:https://www.rabbitmq.com/install-rpm.html 使用登录上你的 CentOS 7 服务器后,首先需要查看你的服务器是否安装了 wget,如果没有安装 wget,请运行 yum install wget 进行安装。 yum install wget 当 wget 安装完成后,运行 yum update 来更新你的服务器。 安装 Erlang 首先你需要下载 Erlang ,然后进行安装,在上面提到的地址 https://packagecloud.io/rabbitmq/erlang/packages/el/7/erlang-21.3.8.8-1.el7.x86_64.rpm 中的右侧有一个 wget 的地址。 你可以运行 wget --content-disposition https://packagecloud.io/rabbitmq/erlang/packages/el/7/erlang-21.3.8.8-1.el7.x86_64.rpm/download.rpm 来进行下载。 当你下载到你的本地计算机后,运行命令 yum localinstall rabbitmq-server-3.8.0-1.el7.noarch.rpm 来安装你下载的 rpm 包。 当你安装完成后,你可以运行命令 erl -version 来查看你安装的 erl 版本。 在这里,你可以看到这显示的版本低 Erlang emulator 版本,与你下载的 Erlang 版本是不同的。 安装 RabbitMQ 运行下面的命令,将 RabbitMQ 下载到你服务器上。 wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.0/rabbitmq-server-3.8.0-1.el7.noarch.rpm 当你下载完成后,你需要运行下面的命令来将 Key 导入。 rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc 使用 yum 进行本地安装,运行命令: yum localinstall rabbitmq-server-3.8.0-1.el7.noarch.rpm 当安装完成后,你可以使用命令来启动 rabbitmq 服务器: systemctl start rabbitmq-server RabbitMQ 防火墙配置 RabbitMQ 的运行需要一系列的端口。因此你需要配置你的防火墙将下面的端口打开。 如果你使用的是 firewalld,那么请依次执行下面的命令。 打开防火墙端口: firewall-cmd --zone=public --permanent --add-port=4369/tcp firewall-cmd --zone=public --permanent --add-port=25672/tcp firewall-cmd --zone=public --permanent --add-port=5671-5672/tcp firewall-cmd --zone=public --permanent --add-port=15672/tcp firewall-cmd --zone=public --permanent --add-port=61613-61614/tcp firewall-cmd --zone=public --permanent --add-port=1883/tcp firewall-cmd --zone=public --permanent --add-port=8883/tcp 将防火墙配置重新载入: firewall-cmd --reload 绝大部分情况,当你执行完上面的命令后,你的 RabbitMQ 应该能够正常访问了。 如果你的服务器还启用了 SELinux 的话,你还需要执行下面的命令来让让 RabbitMQ 服务器能够接收发送网络数据: setsebool -P nis_enabled 1 RabbitMQ 设置自动启动 在安装完成后,我们希望 RabbitMQ 能开机自动启动。 请执行下面的命令,来让 RabbitMQ 随着计算机开机后自动启动: systemctl enable rabbitmq-server 使用下面命令查看 RabbitMQ 的进程运行状态: systemctl status rabbitmq-server 根据服务器的不同,会有不同的输出,我们的输出如下,表示 RabbitMQ 目前是正在运行的。 [root@vps263579 yhu]# systemctl status rabbitmq-server ● rabbitmq-server.service - RabbitMQ broker Loaded: loaded (/usr/lib/systemd/system/rabbitmq-server.service; enabled; vendor preset: disabled) Active: active (running) since Fri 2019-10-11 14:10:14 EDT; 9h ago Main PID: 14895 (beam.smp) Status: "Initialized" CGroup: /system.slice/rabbitmq-server.service ├─14895 /usr/lib64/erlang/erts-10.3.5.6/bin/beam.smp -W w -A 64 -MBas ageffcbf -MHas ageffcbf -MBlmbcs 512 -MHlmbcs 512 -MMmcs 30 -P 1048576 -t 5000000 -stbt db -zdbbl 128000 -K true -- -root /usr/lib64/erlang -progn... ├─15123 /usr/lib64/erlang/erts-10.3.5.6/bin/epmd -daemon ├─15259 erl_child_setup 32768 ├─15280 inet_gethost 4 └─15281 inet_gethost 4 RabbitMQ 启用 Web 管理界面 在默认的情况下 RabbitMQ 的 Web 管理控制台是没有启用的,你需要通过下面的命令来进行启用。 安装 Web 管理界面的插件: rabbitmq-plugins enable rabbitmq_management 提供 RabbitMQ 用户和对用户使用的权限进行赋权: chown -R rabbitmq:rabbitmq /var/lib/rabbitmq/ 分别执行下面的命令: rabbitmqctl add_user admin StrongPassword…