CentOS安裝RabbitMQ

CentOS安裝RabbitMQ

安裝erlang

配置epel源

centos6.x
wget -O /etc/yum.repos.d/epel.repo [http://mirrors.aliyun.com/repo/epel-6.repo](http://mirrors.aliyun.com/repo/epel-6.repo)
centos7.x
wget -O /etc/yum.repos.d/epel.repo [http://mirrors.aliyun.com/repo/epel-7.repo](http://mirrors.aliyun.com/repo/epel-7.repo)

安裝erlang源

erlang-solutions.repo

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

安裝erlang

yum install erlang
國外的源,下載過程會超時,需要重復多次

安裝完成后可以用erl命令查看是否安裝成功
erl -version

安裝rabbitmq

rabbitmq.repo

[bintray-rabbitmq-server]
name=bintray-rabbitmq-rpm
baseurl=https://dl.bintray.com/rabbitmq/rpm/rabbitmq-server/v3.7.x/el/7/
gpgcheck=0
repo_gpgcheck=0
enabled=1

yum install -y rabbitmq-server

啟動rabbitmq

chkconfig rabbitmq-server on
/sbin/service rabbitmq-server start

需要禁止selinux

安裝Web管理界面插件

終端輸入:
rabbitmq-plugins enable rabbitmq_management

安裝成功后會顯示如下內(nèi)容

The following plugins have been enabled:
  mochiweb
  webmachine
  rabbitmq_web_dispatch
  amqp_client
  rabbitmq_management_agent
  rabbitmq_management
Plugin configuration has changed. Restart RabbitMQ for changes to take effect.

登錄Web管理界面

安裝好插件并開啟服務后,可以瀏覽器輸入localhost:15672,賬號密碼全輸入guest即可登錄积锅。默認沒有開啟遠程權(quán)限

添加遠程用戶

運行如下的命令志笼,增加用戶 rollen温鸽,密碼 root,注意用戶名密碼都不能帶特殊符號

rabbitmqctl add_user rollen root
rabbitmqctl set_user_tags rollen administrator
rabbitmqctl set_permissions -p / rollen ".*" ".*" ".*"

常用命令

服務管理

啟動:rabbitmq-server -detached
隊列關(guān)閉 rabbitmqctl stop_app
隊列啟動 rabbitmqctl start_app
隊列配置初始化: rabbitmqctl reset 用戶密碼信息都會被清理

集群配置相關(guān)命令

rabbitmqctl stop_app
rabbitmqctl reset
在當前集群中加入某節(jié)點:rabbitmqctl join_cluster {rabbit_node_name} (某些低版本可以采用rabbitmqctl cluster {rabbit_node_name})
rabbitmqctl start_app
集群狀態(tài):rabbitmqctl cluster_status
將某節(jié)點剔除出當前集群:rabbitmqctl forget_cluster_node {rabbit_node_name}

插件管理

開啟某個插件: rabbitmq-plugins enable {插件名}
關(guān)閉某個插件: rabbitmq-plugins disable {插件名}
有關(guān)插件名可以在rabbitmq的安裝目錄下的plugins目錄中查看:$RABBITMQ_HOME/plugins
舉例:
rabbitmq-plugins enable rabbitmq_management
rabbitmq-plugins list

用戶管理

添加 用戶 密碼
rabbitmqctl add_user rollen userpassword

設(shè)置用戶角色
rabbitmqctl set_user_tags rollen administrator
tag可以配置的角色:
(1) 超級管理員(administrator)
可登陸管理控制臺(啟用management plugin的情況下),可查看所有的信息辽俗,并且可以對用戶坐榆,策略(policy)進行操作。
(2) 監(jiān)控者(monitoring)
可登陸管理控制臺(啟用management plugin的情況下)冗茸,同時可以查看rabbitmq節(jié)點的相關(guān)信息(進程數(shù)席镀,內(nèi)存使用情況,磁盤使用情況等)
(3) 策略制定者(policymaker)
可登陸管理控制臺(啟用management plugin的情況下), 同時可以對policy進行管理夏漱。但無法查看節(jié)點的相關(guān)信息(上圖紅框標識的部分)豪诲。與administrator的對比,administrator能看到這些內(nèi)容挂绰。
(4) 普通管理者(management)
僅可登陸管理控制臺(啟用management plugin的情況下)屎篱,無法看到節(jié)點信息,也無法對策略進行管理葵蒂。
(5) 其他
無法登陸管理控制臺交播,通常就是普通的生產(chǎn)者和消費者。

刪除用戶
rabbitmqctl delete_user username

修改密碼
rabbitmqctl change_password username newpassword

權(quán)限管理

權(quán)限設(shè)置:rabbitmqctl set_permissions [-p vhostpath] {user} {conf} {write} {read}
conf:一個正則表達式match哪些配置資源能夠被該用戶訪問践付。
write:一個正則表達式match哪些配置資源能夠被該用戶讀秦士。
read:一個正則表達式match哪些配置資源能夠被該用戶訪問。
查看(指定vhost)所有用戶的權(quán)限信息:rabbitmqctl list_permissions [-p vhostPath]
查看指定用戶的權(quán)限信息:rabbitmqctl list_user_permissions {username}
清除用戶的權(quán)限信息: rabbitmqctl clear_permissions [-p vhostPath] {username}

舉例:
rabbitmqctl set_permissions -p / username "." "." ".*"

獲取服務器狀態(tài)信息

服務器狀態(tài):rabbitmqctl status
隊列信息: rabbitmqctl list_queues [-p vhostpath] [queueinfoitem …]
queueinfoitem可以為: name, durable, auto_delete, arguments, messages_ready, messages_unacknowled, messages, consumers, memory.

Exchange信息: rabbitmqctl list_exchanges [-p vhostpath] [exchangeinfoitem …]
exchangeinfoitem有:name, type, durable, auto_delete, internal, arguments.

Binding信息:rabbitmqctl list_bindings [-p vhostpath] [bindinginfoitem …]
bindinginfoitem有:source_name, source_kind, destination_name, destination_kind, routing_key, arguments.等

connection信息:rabbitmqctl list_connections [connectioninfoitem …]
connectioninfoitem有:recv_oct永高,recv_cnt隧土,send_oct,send_cnt命爬,send_pend等曹傀。

channel信息:rabbitmqctl list_channels [channelinfoitem …]
channelinfoitem有:consumer_count,messages_unacknowledged饲宛,messages_uncommitted皆愉,acks_uncommitted,messages_unconfirmed,prefetch_count亥啦,client_flow_blocked

舉例:
rabbitmqctl list_queues name messages_ready pid slave_pids

更改節(jié)點類型

rabbitmqctl stop_app
rabbitmqctl change_cluster_node_type disc

rabbitmqctl change_cluster_node_type ram
rabbitmqctl start_app

vhost管理

添加vhost: rabbitmqctl add vhost {name}
刪除vhost: rabbitmqctl delete vhost {name}

鏡像隊列的設(shè)置

鏡像隊列的配置通過添加policy完成炭剪,policy添加的命令為:
rabbitmqctl set_policy [-p Vhost] Name Pattern Definition [Priority]
-p Vhost: 可選參數(shù),針對指定vhost下的queue進行設(shè)置
Name: policy的名稱
Pattern: queue的匹配模式(正則表達式)
Definition: 鏡像定義翔脱,包括三個部分 ha-mode奴拦,ha-params,ha-sync-mode
ha-mode: 指明鏡像隊列的模式届吁,有效值為 all/exactly/nodes
all表示在集群所有的節(jié)點上進行鏡像
exactly表示在指定個數(shù)的節(jié)點上進行鏡像错妖,節(jié)點的個數(shù)由ha-params指定
nodes表示在指定的節(jié)點上進行鏡像,節(jié)點名稱通過ha-params指定
ha-params: ha-mode模式需要用到的參數(shù)
ha-sync-mode: 鏡像隊列中消息的同步方式疚沐,有效值為automatic暂氯,manually
Priority: 可選參數(shù), policy的優(yōu)先級

例如亮蛔,對隊列名稱以hello開頭的所有隊列進行鏡像痴施,并在集群的兩個節(jié)點上完成鏡像,policy的設(shè)置命令為:
rabbitmqctl set_policy hello-ha “^hello” ‘{“ha-mode”:”exactly”,”ha-params”:2,”ha-sync-mode”:”automatic”}’

有關(guān)鏡像隊列的原理可以參考《rabbitmq——鏡像隊列》

更多信息可以參考:http://www.rabbitmq.com/manpages.html

常用命令管理參考:http://blog.csdn.net/u013256816/article/details/53524814

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末究流,一起剝皮案震驚了整個濱河市辣吃,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌芬探,老刑警劉巖神得,帶你破解...
    沈念sama閱讀 212,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異偷仿,居然都是意外死亡哩簿,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,755評論 3 385
  • 文/潘曉璐 我一進店門酝静,熙熙樓的掌柜王于貴愁眉苦臉地迎上來节榜,“玉大人,你說我怎么就攤上這事形入∪纾” “怎么了?”我有些...
    開封第一講書人閱讀 158,369評論 0 348
  • 文/不壞的土叔 我叫張陵亿遂,是天一觀的道長浓若。 經(jīng)常有香客問我,道長蛇数,這世上最難降的妖魔是什么挪钓? 我笑而不...
    開封第一講書人閱讀 56,799評論 1 285
  • 正文 為了忘掉前任,我火速辦了婚禮耳舅,結(jié)果婚禮上碌上,老公的妹妹穿的比我還像新娘倚评。我一直安慰自己,他們只是感情好馏予,可當我...
    茶點故事閱讀 65,910評論 6 386
  • 文/花漫 我一把揭開白布天梧。 她就那樣靜靜地躺著,像睡著了一般霞丧。 火紅的嫁衣襯著肌膚如雪呢岗。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 50,096評論 1 291
  • 那天蛹尝,我揣著相機與錄音候学,去河邊找鬼倍阐。 笑死怔昨,一個胖子當著我的面吹牛余赢,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播愕难,決...
    沈念sama閱讀 39,159評論 3 411
  • 文/蒼蘭香墨 我猛地睜開眼早龟,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了猫缭?” 一聲冷哼從身側(cè)響起拄衰,我...
    開封第一講書人閱讀 37,917評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎饵骨,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體茫打,經(jīng)...
    沈念sama閱讀 44,360評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡居触,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,673評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了老赤。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片轮洋。...
    茶點故事閱讀 38,814評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖抬旺,靈堂內(nèi)的尸體忽然破棺而出弊予,到底是詐尸還是另有隱情,我是刑警寧澤开财,帶...
    沈念sama閱讀 34,509評論 4 334
  • 正文 年R本政府宣布汉柒,位于F島的核電站,受9級特大地震影響责鳍,放射性物質(zhì)發(fā)生泄漏碾褂。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 40,156評論 3 317
  • 文/蒙蒙 一历葛、第九天 我趴在偏房一處隱蔽的房頂上張望正塌。 院中可真熱鬧,春花似錦、人聲如沸乓诽。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鸠天。三九已至讼育,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間粮宛,已是汗流浹背窥淆。 一陣腳步聲響...
    開封第一講書人閱讀 32,123評論 1 267
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留巍杈,地道東北人忧饭。 一個月前我還...
    沈念sama閱讀 46,641評論 2 362
  • 正文 我出身青樓,卻偏偏與公主長得像筷畦,于是被迫代替她去往敵國和親词裤。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,728評論 2 351

推薦閱讀更多精彩內(nèi)容

  • 版本:centos 6.5 64位 一鳖宾、安裝erlang依賴 請參照我這篇文章:http://www.jiansh...
    Shaun_lan閱讀 338評論 1 0
  • 最近要在centos上安裝RabbitMQ吼砂,就把操作的流程詳細記錄下來,方便大家參考鼎文。因為屬于銀行業(yè)渔肩,公司的所有服...
    monkey01閱讀 1,454評論 1 3
  • 一、安裝erlang 添加RPMforge支持(64位) 安裝erlang 如果yum出現(xiàn)“No module n...
    dzgdp888閱讀 11,239評論 2 16
  • 1. ErLang運行環(huán)境安裝 //安裝預環(huán)境 yum install gcc gcc-c++ yum insta...
    chjxidian閱讀 1,109評論 0 0
  • 關(guān)于消息隊列拇惋,從前年開始斷斷續(xù)續(xù)看了些資料周偎,想寫很久了,但一直沒騰出空撑帖,近來分別碰到幾個朋友聊這塊的技術(shù)選型蓉坎,是時...
    預流閱讀 584,579評論 51 786