溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

MQ(1)-RabbitMq安裝

發(fā)布時(shí)間:2020-07-30 08:11:02 來源:網(wǎng)絡(luò) 閱讀:1195 作者:波羅學(xué) 欄目:網(wǎng)絡(luò)安全


本人安裝的rabbitmq環(huán)境相關(guān)文件,可在本人提供的百度云盤資源進(jìn)行下載。

鏈接:https://pan.baidu.com/s/1bnofK3l 密碼:whdm


一 前言

消息隊(duì)列又稱為MQ,應(yīng)用程序間的消息通信工具,其有利于程序解耦、多語言集成、異步通信、擴(kuò)展和簡單負(fù)載均衡等,是生產(chǎn)-消費(fèi)者模型的典型代表。常見MQ產(chǎn)品有RabbitMQ ZeroMQ Kafka等等。

RabbitMQ,老牌MQ產(chǎn)品,基于erlang語言,實(shí)現(xiàn)對AMQP等協(xié)議的支持,重量級,適合企業(yè)級應(yīng)用開發(fā);

Kafka,linkedin開源MQ產(chǎn)品,追求高吞吐量,適合于大量數(shù)據(jù)的收集業(yè)務(wù),如互聯(lián)網(wǎng)業(yè)務(wù)產(chǎn)生的大量日志數(shù)據(jù);

ZeroMQ,號稱最快的MQ,提供了一套異步消息通信庫,可實(shí)現(xiàn)RabbitMQ不能實(shí)現(xiàn)的高級復(fù)雜隊(duì)列;

Kafka和RabbitMQ都需要搭建消息代理服務(wù)器,采用中間件模式。ZeroMQ采用非中間件模式,不需要搭建消息代理服務(wù)器;


接下來的一段時(shí)間,我會把主要的業(yè)余時(shí)間花費(fèi)在研究這幾款MQ產(chǎn)品之上,暫時(shí)水平有限,關(guān)于它們的具體的使用場景與差異,還需要一點(diǎn)一點(diǎn)研究。今天先上一篇簡單的RabbitMQ安裝教程,系統(tǒng)為centos7。

二 安裝erlang

RabbitMQ采用erlang語言實(shí)現(xiàn)。erlang是一門被設(shè)計(jì)用來編寫并發(fā)、實(shí)時(shí)、分布式系統(tǒng)的新語言,原本是為了電話交換機(jī)開發(fā)的語言。下面源碼編譯安裝。

1. 下載源碼

http://www.erlang.org/download.html 下載最新版的erlang安裝包。
MQ(1)-RabbitMq安裝


2. 解壓安裝

$ tar xvf otp_src_19.1.tar.gz
$ ./configure --prefix=/usr/local/erlang
 --without-javac

$ make
$ make install


3. 配置環(huán)境變量
在/etc/profile.d/下新建erlang.sh
$ vim /etc/profile.d/erlang.sh
加入如下內(nèi)容:

PATH=$PATH:/usr/local/erlang/bin

export PATH

如下使環(huán)境變量生效

$ source /etc/profile.d/erlang.sh


4. 簡單體驗(yàn)

Hello World程序體驗(yàn):

$ vim hello.erl


%%  HellWorld example

%% We define a module called foo

-module(hello).  

%% Export the function print that has 0 arguments

-export([print/0]).


print() ->

    io:format("Hello World!~n").


$ erlc hello.erl    // 編譯

$ erl                    // 交互命令行模式執(zhí)行

效果如下:

MQ(1)-RabbitMq安裝

實(shí)驗(yàn)成功!

三 安裝rabbitmq

1. 安裝依賴項(xiàng)

每個人的系統(tǒng)默認(rèn)有些軟件已經(jīng)安裝,本人這里需要安裝三個依賴項(xiàng)
$ yum install -y libxslt rsync zip


2. 下載rabbitmq二進(jìn)制包

$ cd /usr/local

$ wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.5/rabbitmq-server-3.6.5.tar.xz


3. 安裝

使用二進(jìn)制包安裝很輕松,如下:

$ cd /usr/local/

$ tar Jxvf rabbitmq-server-3.6.5.tar.xz -C . 

$ ln -s rabbitmq_server-3.6.5 rabbitmq

rabbit安裝目錄為/usr/local/rabbitmq


4. 配置環(huán)境變量

