Zookeeper安裝方式有三種,單機模式和叢集模式以及僞叢集模式。
■ 單機模式:Zookeeper隻運作在一台伺服器上,适合測試環境;
■ 僞叢集模式:就是在一台實體機上運作多個Zookeeper 執行個體;
■ 叢集模式:多台實體機上運作多個執行個體,Zookeeper運作于一個叢集上,适合生産環境,這個計算機叢集被稱為一個“集合體”(ensemble)
或者官網位址 (http://zookeeper.apache.org/releases.html)
解壓:tar -zxvf zookeeper-3.4.5.tar.gz 重命名:mv zookeeper-3.4.5 zk
配置檔案:在conf目錄下删除zoo_sample.cfg檔案,建立一個配置檔案zoo.cfg。
tickTime=2000
dataDir=/usr/local/zk/data
dataLogDir=/usr/local/zk/dataLog
clientPort=2181
使用的是預設的配置檔案
啟動ZooKeeper的Server:zkServer.sh start;
關閉ZooKeeper的Server:zkServer.sh stop
在一台機器上部署了3個server,需要注意的是在叢集為分布式模式下我們使用的每個配置文檔模拟一台機器,也就是說單台機器及上運作多個Zookeeper執行個體。但是,必須保證每個配置文檔的各個端口号不能沖突,除了clientPort不同之外,dataDir也不同。另外,還要在dataDir所對應的目錄中建立myid檔案來指定對應的Zookeeper伺服器執行個體。
■ clientPort端口:如果在1台機器上部署多個server,那麼每台機器都要不同的 clientPort,比如 server1是2181,server2是2182,server3是2183
■ dataDir和dataLogDir:dataDir和dataLogDir也需要區分下,将資料檔案和日志檔案分開存放,同時每個server的這兩變量所對應的路徑都是不同的
■ server.X和myid: server.X 這個數字就是對應,data/myid中的數字。在3個server的myid檔案中分别寫入了0,1,2,那麼每個server中的zoo.cfg都配 server.0 server.2,server.3就行了。因為在同一台機器上,後面連着的2個端口,3個server都不要一樣,否則端口沖突
下面是我所配置的叢集僞分布模式,分别通過zoo1.cfg、zoo2.cfg、zoo3.cfg來模拟由三台機器的Zookeeper叢集,代碼清單
zoo1.cfg
<code>tickTime=</code><code>2000</code>
<code>initLimit=</code><code>10</code>
<code>syncLimit=</code><code>5</code>
<code>dataDir=/app/svr/zookeeper/data_1</code>
<code>dataLogDir=/app/svr/zookeeper/datalog_1</code>
<code>clientPort=</code><code>2181</code>
<code>server.</code><code>1</code><code>=localhost:</code><code>2287</code><code>:</code><code>3387</code>
<code>server.</code><code>2</code><code>=localhost:</code><code>2288</code><code>:</code><code>3388</code>
<code>server.</code><code>3</code><code>=localhost:</code><code>2289</code><code>:</code><code>3389</code>
同時 /app/svr/zookeeper/data_1 下面建立myid檔案
<code>1</code>
對應配置檔案中 server.1 中的 編号1
zoo2.cfg 與 zoo3.cfg 以此類推
啟動僞叢集
./zkServer.sh start ../conf/zoo1.cfg
其他啟動以此類推。
檢視運作狀态:
./zkServer.sh status ../conf/zoo1.cfg 可以看到是follower or leader
連接配接叢集:
./zkCli.sh -server localhost:2181,localhost:2182,localhost:2183
相關指令
檢視 ls / ls /strategy_model/82_2_3_2015
獲得内容 get
設定内容 set
删除内容 delete
1.3 Zookeeper的叢集模式搭建
叢集模式搭建類似,隻不過是分布在不同裝置上。
本文轉自布拉君君 51CTO部落格,原文連結:http://blog.51cto.com/5148737/1972464,如需轉載請自行聯系原作者