进入存放目录:cd /work/src 解压zookeeper,并对文件夹改名
tar -zxvf zookeeper-3.4.6.tar.gz -C /work/ cd /work mv zookeeper-3.4.6 zookeeper首先需要在zookeeper文件下创建logs和data两个文件夹
cd /work/zookeeper mkdir data mkdir logs然后进入config目录进行配置文件的修改
1.配置文件:zoo.cfg config文件夹内是没有直接给出的需要从备份中复制一下: 复制:cp zoo_sample.cfg zoo.cfg 编辑配置文件:vim zoo.cfg 向其中添加如下:
dataDir = /work/zookeeper/data dataLogDir = /work/zookeeper/logs server.1 = yangyangMaster:2888:3888 server.2 = yangyangNode1:2888:3888 server.3 = yangyangNode1:2888:38882.配置文件:myid 这个文件需要自己创建 用来标记主机的 每台主机的myid都要不同
vi myid 1修改myid 分别为 2 3
在/work/zookeeper/bin目录下 三台主机同时输入 zkServer.sh start 启动zookeeper (可以在环境变量里设置,以便于下次不用再进入bin中操作) 查看zookeeper状态 zkServer.sh status 验证zookeeper集群,启动客户端 zkCli.sh <在一台主机上就行>
至此:zookeeper集群安装完毕!
由于zookeeper运行一段时间后,会产生大量的日志文件,把磁盘空间占满,导致整个机器进程都不能活动了,所以需要定期清理这些日志文件,方法如下:
1、写一个脚本文件cleanup.sh内容如下:
java -cp zookeeper.jar:lib/slf4j-api-1.6.1.jar:lib/slf4j-log4j12-1.6.1.jar:lib/log4j-1.2.15.jar:conf org.apache.zookeeper.server.PurgeTxnLog <dataDir> <snapDir> -n <count>其中: dataDir:即上面配置的dataDir的目录 snapDir:即上面配置的dataLogDir的目录 count:保留前几个日志文件,默认为3
2、通过crontab写定时任务,来完成定时清理日志的需求
crontab -e 0 0 * * /opt/zookeeper-3.4.10/bin/cleanup.sh