Cassandra 2.2.8:使用GossipingPropertyFileSnitch从节点路由流量

时间:2017-02-18 18:56:07

标签: cassandra

  • 使用Cassandra 2.2.8,gossipingpropertyfilesnitch

我正在修复一个节点并压缩大量的sstables - 我正在考虑减轻cpu / node上的负载,并希望将传入的Web流量路由到集群中的其他节点。

请大家分享一下我如何将互联网流量路由到群集中的其他节点,以便让节点继续在主要维护工作中使用cpu?

提前致谢

1 个答案:

答案 0 :(得分:2)

如果您具有可以处理节点关闭的复制因子和一致性级别,则可以在压缩期间从群集中删除该节点

nodetool disablebinary
nodetool disablethrift

这会阻止您的客户端应用程序发送请求并充当协调器,但它仍会从写入中收到突变,因此它不会落后。如果您想进一步减少负载,可以使用

完全删除它
nodetool disablebinary
nodetool disablethrift
nodetool disablegossip

但请确保在cassandra.yaml(默认为3小时)中定义的max_hint_window_in_ms之前再次启用八卦。如果您不知道该节点的提示将过期而未交付,则会导致一致性问题,如果不进行修复将无法解决。

重新连接后等待待处理提示,并且在再次禁用八卦之前,活动提示已降至0。注意:挂起将始终为+1,因为它具有常规计划任务,因此1不为零。

可以使用OpsCenter,nodetool tpstats或通过JMX org.apache.cassandra.metrics:type=ThreadPools,path=internal,scope=HintedHandoff,name=PendingTasksorg.apache.cassandra.metrics:type=ThreadPools,path=internal,scope=HintedHandoff,name=ActiveTasks

检查提示线程池