spark grpc 在master运行报错 exitcode13 User did not initialize spark context

程序使用sparksql 以及protobuf grpc ,执行报错

ApplicationMaster: Final app status: FAILED, exitCode: 13, (reason: Uncaught exception: java.lang.IllegalStateException: User did not initialize spark context!

先说原因 :

  • 1.使用了不具备权限的用户,spark运行环境有缺失
  • 2.protobuf 需要使用指定操作系统进行编译 未使用 os.detected.classifier=windows-x86_64 或 linux-x86_64,或者把windows上编译的jar直接拿过来使用导致
  • 3.protobuf的版本不太合适 这个比较坑,得多注意
  • 4.代码中指定了运行模式是local( 这个因为没写local,没遇到 )

解决

  • 1.使用root用户,或者将当前用户加入到sudo 权限范围,之后sudo执行
  • 2.本机 编译的放到linux执行会报错,因此需要在master节点编译 指定os.detected.classifier=linux-x86_64 例如 maven执行的命令
  • mvn clean package -P prod -Dos.detected.classifier=linux-x86_64 -Dmaven.test.skip=true

    1. pom中版本调整
  • protobuf-maven-plugin 0.6.1 降到 0.5.0 同时 io.grpc:protoc-gen-grpc-java:1.54.0 com.google.protobuf:protoc:21.0-rc-1

    升版本 0.5.0升到 0.6.1 同时 io.grpc:protoc-gen-grpc-java:3.21.9 com.google.protobuf:protoc:3.21.9

  • 4.去掉 sparksession指定local的运行设定代码
  • etc: 中间也出现过 编译问题 "protoc CreateProcess error=216, 该版本的 %1 与您运行的 Windows 版本不兼容",这个的处理就不说了。
相关推荐
weixin_397578021 小时前
智能工厂规划设计——总体视图、业务框架、应用架构、系统架构、技术架构
大数据
王牌狮AIen1 小时前
合规生命线——警惕“AI投毒”与算法陷阱,如何为品牌装上“事前免疫”系统?
大数据·人工智能·数据挖掘·geo·ai营销
大树881 小时前
PUE 超 1.35 要多交多少?存量机房液冷改造 3 张算账表
大数据·运维·服务器·人工智能
阿狸猿2 小时前
论大数据 Lambda 架构及其应用
大数据·架构
喵叔哟3 小时前
14【.NET10 实战--孢子记账--产品智能化】--智能生成预算
大数据·人工智能·.net
WyCAGy8ij3 小时前
Redis 分布式锁进阶第四篇讲解
数据库·redis·分布式
Deepoch3 小时前
Deepoc VLA开发板:实现采摘机器人动态生物适应与精准作业
大数据·人工智能·机器人·采摘机器人·deepoc
申通之声3 小时前
3年稳定率90%+:申通五星管理经
大数据·人工智能·交通物流
C137的本贾尼4 小时前
幻读与 Next-Key Lock:可重复读隔离级别如何解决幻读
大数据·数据库
郑洁文4 小时前
达州市人口相关数据分析与应用
大数据·数据挖掘·数据分析·毕设·达州市人口