驾驶Full Cassandra DSE

时间:2016-06-16 17:43:28

标签: cassandra datastax cassandra-2.0 datastax-enterprise

我刚刚在不知情的情况下填满了一个驱动器。我添加了一个新节点,重建很顺利。然后我尝试运行清理,但由于空间的原因,我得到普通的无法写入磁盘。什么是解决这个问题的最佳方法?我确实有复制,所以我可以格式化驱动器并重建,但不确定它是否是最佳方式。有没有办法通过检查新节点上存在的内容来手动删除文件?任何想法都会很棒,我不会再让它发生!

群集信息:

Cassandra版本:2.1.11.908

DataStax Enterprise版本:4.8.2

可用内存:39283 MB

CPU核心数:16

操作系统:linux

我们使用JBOD配置运行多个硬盘驱动器。所以其他驱动器有很多,只有一个驱动器在一个节点上。

更新:所以我仍然遇到问题。我清理了大约2.5TB的6.0TB驱动器,在清理过程中我收到以下错误:

java.io.IOException:磁盘已满     在org.apache.cassandra.db.compaction.CompactionManager.doCleanupOne(CompactionManager.java:778)〜[cassandra-all-2.1.11.908.jar:2.1.11.908]     在org.apache.cassandra.db.compaction.CompactionManager.access $ 400(CompactionManager.java:88)〜[cassandra-all-2.1.11.908.jar:2.1.11.908]     在org.apache.cassandra.db.compaction.CompactionManager $ 5.execute(CompactionManager.java:406)〜[cassandra-all-2.1.11.908.jar:2.1.11.908]     在org.apache.cassandra.db.compaction.CompactionManager $ 2.call(CompactionManager.java:303)〜[cassandra-all-2.1.11.908.jar:2.1.11.908]     在java.util.concurrent.FutureTask.run(FutureTask.java:266)〜[na:1.8.0_72]     在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)〜[na:1.8.0_72]     at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617)[na:1.8.0_72]     在java.lang.Thread.run(Thread.java:745)[na:1.8.0_72]

我需要更多空间,而且我不确定如果没有清理,我可以清理一些。但我无法成功运行一个。我想唯一的出路是在擦除驱动器中的数据并重新同步所有数据后进行nodetool重建?

0 个答案:

没有答案