Zookeeper服務常用的操作命令


  Zookeeper服務安裝之后,一般會在這個服務的基礎之上安裝其他的大數據平台,其他的框架一般會提供很多接口對Zookeeper中的內容進行一定的操作,但是功能相對單一,所以有些時候,有必要我們自己登錄Zookeeper服務器,對里面的文件結構有一定的了解,這樣的話使用起來也比較方便,下面就簡單總結一下Zookeeper常用的命令。

  首先是最基本的zkServer.sh腳本使用,之前也說過,這里匯總一下(假設當前目錄在Zookeeper安裝目錄下):

  1、啟動Zookeeper服務: bin/zkServer.sh start 

  2、查看服務狀態,包括節點類型: bin/zkServer.sh status 

  3、停止服務: bin/zkServer.sh stop 

  4、重啟服務: bin/zkServer.sh restart 

 

  下面就是重點,zk客戶端工具的使用,zk的命令行工具和shell相似,不過命令相對單一,使用比shell簡單得多,只能進行簡單的數據訪問操作,首先使用如下命令進入命令行管理工具:

bin/zkCli.sh -server localhost:2181

  后面使用localhost或者定義的主機名都可以,回車之后就可以進入工具界面,提示符如下圖所示:

  

  這個時候我們就可以輸入命令了,輸入一次命令,最后的數字加1,下面是一些常用的命令:

  ls /目錄節點 顯示zookeeper中指定節點下的內容,比如: ls /  或者  ls /configs 但是要注意開始必須加/

  ls2 /目錄節點 查看指定節點下的內容和節點的數據,更新次數等,比如: ls2 / 或者 ls2 /collections 

  create /節點名 string 創建節點,並關聯指定字符串,比如: create /test TheTest 注意字符串中間不要有空格,字符串也不用加雙引號,這個時候用 ls /test 查看只會返回[],而用 ls2 /test 查看可以看到數據長度等信息,

  

  可以看到,dataLength = 7

  get /節點或者文件名 可以獲取節點關聯的字符串或者文件的內容,對於文件和Linux下的cat命令類似,比如: get / 或者 get /configs/abc.xml 

前者獲取目錄的關聯字符串,后者獲取abc.xml配置文件的內容,相當於cat命令

  set /節點名 修改節點所關聯的字符串,比如創建之后,可以使用: set /test hello 來修改test節點的關聯字符串

  delete /文件名 刪除zookeeper上的文件,有些框架的配置文件經常修改,並且每次更新時無法覆蓋原有文件,可以使用比如: delete /configs/abc/test.xml 這樣用來刪除test.xml文件,下次直接上傳就可以了

  quit 退出zookeeper客戶端工具並返回命令行

  help 查看更多命令的幫助

 

  另外,不登錄zookeeper,也可以進行一些操作:

  查看節點狀態是follower還是leader:  echo stat | nc 127.0.0.1 2181  nc的全稱是NetCat,和scp命令類似,是用來在網絡之間通過TCP或者UDP協議進行文件傳輸的工具,有硬盤克隆,端口掃描等強大的功能,這里了解即可,以后的如果寫文章會詳細說明具體細節,如果nc沒有安裝,可以使用 yum install nc進行安裝,

  測試是否啟動了該服務,若顯示imok表示已經啟動: echo ruok | nc 127.0.0.1 2181 

  列出服務配置的詳細信息:  echo conf | nc 127.0.0.1 2181  

  列出服務環境的詳細信息(和上一條conf不一樣): echo envi | nc 127.0.0.1 2181 

  列出未經處理的請求: echo reqs | nc 127.0.0.1 2181 

  以上就是常用的zookeeper工具和其他常用的命令,對相關平台的開發和測試都會帶來方便


免責聲明!

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



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