RabbitMQ 集群 負載均衡

2022-02-21 07:48:27 字數 2204 閱讀 2971

集群的配置已經搭建好了,**也成功跑通,成功做到了高可用,但是我們的程式連線節點並不會管哪個伺服器在忙、哪個伺服器空閒,完全看心情想連誰就連誰。而且**中要把每個ip的節點都手動的寫出來 ,既然是手動的就很有可能發現寫錯這種情況,同樣web ui 通常也不知道開啟哪個好,因為每個伺服器都有乙個 web ui,可能有人說,既然哪個都行,你隨便開啟乙個就是了。但是如果不巧這個伺服器後面崩了呢。

基於以前問題,我們就需要乙個強大的負載均衡伺服器來幫助我們完成這些事情。

這裡選擇使用 haproxy,看官們可以根據心情來選擇自己想要的

這裡記乙個坑,博主之前想用windows系統做負載均衡伺服器,但是實驗的時候總是會出錯,換到linux後,發現高版本的haproxy不可用!試了幾次 1.5.8是可以成功的。

make target=linux26 prefix=/usr/local/haproxy           #將haproxy安裝到/usr/local/haproxy

make install prefix=/usr/local/haproxy

然後把haproxy.cfg拷貝到安裝目錄下sbin資料夾中,這裡我做了一些配置。包括對web ui與集群的負載均衡

global

log

127.0.0.1

local0

# log

127.0.0.1

local1

maxconn

4000

ulimit-n 8000

uid

0gid

0# chroot /tmp

# nbproc

2# daemon

# debug

# quiet

linsten rabbitm1_admin 0.0.0.0 35672
bind 0.0.0.0:35672
server rabbitmq1 ip1:15672
server rabbitm12 ip2:15672
listen rabbitmq_local_cluster 

0.0.0.0:25672

#配置tcp模式

mode tcp

option tcplog

#簡單的輪詢

balance roundrobin

#rabbitmq集群節點配置

server rabbitmq1

ip1:5672 check inter 5000 rise 2 fall 2

server rabbitmq2 ip2

:5672 check inter 5000 rise 2 fall 2

##伺服器定義(check指健康狀況檢查,inter 2000指檢測頻率;rise 2指從離線狀態轉換至正常狀態需要成功檢查的次數;fall 2指失敗2次即認為伺服器不可用)

#配置haproxy web監控,檢視統計資訊

#設定haproxy監控位址為http:

//localhost:8100/stats

stats uri /stats

stats refresh 30s

#新增使用者名稱密碼認證

stats auth admin:

1234

這時就已經完成了,開啟管理介面就可以看到我們所做的負載均衡了

這時使用負載均衡的伺服器ip登入 web ui 是不是很爽快,我們只需要關心負載均衡就可以了,後面到底有多少臺機器不用去了解,ip也不用去記,就是這麼暢快

同樣可以到**中去改變一下建立連線方式了,在這裡只需要填寫負載均衡伺服器的ip就可以了,然後port為配置檔案中的port

var factory = new

connectionfactory()

;

RabbitMQ集群及負載均衡搭建

通過 erlang 的分布式特性 通過 magic cookie 認證節點 進行 rabbitmq 集群,各 rabbitmq 服務為對等節點,即每個節點都提供服務給客戶端連線,進行訊息傳送與接收。這些節點通過 rabbitmq ha 佇列 映象佇列 進行訊息佇列結構複製。本方案中搭建 2 個節點,...

rabbitmq 映象集群負載均衡 搭建過程

rabbitmq 映象集群配置 準備好幾臺伺服器 比如三颱 ip分別是 191,192,193 第一步 配置環境和主機名 分別設定三颱機器 設定主機名 191 命令 vim ect hostname rab191 192 命令 vim ect hostname rab192 193 命令 vim e...

Apache tomcat集群(負載均衡)

本次實踐我是在windows系統的環境下進行的,apache是2.2.21版本,tomcat是7.0.16和7.0.23兩個版本 集群中tomcat不能既有tomcat6又有tomcat7,否則雖能夠負載均衡,但不能進行session複製 2.配置tomcat 1 首先講講tomcat需要配置的檔案...