美文网首页
storm worker异常重启

storm worker异常重启

作者: Moon_魔宽 | 来源:发表于2019-05-23 22:59 被阅读0次

    版权声明:本文为博主原创文章,未经博主允许不得转载。https://www.jianshu.com/p/a000575de7ae

    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,这个明天看一下是否需要进行调整。

    相关文章

      网友评论

          本文标题:storm worker异常重启

          本文链接:https://www.haomeiwen.com/subject/gswizqtx.html