Timed out waiting for Remote Spark Driver to connect to HiveServer2报错解决办法

Timed out waiting for Remote Spark Driver to connect to HiveServer2报错解决办法,第1张

Timed out waiting for Remote Spark Driver to connect to HiveServer2报错解决办法

环境 :CDH 6.3.2 spark2.4.0 hive 2.1.1
背景:5月份进行集群迁移,升级CDH,调度工具换成Dolphin Scheduler,迁移后程序运行始终不稳定,发现一个非常常见的错误,如下图:

当时也看了针对报错,看了网上的解决方案,我们架构师改了影响spark连接超时的三个参数
hive.spark.client.server.connect.timeout=30000
hive.spark.client.connect.timeout=30000
hive.spark.client.future.timeout=300
修改完之后,问题仍然没有解决,就因为这个小bug,经常导致我们Dolphin Scheduler任务跑完了,hive分区中的数据没数,或者程序直接报错,虽然Dolphin Scheduler有重试功能,但是一直这样子下去,会让人感觉,这个hive on spark 不靠谱,不稳定,动不动就连接超时,重试还会增加任务运行时间。虽然解决不了,但是看着每天任务日志上几十几十的报错任务,心里也揪心,这个问题就不能彻底解决吗?
在某周三的上午,皱着眉头一直在想这个问题,整合网上的问题解决方案,对着日志沉思,究竟是哪里出了问题?在我细心的观察下,我发现了问题的关键,参数是设置了,但是设置错地方了! 打开cloudera managere,进入hive集群,点击配置页签,搜索hive-site.xml,如下图:

上图中看到,我们的集群中,在Hive(服务范围)配置了这3个参数,但是根本没有卵子用,该超时还是超时,然后我找到了架构师,说这块需要改一下,把那三个参数配置在Gateway Default Group那里去,保存,重启集群。
结果是第二天早上依赖,照常巡检Dolphin Scheduler任务,令人欣喜的是,0任务报错,0监控预警!打集群上线依赖,还是头一回,可以说是心情无比的激动。

总结:关于Timed out waiting for Remote Spark Driver to connect to HiveServer2 这个问题,有几个大神的博客里已经讲的很清楚了,但是大神只说了是这个参数影响的,没有说在哪里配置这个参数,导致配置不生效。这里说明一下细节,希望对遇到同样问题的人有所帮助。

参考文章:
1、https://blog.csdn.net/benpaodexiaowoniu/article/details/103872370 这个大神已经写的很详细了,我只是确认了参数配置在Gateway Default Group是绝对可以生效的
2、https://cloud.tencent.com/developer/news/841558 扒源码找超时原因,建议深度看一下,对了解hive on spark 大有裨益

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5610158.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-15
下一篇2022-12-15

发表评论

登录后才能评论

评论列表(0条)

    保存