阿里云服务器部署RabbitMQ流程

阿里云百科分享使用阿里云服务器部署RabbitMQ流程,RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件,用于在分布式系统中存储转发消息,有良好的易用性、扩展性和高可用性。本文介绍如何通过ECS实例部署RabbitMQ。

目录

前提条件

镜像部署RabbitMQ

手动部署RabbitMQ


前提条件

已创建网络类型为专有网络的安全组,并且在安全组的入方向添加规则并放行80、5672及15672端口,如果您使用SSH远程连接Linux实例,还需要放行22端口。 具体操作,请参见添加安全组规则

  • 操作系统:公共镜像CentOS 7.8 64位
  • ECS云服务器:aliyunbaike.com/go/ecs
  • RabbitMQ版本:3.7.8
  • erlang版本:21.1
  • JDK版本:1.8.0_282

镜像部署RabbitMQ

完成以下操作,通过镜像部署RabbitMQ:

  1. 单击RabbitMQ环境 ( CentOS7.9 )进入镜像详情页。

    您可以通过镜像详情页获取镜像信息以及使用指南。

  2. 单击立即购买。

  3. 在自定义购买页,镜像区域已自动设置为您购买的镜像。根据页面提示,完成配置项并购买ECS实例。配置时需注意:

    • 为实例分配公网IPv4地址。
    • 选择前提条件中已配置的安全组。
    • 其他配置您可以按需选择。具体操作,请参见使用向导创建实例
  4. 获取ECS实例的公网IP地址。

    1. 登录阿里云服务器
    2. 在左侧导航栏,选择实例与镜像 > 实例。
    3. 在顶部菜单栏处,选择目标ECS实例所在地域。
    4. 找到目标ECS实例,在IP 地址列获取该实例的公网IP地址。
  5. 在浏览器地址栏中输入公网IP地址并回车,下载操作文档。

  6. 远程连接Linux实例。 具体操作,请参见通过密码或密钥认证登录Linux实例

  7. 初始化RabbitMQ。

    cd /root/oneinstack 
    ./init_rabbitmq.sh
    

    根据提示与操作文档内容,输入对应的信息:

    1. 输入操作系统主机名并回车。本示例中,使用默认值rabbit
    2. 输入rabbitmq的用户名并回车。
    3. 输入rabbitmq的密码并回车。
    4. 输入y并回车,开始初始化RabbitMQ。
  8. 通过浏览器访问http://ECS实例的公网IP:15672,进入管理页面。

