一、安裝部署windows
1.一、本文在一臺機器上模擬3個Zookeeper集羣,目錄結構以下。bash
1.二、建立zoo.cfg配置文件測試
zookeeper-1配置內容以下:加密
tickTime=2000 initLimit=10 syncLimit=5 dataDir=D:\\work\\zookeeper\\zookeeper-1\\data dataLogDir=D:\\work\\zookeeper\\zookeeper-1\\log clientPort=2181 server.1=localhost:2287:3387 server.2=localhost:2288:3388 server.3=localhost:2289:3389
zookeeper-2配置內容以下:spa
tickTime=2000 initLimit=10 syncLimit=5 dataDir=D:\\work\\zookeeper\\zookeeper-2\\data dataLogDir=D:\\work\\zookeeper\\zookeeper-2\\log clientPort=2182 server.1=localhost:2287:3387 server.2=localhost:2288:3388 server.3=localhost:2289:3389
zookeeper-3配置內容以下:code
tickTime=2000 initLimit=10 syncLimit=5 dataDir=D:\\work\\zookeeper\\zookeeper-3\\data dataLogDir=D:\\work\\zookeeper\\zookeeper-3\\log clientPort=2183 server.1=localhost:2287:3387 server.2=localhost:2288:3388 server.3=localhost:2289:3389
注意:每一個zookeeper都要有本身的/data目錄及/log目錄。由於是在同一臺機器上,因此,設置了不一樣的端口,真正集羣上能夠設置成同一個端口。server
1.三、建立myid文件blog
在各個zookeeper的data目錄下,建立一個myid文件,內容必須與配置文件中的server.x參數的x相同。ip
1.四、啓動部署
windows下直接雙擊bin目錄下的zkServer.cmd運行便可,將3個zookeeper同時啓動。
可使用以下命令測試
zkCli.cmd -server localhost:2181 zkCli.cmd -server localhost:2182 zkCli.cmd -server localhost:2183
二、zookeeper經常使用的命令
ls:查詢某個節點下的全部子節點
create:建立一個節點
delete:刪除一個節點
get:獲取一個節點的數據
set:給一個節點賦值
......
三、ACL(Access Control List)訪問控制列表
Zookeeper共有5種操做權限:
create:增
read:讀
write:寫
delete:刪除
admin:管理
這5種權限簡稱爲「crwda」。
注:delete只對子節點的刪除權限起做用。
身份認證有4種方式:
world:默認方式,全世界都能訪問。
auth:只有認證經過的才能訪問,可使用addauth digest <user>:<pwd>命令來添加當前上下文環境的受權用戶。
digest:
ip:ip地址認證。
查看/test節點的全部權限
getAcl /test
添加只讀權限
addauth digest user1:123456 setAcl /test auth:user1:123456:r
注:還可使用setAcl /test digest:<user>:<pwd>:<permission>命令添加權限,可是這種pwd須要使用加密後的,因此,不推薦。