Zookeeper

一、安装zookeeper单点模式


1、zookeeper安装前,需安装jdk,linux下jdk安装方式自己解决。


2、去官网下载zookeeper安装包,将tar.gz文件解压到你的安装目录。进入zookeeper的conf目录,将zoo_sample.cfg改成zoo.cfg。将zoo.cfg的内容配置成如下

tickTime=2000  # Zookeeper服务器心跳时间,单位毫秒 。

initLimit=5 # 投票选举新leader的初始化时间。

syncLimit=2 # Leader与Follower之间的最大响应时间单位,响应超过syncLimit*tickTime,Leader认为Follwer死掉,从服务器列表中删除Follwer。

dataDir=/home/xuer/zookeeper # 数据持久化路径 。

dataLogDir=/home/xuer/zookeeper/logs # 日志保存路径,这个一定自己先建好,否则可能会出错 。

clientPort=2181 # 连接端口。

dataDir会自动生成,但是dataLogDir目录记得自己手动建,不手动创建会导致启动失败。


3、启动zookeeper,进入zookeeper的bin目录,运行如下命令:

./zkServer.sh start #启动zookeeper命令

./zkServer.sh status #查看zookeeper启动状态

如果zookeeper的状态是Standalone,则zookeeper单点模式配置成功。


二、安装zookeeper集群模式


1、执行单点模式的第一步,第二步后,继续往zoo.cfg最后添加配置文件,添加内容如下

#zookeeper集群各节点的ip信息,端口不要随意改动,ip随便配置。

server.1=host1:2888:3888

server.2=host2:2888:3888

server.3=host3:2888:3888

2、在zookeeper的dataDir=/home/zookeeper目录下新建一个文件myid,host1机器上的内容为1,host2机器上为2,host3机器上为3。具体哪台机器上为几,看zoo.cfg的配置server.x=host,host机器上的myid的内容为x。


3、每台机器上都启动zookeeper,查看zookeeper的状态可以看到是leader还是follower,否则就配置失败。


三、几点注意的地方


1、注意zookeeper集群节点数为奇数台,即3台,5台……


2、zookeeper集群启动时,最好集群每个节点都在同一时间内启动,因为他们要选举leader。


也许当第一次zookeeper集群启动的时候,会提示:Cannot open channel to 3 at election address /192.168.0.93:3888

java.net.ConnectException: Connection refused

在网上找了相关的资料,说这个异常可以忽略,原因是还有节点没有启动zookeeper,全部启动之后,自然就不会出异常了。通过日志观察发现,这些异常信息确实都在启动的时候报出的,后面zookeeper就都能连接了。

url: http://blog.csdn.net/jingling_zy/article/details/7297643


3、先关闭防火墙,防火墙也会影响zookeeper之间的连接。也许会报can’t connection的错误。在生产环境中,要开放有关zookeeper的几个端口。


你可能感兴趣的:(Zookeeper)