如何防止Cassandra提交日志填满磁盘空间

pla*_*bre 7 cassandra datastax-java-driver datastax cassandra-2.1

我正在AWS上运行双节点Datastax AMI集群.昨天,卡桑德拉开始拒绝一切的联系.系统日志没有显示.经过大量的修补,我发现提交日志已经填满了分配的挂载上的所有磁盘空间,这似乎导致连接拒绝(删除了一些提交日志,重新启动并且能够连接).

我在使用DataStax AMI 2.5.1和Cassandra 2.1.7

如果我决定从头开始擦除并重新启动所有内容,我该如何确保不再发生这种情况?

Aar*_*ron 10

您可以尝试降低您的commitlog_total_space_in_mb设置cassandra.yaml.对于64位系统,默认值为8192MB(它应该在您的.yaml文件中注释掉......在设置时您必须取消注释).在调整磁盘大小时,通常是一个好主意.

您可以通过du在commitlog目录上运行来验证这一点:

$ du -d 1 -h ./commitlog
8.1G    ./commitlog
Run Code Online (Sandbox Code Playgroud)

虽然较小的提交日志空间会导致更频繁的刷新(增加磁盘I/O),因此您需要密切关注它.