用2臺服務器,低資源,部署3個zookeeper分佈式節點:apache
1.準備環境
系統已經配置好了JAVA環境;
下載某個版本的zookeeper壓縮包,
下載連接:http://apache.claz.org/zookeeper/zookeeper-3.5.3-beta/zookeeper-3.5.3-beta.tar.gz服務器
二、規劃
服務器A,部署1個實例
服務器B,部署2個實例分佈式
三、咱們配置3個服務,分佈式集羣至少須要三個實例服務,配置信息以下:ide
針對每個服務的日誌,新建一個數據目錄
服務器A:
/opt/local/zookeeper/zk,新建data、logs,在data裏新建myid,裏面寫入3;
服務器B:
/opt/local/zookeeper/zk1,新建data、logs,在data裏新建myid,裏面寫入2;
/opt/local/zookeeper/zk2,新建data、logs,在data裏新建myid,裏面寫入1;日誌
四、配置文件目錄/opt/local/zookeeper-3.4.10/conf,code
新建3個配置文件,爲
服務器A: zoo.cfg
服務器B: zoo1.cfg、zoo2.cfgserver
端口分別爲 2181 2182 2183資源
tickTime=2000 initLimit=10 syncLimit=5 dataDir=/opt/local/zookeeper/zk/data clientPort=2181 dataLogDir=/opt/local/zookeeper/zk/logs server.1=IP1:2287:3387 server.2=IP2:2288:3388 server.3=IP2:2289:3389
先解釋一下server.x=A:B:C的含義:部署
x:表明每一個服務實例對用的dataDir下myid的內容
A:對用服務所在機器的IP地址
B: leader選舉端口(僞分佈式環境下全部的端口都不要相同)
C: zk服務器之間通訊的端口,服務器之間同步信息get
五、
啓動三臺服務:
bin/zkServer.sh start conf/zoo.cfg bin/zkServer.sh start conf/zoo1.cfg bin/zkServer.sh start conf/zoo2.cfg
查看服務狀態:
#Mode: follower bin/zkServer.sh status conf/zoo.cfg #Mode: leader bin/zkServer.sh status conf/zoo1.cfg #Mode: follower bin/zkServer.sh status conf/zoo2.cfg