小编pet*_*ock的帖子

Cassandra:Long Par New GC在将新节点引导到群集时暂停

我已经看到在将新节点引导到Datastax Enterprise Cassandra集群时经常发生的问题(版本:2.0.10.71)

启动要引导的新节点时,引导过程开始从群集中的其他节点流式传输数据.在短时间内(通常为一分钟或更短时间) - 群集中的其他节点显示高Par New GC暂停时间,然后节点从群集中退出,导致流会话失败.

INFO [main] 2015-04-27 16:59:58,644 StreamResultFuture.java(第91行)[Stream#d42dfef0-ecfe-11e4-8099-5be75b0950b8]使用/10.1.214.186开始流会话

INFO [GossipTasks:1] 2015-04-27 17:01:06,342 Gossiper.java(第890行)InetAddress /10.1.214.186现在已关闭

INFO [HANDSHAKE-/10.1.214.186] 2015-04-27 17:01:21,400 OutboundTcpConnection.java(第386行)握手版本/10.1.214.186

INFO [RequestResponseStage:11] 2015-04-27 17:01:23,439 Gossiper.java(第876行)InetAddress /10.1.214.186现已启动

然后在另一个节点上:

10.1.214.186错误[STREAM-IN-/10.1.212.233] 2015-04-27 17:02:07,007 StreamSession.java(第454行)[Stream#d42dfef0-ecfe-11e4-8099-5be75b0950b8]发生流错误

还可以查看日志中的内容:

10.1.219.232 INFO [ScheduledTasks:1] 2015-04-27 18:20:19,987 GCInspector.java(第116行)用于ParNew的GC:2个集合118272 ms,使用980357368; 最大值是12801015808

10.1.221.146 INFO [ScheduledTasks:1] 2015-04-27 18:20:29,468 GCInspector.java(第116行)用于ParNew的GC:154911 ms用于1个集合,1287263224使用; 最大值是12801015808`

每次我们尝试引导新节点时,它似乎都发生在不同的节点上.

我找到了这张相关的票. https://issues.apache.org/jira/browse/CASSANDRA-6653

我唯一的猜测是,当新节点出现时,很多压缩都会启动并且可能导致GC暂停时间,我考虑过设置 concurrent_compactors = 1/2 my total CPU

有人有想法吗?

编辑:有关GC设置的更多详细信息在EC2上使用i2.2xlarge节点:

MAX_HEAP_SIZE = "12G"

HEAP_NEWSIZE = "800M"

JVM_OPTS ="$ JVM_OPTS -XX:+ UseParNewGC"

JVM_OPTS ="$ JVM_OPTS -XX:+ …

cassandra datastax-enterprise datastax

7
推荐指数
1
解决办法
1213
查看次数

标签 统计

cassandra ×1

datastax ×1

datastax-enterprise ×1