zookeeper 清理日志
在使用zookeeper过程中,会有dataDir和dataLogDir两个目录,分别用于snapshot和事务日志的输出(默认情况下只有dataDir目录,snapshot和事务日志都保存在这个目录中,正常运行过程中,ZK会不断地把快照数据和事务日志输出到这两个目录,并且如果没有人为操作的话,ZK自己是不会清理这些文件的,需要管理员来清理。
配置方法
从3.4.0开始,zookeeper提供了自动清理snapshot和事务日志的功能,通过配置 autopurge.snapRetainCount 和 autopurge.purgeInterval 这两个参数能够实现定时清理了。这两个参数都是在zoo.cfg中配置的:
For Example: 一个zoo.cfg配置的例子
1 | tickTime=2000 |
autopurge.purgeInterval 这个参数指定了清理频率,单位是小时,需要填写一个1或更大的整数,默认是0,表示不开启自己清理功能。
autopurge.snapRetainCount 这个参数和上面的参数搭配使用,这个参数指定了需要保留的文件数目。默认是保留3个。
脚本方法
写了一个脚本, 可以每天定时执行清理。
脚本内容如下:
1 | #!/bin/bash |
- 需要根据自己的情况修改脚本中的dataDir、dataLogDir路径。
如果感觉文章还可以的话,帮点点下面的广告哦!非常感谢!