Linux环境下 java程序提交spark任务到Yarn报错

简介: Linux环境下 java程序提交spark任务到Yarn报错

1.jpg

摘要

  1. 情况1:JSON解析异常
  2. 情况2:java.lang.InstantiationException spark.sql.driver
  3. 情况3 中kafka:java.lang.NoClassDefFoundError: org/apache/kafka/clients/producer/Callback
  4. 情况4 idea启动报错:Connection to node -1 could not be established. Broker may not be available
  5. 情况5中kafka: Caused by: java.nio.channels.UnresolvedAddressException master:8080

情况1:JSON解析异常

image.png

==出错原因==:spark命令提交参数json,到另一个jar发现{ {或者}}消失了,导致解析异常
==解决方案==:https://blog.csdn.net/u010814849/article/details/78752074 双括号间+空格

情况2:java.lang.InstantiationException spark.sql.driver

==出错原因==:spark操作mysql数据库缺少驱动

==解决方案==:
Properties对象设置props.put("driver", "com.mysql.jdbc.Driver");

情况3: 中kafka:java.lang.NoClassDefFoundError: org/apache/kafka/clients/producer/Callback

==出错原因==:运行期缺少jar包,问题出在maven程序打包没把依赖打进去

==解决方案==:添加打包插件指定打入依赖jar

<plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <configuration>
        <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
    </configuration>
    <executions>
        <execution>
            <id>make-assembly</id>
            <phase>package</phase>
            <goals>
                <goal>single</goal>
            </goals>
        </execution>
    </executions>
</plugin>

情况4:idea启动报错:Connection to node -1 could not be established. Broker may not be available

==出错原因==:指定bootstrap-servers前面多了空格,导致层级目录出错

==解决方案==:
image.png

情况5:中kafka: Caused by: java.nio.channels.UnresolvedAddressException master:8080

==出错原因==:ip映射没修改对,导致不认识master

==解决方案==:如果是ambari安装的kafka修改cinfig下面的,如果是自己linux搭建的,需改动kafka下的cinfig下的server.properties,把PLAINTEXT://localhost:6667 -》 改为PLAINTEXT://192.168.20.91:6667

image.png

目录
相关文章
|
30天前
|
存储 缓存 分布式计算
Spark任务OOM问题如何解决?
大家好,我是V哥。在实际业务中,Spark任务常因数据量过大、资源分配不合理或代码瓶颈导致OOM(Out of Memory)。本文详细分析了各种业务场景下的OOM原因,并提供了优化方案,包括调整Executor内存和CPU资源、优化内存管理策略、数据切分及减少宽依赖等。通过综合运用这些方法,可有效解决Spark任务中的OOM问题。关注威哥爱编程,让编码更顺畅!
167 3
|
12天前
|
Web App开发 搜索推荐 Unix
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
【10月更文挑战第21天】Linux系统之MobaXterm远程连接centos的GNOME桌面环境
112 4
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
|
30天前
|
分布式计算 大数据 Java
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
17 1
大数据-86 Spark 集群 WordCount 用 Scala & Java 调用Spark 编译并打包上传运行 梦开始的地方
|
9天前
|
Linux UED iOS开发
|
14天前
|
Ubuntu 应用服务中间件 Linux
Linux下搭建Nginx环境的搭建
Linux下搭建Nginx环境的搭建
|
18天前
|
监控 Linux 云计算
Linux操作系统在云计算环境中的实践与优化###
【10月更文挑战第16天】 本文探讨了Linux操作系统在云计算环境中的应用实践,重点分析了其在稳定性、安全性和高效性方面的优势。通过具体案例,阐述了Linux如何支持虚拟化技术、实现资源高效分配以及与其他开源技术的无缝集成。文章还提供了针对Linux系统在云计算中的优化建议,包括内核参数调整、文件系统选择和性能监控工具的应用,旨在帮助读者更好地理解和应用Linux于云计算场景。 ###
21 3
|
26天前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
209 3
|
24天前
|
运维 Java Linux
【运维基础知识】Linux服务器下手写启停Java程序脚本start.sh stop.sh及详细说明
### 启动Java程序脚本 `start.sh` 此脚本用于启动一个Java程序,设置JVM字符集为GBK,最大堆内存为3000M,并将程序的日志输出到`output.log`文件中,同时在后台运行。 ### 停止Java程序脚本 `stop.sh` 此脚本用于停止指定名称的服务(如`QuoteServer`),通过查找并终止该服务的Java进程,输出操作结果以确认是否成功。
32 1
|
26天前
|
Java 大数据 开发工具
java学习——环境准备(1)
java学习——环境准备(1)
41 0
|
Java Linux Shell
linux下安装配置sonarqube含报错
linux下安装配置sonarqube含报错