华为云服务器手工部署RabbitMQ(CentOS 7.4)_云淘科技

简介

本文介绍了如何在华为云上使用弹性云服务器的Linux实例部署RabbitMQ。RabbitMQ是采用Erlang语言实现AMQP(Advanced Message Queuing Protocol,高级消息队列协议)的消息中间件,它最初起源于金融系统,用于在分布式系统中存储转发消息。RabbitMQ凭借其高可靠、易扩展、高可用及丰富的功能特性成为目前非常热门的一款消息中间件。

您还可以选择Solution as Code一键式部署方式自动部署高可用的RabbitMQ集群,详细内容请参见快速部署高可用的RabbitMQ集群。

前提条件

弹性云服务器所在安全组添加了如下表所示的安全组规则,具体步骤参见为安全组添加安全组规则。

表1 安全组规则

方向

类型

协议

端口/范围

源地址

入方向

IPv4

TCP

5672

0.0.0.0/0

入方向

IPv4

TCP

15672

0.0.0.0/0

操作步骤

安装相关依赖包和perl。

登录弹性云服务器。
为了更好的获取和更新系统和软件,建议您更新镜像源为华为云镜像源,详细操作,请参见如何使用自动化工具配置华为云镜像源(x86_64和ARM)?。
执行以下命令,安装相关依赖包。

yum -y install make gcc gcc-c++ m4 ncurses-devel openssl-devel unixODBC-devel

执行如下命令,安装perl。

yum install perl

安装erlang。

关于erlang的安装请参考Erlang官方资料。

添加erlang存储库到系统

wget https://packages.erlang-solutions.com/erlang-solutions-2.0-1.noarch.rpm

rpm -Uvh erlang-solutions-2.0-1.noarch.rpm

或手动添加存储库条目

rpm –import https://packages.erlang-solutions.com/rpm/erlang_solutions.asc

在/etc/yum.repos.d/目录下新建一个文件rabbitmq-erlang.repo,然后将下面的粘帖进去

cd /etc/yum.repos.d/

vi rabbitmq-erlang.repo

[erlang-solutions]
name=CentOS $releasever - $basearch - Erlang Solutions
baseurl=https://packages.erlang-solutions.com/rpm/centos/$releasever/$basearch
gpgcheck=1
gpgkey=https://packages.erlang-solutions.com/rpm/erlang_solutions.asc
enabled=1

Esc键退出编辑模式,并输入:wq保存后退出。

执行以下命令安装erlang

sudo yum install erlang

执行以下命令安装esl-erlang

sudo yum install esl-erlang

执行如下命令,检查安装结果。

erl -version

回显类似如下信息,说明erlang安装成功。

[root@ecs-rabbitmq ~]# erl -version
Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 11.1.7

安装RabbitMQ

执行如下命令,进入用户主目录。

cd

执行如下命令,下载RabbitMQ安装包。

打开Rabbit官网。
单击“Get Started”。

图1 Get Started

找到并单击“Download+Installation”。

图2 Download+Installation

根据云服务器的操作系统选择下载地址。例如本例中使用的是CentOS 7.x的下载地址。

图3 选择下载地址

在服务器上执行以下命令下载RabbitMQ安装包。

例如3.b.iv查找的下载地址是:

https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.12/rabbitmq-server-3.8.12-1.el7.noarch.rpm

则执行的命令如下:

wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.12/rabbitmq-server-3.8.12-1.el7.noarch.rpm

如果下载过程中提示“Unable to establish SSL connection.”

可以在wget命令后加–no-check-certificate,重复执行几次,即可下载。

例如:

wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.12/rabbitmq-server-3.8.12-1.el7.noarch.rpm –no-check-certificate

执行以下命令安装RabbitMQ安装包。

yum install rabbitmq-server-3.8.12-1.el7.noarch.rpm

安装完毕,启动RabbMQ

service rabbitmq-server start

查看RabbMQ状态。

service rabbitmq-server status

执行如下命令,启用RabbitMQ的web管理界面。

rabbitmq-plugins enable rabbitmq_management

回显类似如下信息:

[root@ecs-rabbitmq ~]# rabbitmq-plugins enable rabbitmq_management
Enabling plugins on node rabbit@ecs-rabbitmq:
rabbitmq_management
The following plugins have been configured:
  rabbitmq_management
  rabbitmq_management_agent
  rabbitmq_web_dispatch
Applying plugin configuration to rabbit@ecs-2b36...
The following plugins have been enabled:
  rabbitmq_management
  rabbitmq_management_agent
  rabbitmq_web_dispatch

started 3 plugins.

执行如下命令,创建一个新用户。

rabbitmqctl add_user 用户名 密码

命令示例:

rabbitmqctl add_user root 123456

执行如下命令,设置用户为管理员。

rabbitmqctl set_user_tags 用户名 administrator

命令示例:

rabbitmqctl set_user_tags root administrator

执行如下命令,赋予用户所有权限。

rabbitmqctl set_permissions -p / 用户名 ‘.*’ ‘.*’ ‘.*’

命令示例:

rabbitmqctl set_permissions -p / root ‘.*’ ‘.*’ ‘.*’

执行如下命令,在后台启动RabbitMQ。

rabbitmq-server -detached

使用浏览器访问 “http://弹性公网IP:15672”,显示如下页面,说明RabbitMQ安装成功。

输入步骤5创建的用户名和密码后点击“Login”,进入RabbitMQ管理界面。

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家