storm worker异常重启

storm supervisor.out日志中有报错:

supervisor [INFO] Shutting down and clearing state for id ae1ad586-ce5c-459a-8f32-30410683b4d6. Current supervisor time: 1408166828. State: :timed-out, Heartbeat:

对于一个worker的重启,一般来说基本为三种情况:

1、代码异常,一般打印出的日志会有较为明确的体现;

2、JVM内存溢出,由于进程重启,没有保留当时进程的堆内存使用率情况;

3、worker本身无异常,supervisor主动重启worker。

对于第三种情况,从日志中可以看到, 是因为timeout超时导致。

推测:

1、worker重启且连续出现在同一个节点上,因此认为该节点本身问题的可能性大一点。

2、supervisor和worker本身都在同一节点,当supervisor检测不到worker的心跳,会将其shutdown,而由于心跳文件是在本地,因此是与网络无关的。

3、更大的可能性是本机当时的负载比较高,该节点上有30+个worker进程,在12:48分前后节点负载从小于1陡然增大到6.44(当然这个值不算很高),负载突然变大可能导致worker无法及时更新心跳文件,导致supervisor判定其timeout,重启了worker。

方案:

1、白天看了cpu和内存的监控日志,因为是每隔5分钟打印出的瞬时值,不能很好反应资源的波动情况,得出了资源较为空闲的结论,明天看一下确定当时资源波动到底如何。

2、加大supervisor和worker之间的心跳时间,在storm.yaml中设置supervisor.worker.timeout.secs,这个明天看一下是否需要进行调整。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值