zoukankan      html  css  js  c++  java
  • 在 CentOS 7 上安装 RabbitMQ

    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
    rabbitmqctl set_user_tags admin administrator
    rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"

    针对上面命令的解释是,第一个命令创建了一个 admin 的用户,这个用户使用的密码为 StrongPassword。

    你可以使用不同的用户名,在我们执行的上面的命令中,用户登录使用的密码为字符 StrongPassword,你可以将这个字符修改为其他的字符,或者你也可以登录成功后在 UI 界面中进行修改。

    后面的话是针对这个用户进行赋权。

    当上面命令执行成功后,你可以重启你的 RabbitMQ,然后通过浏览器进行登录。UI 界面使用的端口是 15672。因此访问的 URL 为你服务器的地址 + 15672。

    http://Your_Server_IP:15672/

    如果一切正常,你应该能够看到下面的登录界面:

    如果你不能访问下面的登录界面,有可能是你的服务器防火墙。

    最简单的办法是先禁用服务器的防火墙以确定所有的进程是正常运行的。

    如果你登录成功后,你应该能够看到下面 RabbitMQ 的运行界面:

    https://www.cwiki.us/display/RabbitMQZH/Install+RabbitMQ+Server+on+CentOS+7

  • 相关阅读:
    GOF23设计模式汇总
    获取表单提交MVC错误信息
    Spring.Net
    简单工厂、工厂方法和抽象工厂
    Json和JsonP
    mysql8无法用navicat连接(mysql8加密方式的坑)
    (4.16)mysql备份还原——物理备份之XtraBackup实践
    mysql如何下载历史版本?
    如何测试端口通不通(四种方法)
    linux移动复制删除命令
  • 原文地址:https://www.cnblogs.com/huyuchengus/p/11660809.html
Copyright © 2011-2022 走看看