是什么导致我的cassandra节点有这么多挂起的任务?

jk9hmnmh  于 2021-06-09  发布在  Cassandra
关注(0)|答案(1)|浏览(402)

我在kubernetes上运行一个6节点的cassandra集群。
最近,其中一个节点不断崩溃(或者性能下降到需要反弹的程度)。
随着时间的推移,我看到待处理任务的数量稳步上升;一旦它达到几百个,那么豆荚就变得不稳定了。跑步 nodetool tpstats 表明它是 MemtableReclaimMemory 使用挂起的线程。
此外,在这个节点上打开的文件描述符的数量比我的其他节点高得多。行为节点的fds都在990左右,而问题节点的fds几乎是这个值的两倍,而且爬升速度很慢。
我们从凌晨4点(clearnapshot,snapshot)开始运行夜间备份作业,确切的开始时间在节点之间错开。当这些作业开始时,挂起的任务/文件描述符的数量就会激增(对于非快照数据相关的文件,系统文件描述符会慢慢添加)。
如果节点/pod被反弹,那么它会运行一天/几天,然后这种模式开始重复。
星期三有一项每周的修理工作。
你知道是什么原因造成的吗?或者下一步要解决什么问题?感觉资源在快照之后没有被释放。
由于这是一个生产数据库,而且我对这项技术缺乏经验,所以我不确定哪些操作(维修/压实)可以安全使用,哪些操作需要等到下班时间。
cassandra 3.11.4 java 1.8.0è232


jv2fixgn

jv2fixgn1#

有一个损坏的sstable,我没有发现,因为cassandra日志没有正确地转发到kibana。一旦修复了Cassandra节点,问题就消失了。

相关问题