美文网首页
Zookeeper日志清理

Zookeeper日志清理

作者: 风筝flying | 来源:发表于2021-08-11 16:38 被阅读0次

    周末的时候在家收到了工作的告警通知,远程登录后发现是自运维的CK集群硬盘空间不足,通过命令查看各个目录的大小,确定是Zookeeper的日志及snapshot占用了绝大部分空间。
    Zookeeper主要存放了两类文件,snapshot和log,前者是内存数据的快照,后者是记录修改数据相关的操作记录,类似于mysql的binlog。
    正常的运行过程中,zk会不断的将快照数据和日志记录输出到这两个目录,并且zk不会自动清理这些文件,所以需要我们手动清理。清理的脚本如下:

    #! /bin/bash
    # snapshot目录
    snapshotDir=xxxx
    #log目录
    dataLogDir=xxxx
    logDir=xxxx
    #保留文件数量
    leftFileNum=10
    #删除
    ls -t $snapshotDir/snapshot.* | tail -n +$leftFileNum | xargs rm -f
    ls -t $dataLogDir/log.* | tail -n +$leftFileNum | xargs rm -f
    ls -t $logDir/zookeeper.log.* | tail -n +$leftFileNum | xargs rm -f
    

    从3.4.0开始,zookeeper提供了自动清理snapshotlog的功能,在zoo.cfg文件中配置如下参数:

    # 指定保留文件数量
    autopurge.snapRetainCount=10
    # 指定清理频率,单位是小时,默认0,表示不开启
    autopurge.purgeInterval=12
    

    相关文章

      网友评论

          本文标题:Zookeeper日志清理

          本文链接:https://www.haomeiwen.com/subject/etycbltx.html