CentOS7 搭建RabbitMQ集羣 後臺管理 歷史消費記錄查看

簡介html

  經過 Erlang 的分佈式特性(經過 magic cookie 認證節點)進行 RabbitMQ 集羣,各 RabbitMQ 服務爲對等節點,即每一個節點都提供服務給客戶端鏈接,進行消息發送與接收。這些節點經過 RabbitMQ HA 隊列(鏡像隊列)進行消息隊列結構複製。本方案中搭建 3 個節點,而且都是磁盤節點(全部節點狀態保持一致,節點徹底對等),只要有任何一個節點可以工做,RabbitMQ 集羣對外就能提供服務。vim

 

1. 安裝erlang,參考:http://fedoraproject.org/wiki/EPEL/FAQ#howtousebash

rpm -Uvh http://download.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-8.noarch.rpm
yum install erlang

2. 安裝rabbitmq服務器

# 下載rpm安裝包
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.6/rabbitmq-server-3.6.6-1.el7.noarch.rpm
# 安裝
yum install rabbitmq-server-3.6.6-1.el7.noarch.rpm
# 啓動rabbitmq服務
service rabbitmq-server start
# 查看服務狀態
service rabbitmq-server status
# 開放rabbitmq的使用,默認用戶guest,密碼guest
cd /etc/rabbitmq/ vi rabbitmq.config

# 再打開的窗口中新增內容以下:
[{rabbit, [{loopback_users, []}]}].
# 重啓服務
service rabbitmq-server stop service rabbitmq-server start
# 開放5672端口訪問
firewall-cmd --zone=public --add-port=5672/tcp --permanent firewall-cmd --reload

3. 開啓後臺UI管理插件cookie

rabbitmq-plugins enable rabbitmq_management
firewall-cmd --zone=public --add-port=15672/tcp --permanent
firewall-cmd --reload

# 以上完成後便可訪問:http://{host}:15672

4. 開啓消費記錄日誌功能app

 # 啓用記錄插件tcp

 rabbitmq-plugins enable rabbitmq_tracing分佈式

 # 啓用跟蹤記錄oop

 rabbitmqctl trace_onspa

 # 以上配置完成後,便可在後臺管理界面 --> Admin --> Tracing 添加跟蹤配置:

 

  # 點擊dev.log 便可查看日誌文件

 

 

5. 配置rabbitmq集羣節點

 # 服務器:10.18.32.7(節點1) , 10.18.32.8(節點2)

(1). 配置hostname

  # 在各節點服務器上配置hostname:rabbitmq-1,rabbitmq-2
  vim /etc/hostname

(2). 配置host

  # 在各節點服務器上配置host
  vim /etc/hosts
  

 

 

  (3). 設置各節點Cookie保持一致

 

    service rabbitmq-server stop

 

    chmod 700 /var/lib/rabbitmq/.erlang.cookie

 

    echo -n "AZVOCZYZZBVFLBPTBXU" > /var/lib/rabbitmq/.erlang.cookie

 

    chmod 400 /var/lib/rabbitmq/.erlang.cookie

 

    service rabbitmq-server start

 

  (4). 開通防火牆集羣通信端口

 

  firewall-cmd --permanent --add-port={4369/tcp,25672/tcp}
  firewall-cmd --reload

 

(5). 將節點二、3...加入節點一中

  rabbitmqctl stop_app
  rabbitmqctl join_cluster rabbit@server1
  rabbitmqctl start_app

(6). 設置各節點鏡像策略

  rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all"}'

 

7. 後期維護版本升級

 (1). 升級Erlang

  # 移除舊版erlang,能夠經過 erl -version 查看當前安裝版本

  yum remove erlang.*

  yum remove erlang-*

  # 自動安裝erlang的YUM源

  wget http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm

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

   yum install erlang

 (2). 升級RabbitMQ

 # 從官網(https://www.rabbitmq.com/install-rpm.html#with-rpm)找到最新版下載地址
 wget https://dl.bintray.com/rabbitmq/all/rabbitmq-server/3.7.2/rabbitmq-server-3.7.2-1.el7.noarch.rpm

 rpm --import https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc
 yum install rabbitmq-server-3.7.2-1.el7.noarch.rpm
 # 以上步驟完成後,按照以上重啓服務便可


參考連接:
  http://www.cnblogs.com/uptothesky/p/6094357.html
  http://www.cnblogs.com/edward2013/p/5061511.html
  https://www.jianshu.com/p/3a625aacd9aa
相關文章
相關標籤/搜索