【问题标题】:Disk space of Cassandra node is over 80%Cassandra节点磁盘空间超过80%
【发布时间】:2021-06-04 18:26:25
【问题描述】:

我在 AWS EC2 实例中运行 12 个 Cassandra 节点,其中 4 个使用了几乎 80% 的磁盘空间,因此在这些节点上压缩失败,因为服务器的类型是 EC2 实例,我不能动态添加模式磁盘空间到现有数据量,我不能要求 IT 团队添加更多节点来扩展集群,因为其他节点的磁盘空间小于 40%,在修复不平衡集群问题之前,是有什么办法可以释放一些磁盘空间?

我的问题是如何找到未使用的 sstable 并将它们移动到另一个分区以运行压缩并释放一些空间?

释放一些磁盘空间的任何其他建议。 PS:我已经删除了所有的快照和备份。

【问题讨论】:

    标签: cassandra cassandra-3.0


    【解决方案1】:

    如果您使用的是 vnode,那么数据大小差异应该不会太大。在提出解决方案之前,我们必须找到不同节点上数据大小差异很大的原因。 您必须查看日志以查看某些大型 SStable 是否存在损坏,从而导致压缩失败和数据大小增加。或者,您可以在日志中找到一些内容,指出磁盘大小增加的原因。

    由于一些错误,我们在 Cassandra 2.1.16 中遇到了一个问题,即使在压缩后旧的 sstable 文件也没有被删除。我们阅读了日志并确定了可以删除的文件。这是我们在阅读日志后发现数据量增加的原因的示例。

    所以你必须在解决之前找出原因。如果这是一个可怕的状态,您可以识别在主要流量期间未使用的键空间/表,并将这些 sstables 移动到备份中并删除这些 sstables。压缩过程结束后,您可以将它们带回来。

    警告:在尝试生产之前测试任何程序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-11-02
      • 2019-06-06
      • 1970-01-01
      • 2016-07-28
      • 2021-10-24
      • 1970-01-01
      • 2020-04-24
      相关资源
      最近更新 更多