問題導讀
一、如何啓動ZooKeeper 服務?
二、如何啓動集羣

1)單機模式
php
用戶能夠經過下面的命令來啓動 ZooKeeper 服務:
這個命令默認狀況下執行 ZooKeeper 的 conf
文件夾下的 zoo.cfg 配置文件。當運行成功用戶會看到相似以下的提示界面:
- root@ubuntu:~# zkServer.sh start
- JMX enabled by default
- Using config: /root/hadoop-0.20.2/zookeeper-3.3.1/bin/../conf/zoo.cfg
- Starting zookeeper ...
- STARTED
- ... ...
- 2011-01-19 10:04:42,300 - WARN [main:QuorumPeerMain@105] - Either no config or no quorum defined in config, running in standalone mode
- ... ...
- 2011-01-19 10:04:42,419 - INFO [main:ZooKeeperServer@660] - tickTime set to 2000
- 2011-01-19 10:04:42,419 - INFO [main:ZooKeeperServer@669] - minSessionTimeout set to -1
- 2011-01-19 10:04:42,419 - INFO [main:ZooKeeperServer@678] - maxSessionTimeout set to -1
- 2011-01-19 10:04:42,560 - INFO [main:NIOServerCnxn$Factory@143] - binding to port 0.0.0.0/0.0.0.0:2181
- 2011-01-19 10:04:42,806 - INFO [main:FileSnap@82] - Reading snapshot /root/hadoop-0.20.2/zookeeper-3.3.1/data/version-2/snapshot.200000036
- 2011-01-19 10:04:42,927 - INFO [main:FileSnap@82] - Reading snapshot /root/hadoop-0.20.2/zookeeper-3.3.1/data/version-2/snapshot.200000036
- 2011-01-19 10:04:42,950 - INFO [main:FileTxnSnapLog@208] - Snapshotting: 400000058
複製代碼
從上面能夠看出,運行成功後,系統會列出 ZooKeeper 運行的相關環境配置信息。
2)集羣模式
html
集羣模式下須要用戶在每臺 ZooKeeper 機器上運行第一部分的命令,這裏再也不贅述。
3)集羣僞分佈模式
ubuntu
在集羣僞分佈模式下,咱們只有一臺機器,可是要運行三個 ZooKeeper 服務實例。此時,若是再使用上述命令式確定行不通的。這裏,咱們經過下面三條命可以令來運行 咱們配置的 ZooKeeper 服務。以下所示:
- zkServer.sh start zoo1.cfg
複製代碼
- zkServer.sh start zoo2.cfg
複製代碼
- zkServer.sh start zoo3.cfg
複製代碼
在運行完第一條命令以後,讀者將會發現一些系統錯誤提示,以下圖 1 所示:
<ignore_js_op>
圖 1 :集羣僞分佈異常提示
產生如上圖所示的異常信息是因爲 ZooKeeper 服務的每一個實例都擁有全局的配置信息,它們在啓動的時候須要隨時地進行 Leader 選舉操做(此部份內容下面將會詳細講述)。此時第一個啓動的 Zookeeper 須要和另外兩個ZooKeeper 實例進行通訊。可是,另外兩個 ZooKeeper 實例尚未啓動起來,所以將會產生上述所示的異常信息。
咱們直接將其忽略便可,由於當把圖示中的「 2 號」和「 3 號」 ZooKeeper 實例啓動起來以後,相應的異常信息就回天然而然地消失。
文章轉自:http://www.aboutyun.com/thread-9310-1-1.html