所以我们在两晚前有一个节点出现故障,并且花了一天的大部分时间将其恢复。我还在学习,所以我不熟悉修复选项,但基于这里的文章:http ://www.datastax.com/dev/blog/repair-service-opsc4
我可以只启用维修服务吗?这是否消除了手动运行 nodetool repair 的需要,这很痛苦,因为它是手动的,而且显然 I/O 非常密集,这让我很担心。
此外,假设此服务在本文中描述的真实世界中工作,我是否可以确信以建议的时间间隔启动服务不会导致性能问题?
所以我们在两晚前有一个节点出现故障,并且花了一天的大部分时间将其恢复。我还在学习,所以我不熟悉修复选项,但基于这里的文章:http ://www.datastax.com/dev/blog/repair-service-opsc4
我可以只启用维修服务吗?这是否消除了手动运行 nodetool repair 的需要,这很痛苦,因为它是手动的,而且显然 I/O 非常密集,这让我很担心。
此外,假设此服务在本文中描述的真实世界中工作,我是否可以确信以建议的时间间隔启动服务不会导致性能问题?
定期维修
建议您经常每周运行修复作为反熵机制。如果您运行修复的频率不高于 gc 宽限秒设置并且有很多墓碑,则可能会遇到问题(僵尸数据)。
在现实生活中运行维修服务
简短的回答是肯定的。维修服务通过自动化此操作使您的生活更轻松,它还将维修分成小部分,以减轻工作量并防止您在维修过程中遇到资源争用和性能问题。对于大多数集群来说,它应该是开箱即用的,在某些情况下,您可能需要调整一些默认设置。有用的杠杆包括——max_parallel_repairs、min_repair_time、snapshot_override
恢复一个宕机的节点
对于您知道一个节点大约一天左右不同步的这种特殊情况,我预计您的集群在修复期间会承受压力。创建默克尔树是 CPU 密集型和 io 密集型的。维修服务计算的较小切片应该有助于简化此过程。