Zookeeper 集羣安裝

負載均衡(Load Balance)是分佈式系統架構設計中必須考慮的因素之一,它一般是指,將請求/數據【均勻】分攤到多個操做單元上執行,負載均衡的關鍵在於【均勻】。常見互聯網分佈式架構如上,分爲客戶端層、反向代理nginx層、站點層、服務層、數據層。nginx

  • 如今使用最多的基於軟件的負載均衡是Nginx和ZooKeeper: 
  • Nginx是著名的反向代理服務器,也被普遍的做爲負載均衡服務器 
  • ZooKeeper是分佈式協調服務框架,有時也被用來作負載均衡

Nginx web

Nginx的負載均衡配置 
(1)把多個web server配置到nginx中,用戶訪問Nginx時,就會自動被分配到某個web server。 
(2)當網站規模變大,一般會進行服務拆分,各個服務獨立部署,經過遠程調用方式協同工做。 
(3)爲了保證穩定性,每一個服務不會只使用一臺服務器,也會做爲一個集羣存在,那麼子集羣也可使用Nginx負載均衡。算法

ZooKeeper 緩存

ZooKeeper的負載均衡模式 
(1)ZooKeeper做爲一個服務的註冊中心,每一個服務在其註冊中心登記,每臺服務器知道本身是屬於哪一個服務,在服務器啓動時,本身向所屬服務進行登記 
(2)服務的調用者到註冊中內心面查找:能提供所需服務的服務器列表,而後本身根據負載均衡算法,從中選取一臺服務器進行鏈接。 
(3)調用者取到服務器列表後,就能夠緩存到本身內部,免得下次再取,當服務器列表發生變化,例如某臺服務器宕機下線,或者新加了服務器,ZooKeeper會自動通知調用者從新獲取服務器列表服務器

使用場景

使用Nginx,隨着整個系統的演進, 服務 的數量會 增長 、每一個服務集羣中的 服務器 數量會 增長 
這時就會有一些小麻煩,例如 
(1)配置維護的成本變高,由於節點太多 
(2)單點故障的風險增長了,由於熱點服務的訪問量很高,若是這個服務集羣內的負載均衡服務出現問題,這個服務將失效 
第一個問題,能夠經過本身開發程序解決,但只是下降複雜度,並無實際解決 
第二個問題,能夠經過雙機高可用部署方案,使用另外一臺nginx負載均衡服務器隨時待命,只是成本較高架構

ZooKeeper安裝負載均衡

下載:zookeeper-3.3.6.tar.gz框架

解壓複製到三個文件夾分佈式

修改配置網站

vi ../../zookeeper1/conf/zoo.cfg
initLimit=5
syncLimit=2
tickTime=2000
dataDir=/home/xupp/zookeeper/zookeeper0/data_default/
dataLogDir=/home/xupp/zookeeper/zookeeper0/log_default/
clientPort=4180
server.0=192.168.20.90:8001:7770
server.1=192.168.20.90:8002:7771
server.2=192.168.20.90:8003:7772
initLimit=5
syncLimit=2
tickTime=2000
dataDir=/home/xupp/zookeeper/zookeeper1/data_default/
dataLogDir=/home/xupp/zookeeper/zookeeper1/log_default/
clientPort=4181
server.0=192.168.20.90:8001:7770
server.1=192.168.20.90:8002:7771
server.2=192.168.20.90:8003:7772
initLimit=5
syncLimit=2
tickTime=2000
dataDir=/home/xupp/zookeeper/zookeeper2/data_default/
dataLogDir=/home/xupp/zookeeper/zookeeper2/log_default/
clientPort=4182
server.0=192.168.20.90:8001:7770
server.1=192.168.20.90:8002:7771
server.2=192.168.20.90:8003:7772

 

建立對應文件夾data_default和log_default

建立myid文件 寫入對應的服務編號 server.0 對應 0

 

啓動

../../zookeeper2/bin/zkServer.sh start

中止

../../zookeeper2/bin/zkServer.sh stop

鏈接服務

 ../bin/zkCli.sh  -server 127.0.0.1:4180

 

 

參考:http://blog.csdn.net/lan12334321234/article/details/70049945     http://blog.csdn.net/zhangyu_ad/article/details/68942158

相關文章
相關標籤/搜索