zookeeper集群部署及常用命令

集群部署

在每台集群机器的配置文件(zoo.cfg)中做如下配置:

tickTime=2000
dataDir=/home/myname/zookeeper
clientPort=2181
initLimit=5
syncLimit=2
server.1=192.168.229.160:2888:3888
server.2=192.168.229.161:2888:3888
server.3=192.168.229.162:2888:3888


  • initLimit

zk集群模式下包含多个zk进程,根据其选举机制,只能有一个leader,余下的全部为follower,那么当一台follower初次与leader建立联系,第一次进行数据同步时的最大时长配置就是initLimit,注意这里initLimit不是具体时长,具体时长initLimit*tickTime

  • syncLimit

配置follower和leader之间发送消息,请求和应答的最大时长,注意这里syncLimit也不是具体时长,具体时长是syncLimit*tickTime

  • tickTime

时长配置的基本单位,单位是ms

  • server.id=host:port1:port2

其中id为不重复的数字即可,表示zk的标示id,与data目录的myid文件中内容一致,注意这里的id不是系统进程id(有的文章说是进程id),进程id在data目录zookeeper_server.pid文件查看

host是zk进程 所在服务器的ip,port1是数据信息交互端口,port2是选举端口

  • dataDir

data目录

常用命令

连接服务器:bin/zkCli.sh -server ip:port

]help 查看zk的所有可执行命令:

[zk: 192.168.10.121:2181(CONNECTED) 0] help

ZooKeeper -server host:port cmd args

        connect host:port 

        get path [watch]  显示指定路径下的节点信息,比如get /zk

        ls path [watch]   查看指定目录下包含的节点,根节点为"/"

        set path data [version]  设置节点的内容,比如 set /zk "anotherData"

        rmr path

        delquota [-n|-b] path

        quit 

        printwatches on|off

        create [-s] [-e] path data acl    创建一个节点,同时可以指定节点内容,比如 create /zk mydata

        stat path [watch]

        close 

        ls2 path [watch]

        history 

        listquota path

        setAcl path acl

        getAcl path

        sync path

        redo cmdno

        addauth scheme auth

        delete path [version]    删除一个节点,比如delete /zk

        setquota -n|-b val path

___

zk可以使用telnet来进行登录,比如telnet 192.168.10.121 2181,但是只能执行单条命令,不建议使用此方式连接


你可能感兴趣的:(zookeeper)