spark如果整合Yarn报错或无法查看log需做如下操作

时间:2025-03-23 08:28:10

1.修改hadoop的

vim /export/servers/hadoop/etc/hadoop/

        <property>

                <name></name>

                <value>node01</value>

        </property>

        <property>

                <name>-services</name>

                <value>mapreduce_shuffle</value>

        </property>

<!-- 关闭YARN内存检查 -->

   <property>

                <name>-check-enabled</name>

                 <value>false</value>

        </property>

        <property>

                    <name>-check-enabled</name>

                    <value>false</value>

        </property>

   <!-- 如果开启如下配置则需要开启Spark历史服务器

   <property>

                <name>-aggregation-enable</name>

                <value>true</value>

        </property>

        <property>

                <name>-seconds</name>

                <value>604800</value>

        </property>

        <property>

                <name></name>

                <value>http://node01:19888/jobhistory/logs</value>

        </property>

   -->

2.分发并重启Hadoop服务

/export/servers/hadoop/sbin/

/export/servers/hadoop/sbin/

/export/servers/hadoop/sbin/

/export/servers/hadoop/sbin/

 

 

●如果要整合YARN历史服务器和Spark历史服务器,则还需要如下操作:

1.开启YARN历史服务器的配置并启动

   /export/servers/hadoop/sbin/ start historyserver

2.先配置Spark日志服务器[参考后面的章节]

3.修改

vim /export/servers/spark/conf/

node01:4000

4.启动Spark HistoryServer服务

   /export/servers/spark/sbin/

●如果依赖的Jar包较多可以上传到HDFS并告诉YARN去取

在中配置

= hdfs://node01:8020/sparkjars/*

配置之后各个节点会去HDFS上下载并缓存

如果不配置Spark程序启动会把Spark_HOME打包分发到各个节点

 

配置历史日志服务器

默认情况下, Spark 程序运行完毕关闭窗口后, 就无法再查看运行记录的 Web UI (4040)了, 通过 HistoryServer 可以提供一个服务, 通过读取日志文件, 使得我们可以在程序运行结束后, 依然能够查看运行过程

 

●修改文件名

cd /export/servers/spark/conf

cp

●修改配置

vim

true

hdfs://node01:8020/sparklog

 

●注意:hdfs上的目录需要手动先创建  

hadoop fs -mkdir -p /sparklog

 

●修改

vim

export SPARK_HISTORY_OPTS="-=4000 -=3 -=hdfs://node01:8020/sparklog"

 

 

●同步文件

scp  -r /export/servers/spark/conf/ @node02:/export/servers/spark/conf/

scp  -r /export/servers/spark/conf/ @node03:/export/servers/spark/conf/

 

●重启集群

/export/servers/spark/sbin/

/export/servers/spark/sbin/

 

●在master上启动日志服务器

/export/servers/spark/sbin/

 

●在4000端口查看历史日志(如果加载不出来换浏览器试试)

http://node01:4000/

 

●如果遇到Hadoop HDFS的写入权限问题:

解决方案:在中添加如下配置,关闭权限验证

<property>

        <name></name>

        <value>false</value>

</property>