【Linux】安装【zookeeper】

xixuefeng Linux, Other 2017-12-29 15:47:38 1,786 次浏览 【Linux】安装【zookeeper】已关闭评论

Linux:CentOS 7.3

zookeeper:3.5.3

zookeeper是java编写的,运行在java环境下,所以Linux系统中需要安装JDK1.6以上版本,本测试环境JDK版本为1.8,JDK安装步骤,参见:http://www.xxf-home.net/archives/856

本测试搭建的是三节点的集群,三个节点分别如下:

节点1(IP:192.168.10.5    主机名:node1)

节点2(IP:192.168.10.6    主机名:node2)

节点3(IP:192.168.10.7    主机名:node3)

1:下载zookeeper软件

https://zookeeper.apache.org/releases.html

2:上传至Linux指定目录,上传步骤略

3:将zookeeper解压至安装目录,本测试安装至/usr/local

注:三个节点均做此操作

4:创建相关目录(三个节点全部都创建,以节点2为例)

5:配置zookeeper(三个节点做同样操作)

说明:

  • tickTime:时间单位(毫秒),缺省:2000,也就是1 tick
  • clientPort:客户端连接zookeeper服务的端口,缺省:2181
  • initLimit:初次同步的阶段(leader连接followers)允许的时间数,缺省:10个时间单位(10 tick),如果还是没有连上则认为有follower失联了
  • syncLimit:允许followers与ZooKeeper 的心跳时间间隔,缺省:5 tick,超时则认为消息丢失
  • dataDir:内存数据的快照数据存放路径,初始时应该为空,myid文件就存放在此
  • dataLogDir:顺序日志存放路径,初始时应该为空,如果不设置此目录,则顺序日志存放在dataDir路径下
  • server.N=A:B:C 其中N是一个数字,代表这是第几号服务器(这个数字同时也要写在myid中,且不允许重复);A是服务器的IP地址;B表示服务器与群集中的“领导者”交换信息的端口;当领导者失效后,B表示用来执行选举时服务器相互通信的端口。
  • maxClientCnxns:一个客户端的连接数限制,默认是60
  • minSessionTimeout, maxSessionTimeout :一般情况下客户端连接zookeeper的时候,都会设置一个session timeout,如果超过这个时间client没有与zookeeper server有联系,则这个session会被设置为过期,但是这个时间不是客户端可以无限制设置的,服务器可以设置这两个参数来限制客户端设置的范围

6:创建myid

在dataDir设置的目录下创建一个名字是myid的文件,里面的内容就是zoo.cnf中server.后面的值。

注:如果不设置myid,那么在启动时,提示启动失败,如下:

同时在日志中也会报类似如下的错误:

7:各个节点分别启动

8:查看状态

9:zookeeper服务端常用命令

10:zookeeper客户端常用命令

zookeeper与shell名利有点儿类似,可以对zookeeper进行访问、创建数据、修改等

连接命令,以节点2做为客户端,连接命令行连接节点1:

客户端查看帮助信息,随便敲几个字母回车后就会出现帮助,因为就算你敲help,它也不认识:)

11:注意

zookeeper不会主动的清除旧的快照和日志文件,这个是管理员的责任。

可以通过编写shell定期删除N天前的快照数据和日志,也就是dataDir和dataLogDir下的数据

 

 

 

 

 

回顶部