简介
本文介绍了如何在天翼云上使用弹性云主机的Linux实例部署RabbitMQ。RabbitMQ是采用Erlang语言实现AMQP(Advanced Message Queuing Protocol,高级消息队列协议)的消息中间件,它最初起源于金融系统,用于在分布式系统中存储转发消息。RabbitMQ凭借其高可靠、易扩展、高可用及丰富的功能特性成为目前非常热门的一款消息中间件。
前提条件
弹性云主机所在安全组添加了如下表所示的安全组规则。
表 安全组规则
方向 | 类型 | 协议 | 端口/范围 | 源地址 |
---|---|---|---|---|
入方向 | IPv4 | TCP | 5672 | 0.0.0.0/0 |
入方向 | IPv4 | TCP | 15672 | 0.0.0.0/0 |
操作步骤
1.安装相关依赖包和perl。
a.登录弹性云主机。
b.执行以下命令,安装相关依赖包。
yum -y install make gcc gcc-c++ m4 ncurses-devel openssl-devel unixODBC-devel
c.执行如下命令,安装perl。
yum install perl
2.安装erlang。
关于erlang的安装请参考Erlang官方资料。
a.添加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
b.在/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保存后退出。
c.执行以下命令安装erlang
sudo yum install erlang
执行以下命令安装esl-erlang
sudo yum install esl-erlang
d.执行如下命令,检查安装结果。
erl -version
回显类似如下信息,说明erlang安装成功。
[root@ecs-rabbitmq ~]# erl -version
Erlang (SMP,ASYNC_THREADS,HIPE) (BEAM) emulator version 11.1.7
3.安装RabbitMQ
a.执行如下命令,进入用户主目录。
cd
b.执行如下命令,下载RabbitMQ安装包。
1.打开Rabbit官网。
2.点击“Get Started”。
图 Get Started
3.找到并单击“Download+Installation”。
图 Download+Installation
4.根据云主机的操作系统选择下载地址。例如本例中使用的是CentOS 7.x的下载地址。
图 选择下载地址
5.在服务器上执行执行以下命名下载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
6.执行以下命令安装RabbitMQ安装包。
yum install rabbitmq-server-3.8.12-1.el7.noarch.rpm
c.安装完毕,启动RabbMQ
service rabbitmq-server start
d.查看RabbMQ状态。
service rabbitmq-server status
4.执行如下命令,启用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.
5.执行如下命令,创建一个新用户。
rabbitmqctl add_user 用户名 密码
命令示例:
rabbitmqctl add_user root 123456
6.执行如下命令,设置用户为管理员。
rabbitmqctl set_user_tags 用户名 administrator
命令示例:
rabbitmqctl set_user_tags root administrator
7.执行如下命令,赋予用户所有权限。
rabbitmqctl set_permissions -p / 用户名 '.' '.' '.*'
命令示例:
rabbitmqctl set_permissions -p / root '.' '.' '.*'
8.执行如下命令,在后台启动RabbitMQ。
rabbitmq-server -detached
9.使用浏览器访问** **“http://弹性公网IP:15672”,显示如下页面,说明RabbitMQ安装成功。
10.输入步骤5创建的用户名和密码后点击“Login”,进入RabbitMQ管理界面。