Zookeeper實戰之單機模式


Zookeeper介紹 Zookeeper 分布式服務框架是用來解決分布式應用中經常遇到的一些數據管理問題,如:統一命名服務、狀態同步服務、集群管理、分布式應用配置項的管理等。本文主要從使用者角度來介紹一下Zookeeper的安裝,配置及應用。

單機模式

Zookeeper可以單機安裝,這種應用模式主要用在測試或demo的情況下,在生產環境下一般不會采用。

1. 首先可以從Zookeeper的官方網站下載最新的安裝包http://mirrors.cnnic.cn/apache/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz

2. 解壓zookeeper到指定目錄下,這里假定為/opt/zookeeper

3. 進入zookeeper目錄下的conf目錄,復制zoo_sample.cfg為zoo.cfg,並將內容修改如下

tickTime=2000
dataDir=/opt/zookeeper-3.4.6/data
clientPort=2181

tickTime:Zookeeper 服務器之間或客戶端與服務器之間心跳的時間間隔。

dataDir:Zookeeper 保存數據的目錄,默認情況下,Zookeeper 將寫數據的日志文件也保存在這個目錄里。

clientPort:Zookeeper 服務器監聽端口,用來接受客戶端的訪問請求。

4. 配置完以后,就可以啟動zookeeper服務了,進入Zookeeper/bin目錄,運行下面的命令來啟動Zookeeper服務

$ ./zkServer.sh start
JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

啟動后可以使用下面的命令查看服務狀態

$ ./zkServer.sh status
JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Mode: standalone

5. 在Zookeeper服務器啟動以后,就可以使用Zookeeper的客戶端來連接並測試了。

$ ./zkCli.sh
$ ./zkCli.sh -server 127.0.0.1:2181

連接之后可以時候help來查看有哪些命令可以使用

[zk: 127.0.0.1:2181(CONNECTED) 0] ls / #查看根節點
[zookeeper]

[zk: 127.0.0.1:2181(CONNECTED) 1] create /mykey1 myvalue1 #創建一個新節點mykey1
Created /mykey1
[zk: 127.0.0.1:2181(CONNECTED) 2] create /mykey2 myvalue2 #創建一個新節點mykey2
Created /mykey2

[zk: 127.0.0.1:2181(CONNECTED) 13] ls / #查看根節點
[mykey1, mykey2, zookeeper]

[zk: 127.0.0.1:2181(CONNECTED) 23] get /mykey1 #獲取mykey1節點
myvalue1
cZxid = 0x6
ctime = Sat Sep 20 21:00:17 CST 2014
mZxid = 0x8
mtime = Sat Sep 20 21:01:06 CST 2014
pZxid = 0x6
cversion = 0
dataVersion = 1
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 9
numChildren = 0

[zk: 127.0.0.1:2181(CONNECTED) 23] get /mykey2 #獲取mykey2節點
myvalue2
cZxid = 0x6
ctime = Sat Sep 20 21:00:17 CST 2014
mZxid = 0x8
mtime = Sat Sep 20 21:01:06 CST 2014
pZxid = 0x6
cversion = 0
dataVersion = 1
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 9
numChildren = 0

[zk: 127.0.0.1:2181(CONNECTED) 24] set /mykey1 myvalue11 #設置mykey1節點的值
[zk: 127.0.0.1:2181(CONNECTED) 25] set /mykey2 myvalue22 #設置mykey2節點的值

[zk: 127.0.0.1:2181(CONNECTED) 26] set /mykey1 #刪除mykey1節點
[zk: 127.0.0.1:2181(CONNECTED) 27] set /mykey2 #刪除mykey2節點


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM