当前位置:   article > 正文

Dolphinscheduler伪集群模式下worker节点挂掉导致工作流一直运行的排查和解决过程_dolphinschedulerworker节点故障转移

dolphinschedulerworker节点故障转移

该问题发生在hiveSQL的脚本执行过程中,sql跑着跑着worker进程就挂掉了,在之前也发生过好几次,但是一直没有重视都是重启就完事了。但是事不过三,所以这次深入研究下到底是什么情况。

首先,我使用的海豚调度的版本是2.0.7,伪集群部署模式。然后进入worker日志看下,报了什么错
在这里插入图片描述
org.apache.dolphinscheduler.registry.api.RegistryException: zookeeper check key is existed error,之前从来没有遇见过,根据字面意思,大概可以判断出来在任务运行过程中zookeeper出了点问题,但是可以确保zookeeper是没有挂掉的。

经过网上搜索,在github有人提了这个问题,cpu高负载情况下worker挂掉,跟我情况一摸一样。然后进入registry.properties查看,主要目的是看下zookeeper的连接配置。

registry.plugin.name=zookeeper
#zookeeper连接等待时间600ms
registry.block.until.connected.wait=600 
  • 1
  • 2
  • 3

看到了这样的配置,基本上原因可以确定了,在部署海豚调度的节点上其实还有一些其他的服务,比如hive、namenode和resourcesmanager(这样确实很不合理),这是非常吃资源的,但是没办法确实只有这点资源,所以导致hivesql一运行cpu高负载情况就会导致卡顿,而zookeeper设置超时时间600ms,这样出问题的概率那是百分百。

所以,只需要将这个时间设置大一点就好了。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/405745
推荐阅读
相关标签
  

闽ICP备14008679号