我们有一个生产中的Apache Cassandra (版本3.11.4)集群,在两个DC中有5-5个节点。我们最近刚刚添加了最后两个节点,修复完成后,我们在两天前开始了清理工作。节点非常大,/data有2.8TB的安装磁盘空间,在清理之前,Cassandra使用了大约48%的空间。清理在大约14小时后在第一个节点上完成(我认为它没有损坏,日志中没有错误,nodetool compactionstats
显示0个未决任务),在清理期间,磁盘使用率增加到81%,从那时起就再也没有回来过。Cassandra会清理它吗?如果会,什么时候,或者我们必须手动做一些事情?实际上我们没有找到任何可以手动删除的临时文件,所以我们现在不知道。有没有人遇到过这个用例并有解决方案?
提前感谢!
发布于 2021-01-15 17:50:05
检查旧的快照-很可能您有许多快照(来自备份、截断或删除的表)是指向包含数据的文件的硬链接(并且不会消耗空间),在nodetool cleanup
之后,数据文件会被重写,并创建新文件,而硬链接仍然指向原始文件,从而消耗磁盘空间。使用nodetool listsnapshots获取现有快照的列表,使用nodetool clearsnapshot删除不必要的快照。
https://stackoverflow.com/questions/65732914
复制相似问题