Cassandra 节点上的高负载
High load on Cassandra nodes
出于某种原因,我的 Cassandra 节点负载过高。下面是获取图片的一些信息。
当我创建一个全新的集群时,负载在几天内一直很低,然后随着时间的推移而增加,一周后它就消失了,导致我发现整个集群不稳定
我正在为我的一个密钥空间拍摄快照,每 4 小时包含大约 300-400 MB 的数据,并删除超过 7 天的密钥空间,所有这些都在 OpsCenter 中配置
群集在 Microsoft Azure 的条带化磁盘上 运行
节点 运行 2 个内核,3.5 GB RAM,我很清楚这低于推荐的硬件,但这不应该是高的原因加载,我在 4 个内核和 7 GB RAM 上尝试 运行,没有发现任何差异
我确定可能有一大堆东西会导致高负载,但我想有些东西比其他东西更有可能。
编辑
看来这个高负载是由 OpsCenter 中的修复服务引起的。必须有一些设置来调整服务运行修复的方式。
您可以通过在 opscenterd.conf 中添加 [repair_service] 部分来配置维修服务。
调整的主要手段是:
max_parallel_repairs = 0
您可以增加此值,直到您的维修完成得足够快,可以在您要求的时间段内完成 (< gc_grace_seconds)
min_repair_time = 5
如果您没有那么多数据,修复服务可能完成得太快并重新启动 -- 导致不必要的开销。您可以增加此值以确保您不会 运行 过于频繁地修复
snapshot_override
同样,如果您没有太多数据并且修复服务完成得太快,您将生成太多快照(默认情况下,修复服务会在每次修复前拍摄快照)。如果您的快照目录很快变满,您可能需要关闭此功能,直到您将服务调整为仅 运行 一次(使用 raise min_repair_time drop parallel_repairs)。
注意:维修服务的重点是将expensive/resource耗费的维修过程分散到更小的工作中,这意味着您可能会增加您的整体cpu 利用率始终提高 5% 或 10%,而不是在定期修复 运行 期间出现峰值并影响您的工作量。
出于某种原因,我的 Cassandra 节点负载过高。下面是获取图片的一些信息。
当我创建一个全新的集群时,负载在几天内一直很低,然后随着时间的推移而增加,一周后它就消失了,导致我发现整个集群不稳定
我正在为我的一个密钥空间拍摄快照,每 4 小时包含大约 300-400 MB 的数据,并删除超过 7 天的密钥空间,所有这些都在 OpsCenter 中配置
群集在 Microsoft Azure 的条带化磁盘上 运行
节点 运行 2 个内核,3.5 GB RAM,我很清楚这低于推荐的硬件,但这不应该是高的原因加载,我在 4 个内核和 7 GB RAM 上尝试 运行,没有发现任何差异
我确定可能有一大堆东西会导致高负载,但我想有些东西比其他东西更有可能。
编辑
看来这个高负载是由 OpsCenter 中的修复服务引起的。必须有一些设置来调整服务运行修复的方式。
您可以通过在 opscenterd.conf 中添加 [repair_service] 部分来配置维修服务。
调整的主要手段是:
max_parallel_repairs = 0
您可以增加此值,直到您的维修完成得足够快,可以在您要求的时间段内完成 (< gc_grace_seconds)
min_repair_time = 5
如果您没有那么多数据,修复服务可能完成得太快并重新启动 -- 导致不必要的开销。您可以增加此值以确保您不会 运行 过于频繁地修复
snapshot_override
同样,如果您没有太多数据并且修复服务完成得太快,您将生成太多快照(默认情况下,修复服务会在每次修复前拍摄快照)。如果您的快照目录很快变满,您可能需要关闭此功能,直到您将服务调整为仅 运行 一次(使用 raise min_repair_time drop parallel_repairs)。
注意:维修服务的重点是将expensive/resource耗费的维修过程分散到更小的工作中,这意味着您可能会增加您的整体cpu 利用率始终提高 5% 或 10%,而不是在定期修复 运行 期间出现峰值并影响您的工作量。