在/etc/profile.d/新建rabbitmq.sh
$ vim /etc/profile.d/rabbitmq.sh
添加如下內(nèi)容:
PATH=$PATH:/usr/local/rabbitmq/sbin

export PATH

如下使環(huán)境變量生效

$ source /etc/profile.d/rabbitmq.sh


5. 關(guān)于rabbitmq操作
a. 啟動

前臺運(yùn)行:

$ rabbitmq-server 

MQ(1)-RabbitMq安裝

后臺運(yùn)行:

$ rabbitmq-server -detached

MQ(1)-RabbitMq安裝

b. 關(guān)閉
$ rabbitmqctl stop
c. 查看狀態(tài)
$ rabbitmqctl status


三 關(guān)于WEB管理插件

RabbitMQ提供了一套插件機(jī)制,方便功能擴(kuò)展。這里介紹一個最常用插件rabbitmq_management。這款插件提供了完善的管理和監(jiān)控功能,提供了各項(xiàng)指標(biāo),具體會在之后文章介紹。首先體驗(yàn)一下,如下方法開啟。

1.啟用插件

通過rabbitmq-plugin管理插件,啟用rabbitmq_management插件方法如下:

$ rabbitmq-plugins enable rabbitmq_management
此時(shí)使用默認(rèn)用戶guest、密碼guest,即可登錄訪問http://localhost:15672。但此時(shí)無法遠(yuǎn)程訪問,但實(shí)際場景多為遠(yuǎn)程。


下面解決遠(yuǎn)程訪問問題:

2. 確認(rèn)關(guān)閉防火墻

如無法遠(yuǎn)程登錄訪問http://host:15672,請確認(rèn)防火墻已關(guān)閉。本人系統(tǒng)防火墻已開啟,關(guān)閉方法如下:

$ iptables -F

本人系統(tǒng)centos7,不同系統(tǒng)的機(jī)制需自己確認(rèn)。


3. 環(huán)境變量

RabbitMQ三種環(huán)境變量:

》系統(tǒng)內(nèi)置

》rabbitmq-env.conf設(shè)定變量

》shell環(huán)境變量

優(yōu)先級: shell環(huán)境變量 > rabbit-env.conf > 系統(tǒng)內(nèi)置

此處通過rabbit-env.conf設(shè)定,RabbitMQ安裝目錄下etc/rabbitmq/rabbitmq-env.conf:

$ cd /usr/local/rabbitmq/

$ vim etc/rabbitmq/rabbitmq-env.conf

如下指定rabbitmq配置文件:
RABBITMQ_CONFIG_FILE=/usr/local/rabbitmq/etc/rabbitmq/rabbitmq
上述環(huán)境變量指定rabbitmq配置文件,需添加后綴.config,即真實(shí)文件為/usr/local/rabbitmq/etc/rabbitmq/rabbitmq.config:


4. 配置遠(yuǎn)程訪問

關(guān)于啟用guest遠(yuǎn)程訪問權(quán)限,官網(wǎng)http://www.rabbitmq.com/access-control.html,有如下一段話:

MQ(1)-RabbitMq安裝

按此要求修改RabbitMQ配置文件,如下:

$ vim etc/rabbitmq/rabbitmq.config

添加如下內(nèi)容:

[{rabbit, [
 {tcp_listeners, [5672]},
 {loopback_users, []}
]}].


此時(shí),訪問http://remote_ip:15672,如下:

MQ(1)-RabbitMq安裝


默認(rèn)的用戶名guest、密碼guest,登錄進(jìn)入效果如下:

MQ(1)-RabbitMq安裝

上面就是RabbitMQ運(yùn)行時(shí)狀態(tài)的總覽信息。


到此,RabbitMQ安裝一切OK!


關(guān)于RabbitMQ的簡單安裝就這么多,具體配置、使用與監(jiān)控等更系統(tǒng)技能和其他MQ相關(guān)知識只能待續(xù)嘍 ...


參考文檔:


關(guān)于Erlang入門

http://www.erlang.org/downloads

http://www.csdn.net/article/2015-10-26/2826038-Erlang 

http://www.csdn.net/article/2015-10-26/2826038-Erlang


關(guān)于mq

http://www.rabbitmq.com/access-control.html

http://www.infoq.com/cn/articles/kafka-analysis-part-1/

https://www.zhihu.com/question/22480085


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI