zookeeper即一個分佈式的協調器,很多分佈式系統都在用zookeeper做節點的管理等功能。
zookeeper是apache下的一個開源項目,原本是hadoop的一部分,後來有人剝離出來應用於分佈式系統,像如今的很多互聯網熱點技術 dubbo,kafka,等都應有有zookeeper
一:zookeeper 介紹:
zookeeper 是一個特別的文件系統,有四種節點:
PERSISTENT 持久節點 PERSISTENT_SEQUENTIAL 持久有序節點
EPHEMERAL 臨時節點 EPHEMERAL_SEQUENTIAL 臨時有序節點
zookeeper 能做什麼:命名服務,集羣管理,配置中心,分佈式鎖,隊列管理
zookeeper 權限:CREATE READ WRITE DELETE ADMIN
二:zookeeper命令:
在服務器中可用zkCli.sh來執行zookeeper的操作。操作命令:
所有的命令實現可以看zookeeper源碼類:org.apache.zookeeper.ZooKeeperMain
-help 幫助
ls: 列出當前的節點
stat: 節點狀態
set: 設置數據
get: 獲取數據
ls2:加強版ls
getAcl path: 獲取權限
setAcl path acl設置權限
delete /path 刪除
history 歷史
redo 重新執行history中的命令
create [-s] [-e] path data acl 創建 -s 有序 -e 臨時
addauth 註冊授權
setquota -n|-b val path 設置配額 n個數 b長度 val最大個數或者長度的係數 path路徑
listquota path 列出當前的配額
delquota [-n|-b] path 刪除配額
rmr path 遞歸刪除節點 delete只能刪除沒有子節點的節點