磁盘空间不足导致zookeeper宕机

版权声明:本文为原创文章,转载请标明出处。 https://blog.csdn.net/u013467442/article/details/88989637

楔子

某服务需要使用Zookeeper作为配置管理和服务注册与发现,今天突然发现服务不可用,病症就是无法连接zk,服务不断的重试,报如下的错误。(zk版本为3.4.10 单机部署)
在这里插入图片描述

定位

使用df -Th查看文件的使用情况 , 发现磁盘空间满了,使用du -sh *查看当前目录下各个文件及目录占用空间大小 ,发现有个日志文件占据了195G, oh my god!
在这里插入图片描述
果断删除该文件。然后重启zk,依然不能重启,查看zk得日志,发现如下的报错信息:

ERROR org.apache.zookeeper.server.persistence.Util: Last transaction was partial.

意思就是由于磁盘空间满了导致Zookeeper的最后一次事务性操作不完整导致无法重启。则么办?

先查看zk的配置文件,查看dataLogDir的目录,如下:
在这里插入图片描述
进入到该目录的version-2目录下,把大小为0(异常的)日志全部删除掉,文中已删除,然后就可重启成功,但是最后一个事务操作可能会破坏或者丢失。
在这里插入图片描述
结果如下所示:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/u013467442/article/details/88989637