RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件,用于在分布式系统中存储转发消息,有良好的易用性、扩展性和高可用性。RabbitMQ使用Erlang语言编写服务器端,并支持多种客户端,如Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP和STOMP,同时也支持AJAX。

前提条件

使用本教程进行操作前,请确保您已经注册了阿里云账号。如还未注册,请先完成账号注册

背景信息

您可以通过以下两种方式部署RabbitMQ。
  • 镜像部署:适合新手使用。具体操作,请参见镜像部署RabbitMQ
  • 手动部署:适合对Linux命令有基本了解的用户,能够个性化部署。具体操作,请参见手动部署RabbitMQ

镜像部署RabbitMQ

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

  1. 单击RabbitMQ环境 ( CentOS7.3 Erlang19.3 )进入镜像详情页。
  2. 单击立即购买,按提示步骤购买ECS实例。
  3. 登录ECS管理控制台
  4. 在左侧导航栏,单击实例与镜像 > 实例
  5. 选择所购ECS实例所在的地域,并找到所购ECS实例,在IP 地址列获取该实例的公网IP地址。
  6. 在浏览器地址栏中输入公网IP地址,下载操作文档。
    部署RabbitMQ_建站教程_云服务器 ECS 阿里云技术文档 第1张
  7. 远程连接Linux实例。具体步骤请参见使用用户名密码验证连接Linux实例
  8. 初始化RabbitMQ。
    # cd /root/oneinstack 
    # ./init_rabbitmq.sh
    根据提示输入对应的信息:
    1. 输入操作系统主机名并回车。本示例中,使用默认值rabbit
    2. 输入rabbitmq的用户名并回车。
    3. 输入rabbitmq的密码并回车。
    4. 输入y并回车,开始初始化RabbitMQ。
    部署RabbitMQ_建站教程_云服务器 ECS 阿里云技术文档 第2张
  9. 在浏览器上访问http://公网IP:15672,进入管理页面。
    部署RabbitMQ_建站教程_云服务器 ECS 阿里云技术文档 第3张

手动部署RabbitMQ

本教程使用以下操作系统和软件版本:
  • 操作系统:公共镜像CentOS 7.3 64位
  • RabbitMQ版本:rabbitmq-server -3.6.9
  • erlang版本:erlang19.3
  • JDK版本:JDK1.8.0_121

前提条件:请确保已添加安全组规则,放行端口15672和5672入方向规则。

完成以下操作,手动部署RabbitMQ:

  1. 安装依赖包。
    yum -y install make gcc gcc-c++ m4 ncurses-devel openssl-devel unixODBC-devel
  2. 安装erlang。
    1. 下载erlang安装包。
      wget http://erlang.org/download/otp_src_19.3.tar.gz
    2. 解压缩erlang安装包。
      tar xzf otp_src_19.3.tar.gz
    3. 创建一个文件夹。
      mkdir /usr/local/erlang
    4. 编译并安装erlang。
      # cd otp_src_19.3
      # ./configure --prefix=/usr/local/erlang --without-javac
      # make && make install
  3. 修改profile配置文件。
    1. 输入命令vi /etc/profile打开profile配置文件。
    2. 按下i键,然后在文件末尾处添加如下内容:
      export PATH=$PATH:/usr/local/erlang/bin
    3. 按下Esc键,然后输入:wq并回车以保存并关闭文件。
  4. 运行命令source /etc/profile使环境变量生效。
  5. 运行命令erl -version检查安装结果。
  6. 下载RabbitMQ安装包。
    wget -P /root "https://www.rabbitmq.com/releases/rabbitmq-server/v3.6.9/rabbitmq-server-3.6.9-1.el7.noarch.rpm"
  7. 导入签名密钥。
    sudo rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc
  8. 安装RabbitMQ Server。
    # cd /root
    # sudo yum install rabbitmq-server-3.6.9-1.el7.noarch.rpm
  9. 允许RabbitMQ开机自启动。
    sudo systemctl enable rabbitmq-server
  10. 启动RabbitMQ。
    sudo systemctl start rabbitmq-server
  11. 为保证数据安全,建议您删除默认用户。RabbitMQ默认的账号用户名和密码都是guest。
    sudo rabbitmqctl delete_user guest
  12. 创建管理员用户。
    1. 创建一个新用户。
      sudo rabbitmqctl add_user 用户名 密码
    2. 将创建的新用户设置为管理员。
      sudo rabbitmqctl set_user_tags 用户名 administrator
    3. 赋予新创建的用户所有权限。
      sudo rabbitmqctl set_permissions -p / 用户名 ".*" ".*" ".*"
  13. 启用RabbitMQ的web管理界面。
    sudo rabbitmq-plugins enable rabbitmq_management
  14. 使用浏览器访问http://公网IP:15672
    显示如下页面,说明RabbitMQ安装成功。部署RabbitMQ_建站教程_云服务器 ECS 阿里云技术文档 第4张
  15. 输入之前创建的用户名和密码后单击Login,进入RabbitMQ管理界面。
    部署RabbitMQ_建站教程_云服务器 ECS 阿里云技术文档 第5张