zookeeper部署和管理

来源:互联网 发布:怎么买老域名 编辑:程序博客网 时间:2024/06/03 12:30

一、如何配置一个zookeeper机器?

1,安装JDK

2,安装zookeeper

3,配置zookeeper配置文件 :

(1)安装目录路径下conf/zoo.cfg文件配置:

tickTime:zookeeper中的一个时间单元,zookeeper所有时间都是以这个时间单元为单位的。

initTime:当zookeeper集群中follower启动时,需要去同步leader中的数据,leader允许follower在innitTime时间内完成同步。

syncLimit:运行过程中,leader负责跟zk集群进行通讯,leader检测机器是否处于存活状态,发出心跳包在syncLimit秒后仍未收到返回,则认为follower挂掉了。

dataDir:快照目录和事物日志的存储路径。

clientPort:客户端访问服务端的端口号,一般来说设为2181。

集群机器配置:

server1=ip1:2888:3888;

server2=ip2:2888:3888;

server3=ip3:2888:3888;

上述配置标示集群中又三台zookeeper机器,应为集群中每个机器都需要感知其他机器的存在,在dataDir所指目录下有一个myId文件存放一个id,即server1中的1,所有机器的myId中的数值不能重复,且取值范围为1-255。上面配置文件中出现了三个端口分别是2181、2888、3888,2181是客户端访问服务端的端口号,2888是follow连接leader的端口号,3888是选举leader的端口号。

上述基本就完成了zookeeper的安装与部署。

二、zookeeper常用命令

1、启动/停止/zookeeper:sh bin/zkServer.sh (start/stop)

2、进入zookeeper树状环境:sh bin/zkCli.sh

3、创建新文件:create /a b (a为创建文件路径,b为创建文件初始值)

4、设置文件值:set /a b (a为文件路径,b为文件修改value)

5、删除文件:delete /a

6、获取文件值:get /a

7、ls 查看节点所包含的内容 ,ls2查看节点包含内容和更新次数等信息

8、连接:telnet 127.0.0.1 2181 后执行(四字命令)

stat:查看zookeeper状态和客户端连接信息

kill:关闭server

conf:输入zk配置信息

cons:输出连接zookeeper的所有客户端连接信息

envi:输出环境变量,包括系统和Java环境变量。

三、zookeeper集群

zookeeper集群有个重要的特性,即只要集群中超过一半的机器可用,则集群整体对外是可用的。一半来说,集群中配置的机器数量一半为基数个数,当只有两个zookeeper机器时,挂掉一个zookeeper则不满足超过一半机器可用,如果此时有三台机器挂一台的情况下集群还是可用的。

四、zookeeper权限配置

首先zookeeper对权限的配置是节点级别的,且不继承,即子节点不继承父节点的权限。

zookeeper提供了四中权限的认证:

1、world:只有一个单一的id,anyone,标示任何人都可以访问。

2、auth:标示通过验证的用户均可以访问

3、digest:通过使用(用户名:密码)生成md5加密字符串id,权限认真直接通过发送(用户名:密码)形式验证

4、ip:使用客户端主机ip作为ACL标识,只有满足此ip才能查看数据。

一般来说用的比较多的是digest方式;

新建节点例子如下:



admin例子:admin:1234

read例子:guest:1234

访问节点数据例子如下


这样对Zookeeper上的节点数据设置多个用户,用于不同的权限操作。

0 0
原创粉丝点击