簡介
本文介紹了如何在天翼云上使用彈性云主機的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 //packages.erlang-solutions.com/erlang-solutions-2.0-1.noarch.rpm
rpm -Uvh erlang-solutions-2.0-1.noarch.rpm
或手動添加存儲庫條目
rpm --import //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=//packages.erlang-solutions.com/rpm/centos/$releasever/$basearch
gpgcheck=1
gpgkey=//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查找的下載地址是:
//github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.12/rabbitmq-server-3.8.12-1.el7.noarch.rpm
則執行的命令如下:
wget //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 //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.使用瀏覽器訪問** **“//彈性公網IP:15672”,顯示如下頁面,說明RabbitMQ安裝成功。

10.輸入步驟5創建的用戶名和密碼后點擊“Login”,進入RabbitMQ管理界面。
