Apache Spark独立集群执行器5分钟后被Master杀死问题排查
Apache Spark独立集群在Azure Container Apps中Executor被频繁杀死的问题解决
问题场景
- 集群部署:1个Master节点+1个Worker节点组成的Apache Spark独立集群,部署在Azure Container Apps同一命名空间内
- 应用逻辑:从Kafka读取数据,经简单转换后写入Delta Table
- 异常表现:启动应用后,Spark Dashboard可正常识别Driver(1核2GB内存)和Executor(1核2GB内存),但5分钟后Executor会被杀死,仅Driver存活,该现象多次测试均复现
排查过程
- 调整Spark配置:尝试设置
spark.network.timeout=600s延长网络超时时间,同时禁用动态分配spark.dynamicAllocation.enabled=false,问题未解决 - 切换运行模式:改为client模式运行应用后,应用可稳定运行,无Executor被杀死的情况
- 日志分析:集群日志显示,Executor是在与Driver关联断开后被移除的
最终解决方案
将Worker节点连接Master、以及部署应用时使用的地址,从Master容器的主机名替换为Master容器的私有IP,问题彻底解决。
内容的提问来源于stack exchange,提问作者Dennis Jakobsen
相关产品推荐
相关产品推荐