手动部署RabbitMQ

  1. 创建并远程连接Linux实例。

    1. 创建实例。具体操作,请参见使用向导创建实例。配置资源时您需要注意:
      • 为实例分配公网IPv4地址。
      • 选择前提条件中已配置的安全组。
      • 其他配置您可以按需选择。
    2. 远程连接实例。 具体操作,请参见通过密码或密钥认证登录Linux实例
  2. 安装erlang。

    1. 运行以下命令,安装erlang所需要的依赖包。

      yum install -y make gcc gcc-c++ m4 openssl openssl-devel ncurses-devel unixODBC unixODBC-devel java java-devel
      
    2. 运行以下命令,下载erlang安装包。

      wget http://erlang.org/download/otp_src_21.1.tar.gz
      
    3. 运行以下命令,解压erlang安装包。

      tar -zxvf otp_src_21.1.tar.gz
      
    4. 运行以下命令,进入erlang安装包的解压路径,并为erlang创建一个新的目录。

      cd otp_src_21.1
      mkdir -p /usr/local/erlang
      
    5. 依次运行以下命令,编译并安装erlang。

      ./configure --prefix=/usr/local/erlang
      
      vb 复制代码
      `make && make install`
    6. 安装完成后,运行以下命令,为erlang配置环境变量。

      echo 'export PATH=$PATH:/usr/local/erlang/bin' >> /etc/profile
      
    7. 运行以下命令,使环境变量立即生效。

      source /etc/profile
      
    8. 运行以下命令,返回系统的/root目录,然后查看erlang版本,确认是否安装成功。

      cd
      erl -version
      

      返回如下信息表示erlang已成功安装。

  3. 下载并安装RabbitMQ。 RabbitMQ对Erlang的版本具有一定限制,本示例使用的Erlang为21.1版本,因此选择下载RabbitMQ 3.7.8版本。

    1. 运行以下命令,下载RabbitMQ安装包。

      wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.8/rabbitmq-server-generic-unix-3.7.8.tar.xz
      
    2. 运行以下命令,解压RabbitMQ安装包。

      tar -xvf rabbitmq-server-generic-unix-3.7.8.tar.xz
      
    3. 解压完成后,运行以下命令,为RabbitMQ配置环境变量。

      echo 'export PATH=$PATH:/root/rabbitmq_server-3.7.8/sbin' >> /etc/profile
      
    4. 运行以下命令,使环境变量立即生效。

      source /etc/profile
      
  4. 配置RabbitMQ。

    1. 运行以下命令,启动RabbitMQ并后台运行。

      rabbitmq-server -detached
      

      注意 该命令只在当前运行的系统环境下启动RabbitMQ,一旦服务器重启,RabbitMQ服务将不会自动启动。因此,建议您通过阿里云的云助手功能,设置RabbitMQ开机自启动。具体操作,请参见通过云助手设置RabbitMQ开机自启动

    2. 运行以下命令,启动RabbitMQ监控插件。

      rabbitmq-plugins enable rabbitmq_management
      

      如果您需要关闭RabbitMQ监控插件,可以运行rabbitmq-plugins disable rabbitmq_management命令。

    3. 为保证数据安全,建议您运行以下命令,删除默认用户。RabbitMQ默认的账号用户名和密码都是guest

      rabbitmqctl delete_user guest
      
    4. 创建RabbitMQ管理员用户。

      1. 运行以下命令,创建一个新用户。

        rabbitmqctl add_user <用户名> <密码>
        

        其中,<用户名>和<密码>为您自定义的信息。

      2. 运行以下命令,将创建的新用户设置为管理员。

        rabbitmqctl set_user_tags <用户名> administrator
        
      3. 运行以下命令,赋予新创建的用户所有权限。

        rabbitmqctl set_permissions -p / <用户名> ".*" ".*" ".*"
        
  5. 在本地主机中,使用浏览器访问Linux实例的公网IP:15672

    显示如下页面,说明RabbitMQ安装成功。

  6. 输入已创建的RabbitMQ管理员用户名和密码后,单击Login,进入RabbitMQ管理界面。 RabbitMQ管理界面展示信息如下所示:

以上转自阿里云官方文档。

相关推荐
CodingBrother3 小时前
Kafka 与 RabbitMQ 的联系
分布式·kafka·rabbitmq
小安运维日记3 小时前
CKA认证 | Day3 K8s管理应用生命周期(上)
运维·云原生·容器·kubernetes·云计算·k8s
.生产的驴3 小时前
SpringCloud Gateway网关路由配置 接口统一 登录验证 权限校验 路由属性
java·spring boot·后端·spring·spring cloud·gateway·rabbitmq
JDS_DIJ3 小时前
RabbitMQ
java·rabbitmq·java-rabbitmq
简 洁 冬冬14 小时前
037 RabbitMQ集群
rabbitmq·集群
小码哥呀16 小时前
RabbitMQ集群搭建
分布式·rabbitmq
眷怀18 小时前
网卡绑定bonding
linux·运维·服务器·网络·云计算
.生产的驴18 小时前
SpringBootCloud 服务注册中心Nacos对服务进行管理
java·spring boot·spring·spring cloud·tomcat·rabbitmq·java-rabbitmq
数勋API20 小时前
银行卡归属地查询API接口如何用PHP调用
开发语言·云计算·php
tmgmforex20241 天前
亚马逊云计算部门挑战英伟达,提供免费AI计算能力
人工智能·科技·云计算