這篇文章主要介紹“zookeeper的安裝和使用方法”,在日常操作中,相信很多人在zookeeper的安裝和使用方法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”zookeeper的安裝和使用方法”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
企業(yè)建站必須是能夠以充分展現(xiàn)企業(yè)形象為主要目的,是企業(yè)文化與產(chǎn)品對外擴(kuò)展宣傳的重要窗口,一個(gè)合格的網(wǎng)站不僅僅能為公司帶來巨大的互聯(lián)網(wǎng)上的收集和信息發(fā)布平臺,創(chuàng)新互聯(lián)面向各種領(lǐng)域:酒樓設(shè)計(jì)等成都網(wǎng)站設(shè)計(jì)、營銷型網(wǎng)站建設(shè)解決方案、網(wǎng)站設(shè)計(jì)等建站排名服務(wù)。
zookeeper
中對用戶的數(shù)據(jù)采用kv
形式存儲
key
:是以路徑的形式表示的,各key之間有父子關(guān)系,比如 /
是頂層key
用戶建的key
只能在/ 下作為子節(jié)點(diǎn),比如建一個(gè)key: /aa
這個(gè)key
可以帶value
數(shù)據(jù)
也可以建一個(gè)key
: /bb
也可以建多個(gè)key
: /aa/xx
zookeeper
中,對每一個(gè)數(shù)據(jù)key
,稱作一個(gè)znode
zookeeper
中的znode
有多種類型:
1、PERSISTENT
持久的:創(chuàng)建者就算跟集群斷開聯(lián)系,該類節(jié)點(diǎn)也會持久存在與zk
集群中
2、EPHEMERAL
短暫的:創(chuàng)建者一旦跟集群斷開聯(lián)系,zk
就會將這個(gè)節(jié)點(diǎn)刪除
3、SEQUENTIAL
帶序號的:這類節(jié)點(diǎn),zk
會自動拼接上一個(gè)序號,而且序號是遞增的
組合類型:
PERSISTENT
:持久不帶序號
EPHEMERAL
:短暫不帶序號
PERSISTENT
且 SEQUENTIAL
:持久且?guī)蛱?/p>
EPHEMERAL
且 SEQUENTIAL
:短暫且?guī)蛱?/p>
解壓安裝包 zookeeper-3.4.6.tar.gz
修改conf/zoo.cfg
# The number of milliseconds of each tick tickTime=2000 # The number of ticks that the initial # synchronization phase can take initLimit=10 # The number of ticks that can pass between # sending a request and getting an acknowledgement syncLimit=5 # the directory where the snapshot is stored. # do not use /tmp for storage, /tmp here is just # example sakes. dataDir=/usr/local/bigdata/data/zkdata # the port at which the clients will connect clientPort=2181 # the maximum number of client connections. # increase this if you need to handle more clients #maxClientCnxns=60 # # Be sure to read the maintenance section of the # administrator guide before turning on autopurge. # # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance # # The number of snapshots to retain in dataDir #autopurge.snapRetainCount=3 # Purge task interval in hours # Set to "0" to disable auto purge feature #autopurge.purgeInterval=1 server.1=Master:2888:3888 server.2=Slave01:2888:3888 server.3=Slave02:2888:3888
對3臺節(jié)點(diǎn),都創(chuàng)建目錄 /usr/local/bigdata/data/zkdata
對3臺節(jié)點(diǎn),在工作目錄中生成myid
文件,但內(nèi)容要分別為各自的id
: 1
,2
,3
Master上: echo 1 > /usr/local/bigdata/data/zkdata/myid Slave01上: echo 2 > /usr/local/bigdata/data/zkdata/myid Slave02上: echo 3 > /usr/local/bigdata/data/zkdata/myid
zookeeper
沒有提供自動批量啟動腳本,需要手動一臺一臺地起zookeeper
進(jìn)程 在每一臺節(jié)點(diǎn)上,運(yùn)行命令:
$ bin/zkServer.sh start
啟動后,用jps
應(yīng)該能看到一個(gè)進(jìn)程:QuorumPeerMain
查看狀態(tài)
$ bin/zkServer.sh status
zookeeper
沒有提供批量腳本,不能像hadoop
一樣在一臺機(jī)器上同時(shí)啟動所有節(jié)點(diǎn),可以自己編寫腳本批量啟動。
#!/bin/bash for host in Master Slave01 Slave02 do echo "${host}:${1}ing....." ssh $host "source ~/.bashrc;/usr/local/bigdata/zookeeper-3.4.6/bin/zkServer.sh $1" done sleep 2 for host in Master Slave01 Slave02 do ssh $host "source ~/.bashrc;/usr/local/bigdata/zookeeper-3.4.6/bin/zkServer.sh status" done
$1 :指接收第一個(gè)參數(shù)
運(yùn)行命令:
sh zkmanage.sh start #啟動 sh zkmanage.sh stop #停止
啟動本地客戶端:
$ bin/zkCli.sh
啟動其他機(jī)器的客戶端:
$ bin/zkCli.sh -server Master:2181
基本命令:
查看幫助:help
查看目錄:ls /
查看節(jié)點(diǎn)數(shù)據(jù):get /zookeeper
插入數(shù)據(jù): create /節(jié)點(diǎn) 數(shù)據(jù)
, 如:create /aa hello
更改某節(jié)點(diǎn)數(shù)據(jù): set /aa helloworld
刪除數(shù)據(jù):rmr /aa/bb
注冊監(jiān)聽:get /aa watch
-->數(shù)據(jù)發(fā)生改變會通知 ; ls /aa watch
-->目錄發(fā)現(xiàn)改變也會通知
到此,關(guān)于“zookeeper的安裝和使用方法”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!