美文网首页
RabbitMQ服务在阿里云CentOS7系统安装方法

RabbitMQ服务在阿里云CentOS7系统安装方法

作者: kaixingdeshui | 来源:发表于2020-10-22 10:19 被阅读0次

    最近在阿里云服务上安装RabbitMQ 服务遇到的一些问题,特意记录下,避免走弯路,方便查阅。

    先准备好安装环境,系统CentOS7,Erlang,rabbitmq-server。

    Erlang下载1:

    在下面地址查看安装RabbitMQ需要安装的erlang对应的版本。

    https://www.rabbitmq.com/which-erlang.html
    
    Erlang下载1.png
    Erlang下载2:

    下载地址:

    https://github.com/rabbitmq/erlang-rpm/releases
    
    Erlang下载2.png
    RabbitMQ server下载地址
    https://www.rabbitmq.com/install-rpm.html
    
    image.png

    查看rabbitmq-server历史版本

    https://github.com/rabbitmq/rabbitmq-server/tags
    
    image.png

    Erlang,RabbitMQ server下载下来如下:


    image.png

    第一步:远程终端登录上阿里云服务器
    这里用的是Xshell6命令终端来远程连接阿里云服务。
    把下载下来的安装包复制到阿里云CentOS7系统目录/home/download/下,如下图


    image.png

    文件复制可以通过宝塔控制面板上的文件上传,或者通过Xftp上传:
    宝塔控制面板上传:


    image.png

    Xftp上传:


    image.png

    第二步:安装Erlang Rabbitmq server

    Erlang安装命令

    //
    sudo rpm -Uvh /home/download/erlang-22.3.4.12-1.el7.x86_64.rpm
    //查看erlang的版本
    erl -version
    //安装socat 
    sudo yum install -y socat
    //退出erl 命令(这个不用执行)
    halt().
    
    image.png

    RabbitMQ server安装

    //安装RabbitMQ
    sudo rpm -Uvh /home/download/rabbitmq-server-3.8.9-1.el7.noarch.rpm
    

    第三步 启动和关闭

    //启动RabbitMQ服务
    sudo systemctl start rabbitmq-server
    //查看状态
    sudo systemctl status rabbitmq-server
    //停止服务
    sudo systemctl stop rabbitmq-server
    //设置开机启动
    sudo systemctl enable rabbitmq-server
    
    image.png

    异常情况
    如果在启动RabbitMQ server时报异常了,查看端口5672是否别占用,如果被占用就关闭占用该端口的java应用。

    //查看进程情况
    netstat -naop | grep 5672
    //查看当前运行的java程序
    ps -ef | grep java
    

    第四步 开启web控制台插件

    //开启web控制台插件
    rabbitmq-plugins enable rabbitmq_management
    //关闭web控制台插件
    rabbitmq-plugins disenable rabbitmq_management
    //把端口15672放入安全组,宝塔控制面板安全添加端口15672
    http://公网ip:15672
    

    有一个默认的guest用户,但只能通过localhost访问,所以要添加一个能远程访问的用户


    image.png

    第五步 添加用户 权限

    //添加 用户 密码
    rabbitmqctl add_user admin admin
    //分配操作权限
    rabbitmqctl set_user_tags admin administrator
    //分配资源权限
    //设置权限<即开启远程访问>(如果需要远程连接,例如java项目中需要调用mq,
    //则一定要配置,否则无法连接到mq,admin为要赋予远程访问权限的刚创建的那个账号的名字,
    //必须运行着rabbitmq此命令才能执行)
    rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
    
    image.png

    防火墙添加端口
    RabbitMQ服务启动后,不能访问,需要将端口添加到防火墙:

    //把端口15672放入阿里云安全组,宝塔控制面板安全添加端口15672
    http:// 公网ip:15672
    

    添加端口

    sudo firewall-cmd --zone=public --add-port=4369/tcp --permanent
    sudo firewall-cmd --zone=public --add-port=5672/tcp --permanent
    sudo firewall-cmd --zone=public --add-port=25672/tcp --permanent
    sudo firewall-cmd --zone=public --add-port=15672/tcp --permanent
    //也可以在阿里云控制台的安全组和宝塔控制面板添加外网访问端口
    
    image.png image.png

    重置防火墙

    //添加完端口后要重置
    sudo firewall-cmd --reload
    

    项目中集成RabbitMQ框架

    在SpringBoot项目中集成RabbitMQ框架,在配置文件中替换host:


    image.png

    这样项目就可以访问远程阿里云上的RabbitMQ服务了。

    相关文章

      网友评论

          本文标题:RabbitMQ服务在阿里云CentOS7系统安装方法

          本文链接:https://www.haomeiwen.com/subject/wdudpktx.html