下来查询官方文档后,才了解到yarn的日志监控功能默认是处于关闭状态的,需要我们进行开启,开启步骤如下:
Ps:下面配置的文件的位置在hadoop根目录 etc/haddop文件夹下,比较老版本的Hadoop是在hadoop根目录下的conf文件夹中
本文hadoop配置环境目录:
/usr/local/src/hadoop-2.6.5/etc/hadoop
yarn.log-aggregation-enable
true

mapreduce.framework.name
yarn
mapreduce.jobhistroy.address
master:10020
mapreduce.jobhistroy.webapp.address
master:19888

快捷一点可以使用 scp 命令将配置文件拷贝覆盖到其他机器
scp yarn-site.xml root@slave1:/usr/local/src/hadoop-2.6.5/etc/hadoop/
scp mapred-site.xml root@slave1:/usr/local/src/hadoop-2.6.5/etc/hadoop/
…其他datanode机器同理
配置spark-defaults.conf文件
/usr/local/src/spark-2.4.4-bin-hadoop2.6/conf
vim spark-defaults.conf
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Default system properties included when running spark-submit.
# This is useful for setting default environmental settings.
# Example:
# spark.master spark://master:7077
# spark.eventLog.enabled true
# spark.eventLog.dir hdfs:/tmp/
# spark.serializer org.apache.spark.serializer.KryoSerializer
# spark.driver.memory 5g
# spark.executor.extraJavaOptions -XX:+PrintGCDetails -Dkey=value -Dnumbers="one two three"
# 保存在本地
# spark.eventLog.dir=file://usr/local/hadoop-2.7.3/logs/
# spark.history.fs.logDirectory=file://usr/local/hadoop-2.7.3/logs/
#
spark.eventLog.enabled=true
spark.eventLog.compress=true
# 保存在hdfs上
spark.eventLog.dir=hdfs://master:9000/tmp/spark-yarn-logs
spark.history.fs.logDirectory=hdfs://master:9000/tmp/spark-yarn-logs
spark.yarn.historyServer.address=spark-master:18080
该目录与上述yarn-site.xml 中的目录需要一致
hdfs dfs -mkdir -p /tmp/spark-yarn-logs
[root@master hadoop-2.6.5]# ./sbin/start-all.sh
mr-jobhistory-daemon.sh start historyserver

在spark目录下
./sbin/start-all.sh
在spark目录下
sbin/start-history-server.sh

验证:
运行spark 在yarn模式PI
./bin/spark-submit --class org.apache.spark.examples.SparkPi --master yarn-cluster examples/jars/spark-examples_2.11-2.4.4.jar 10



mr-jobhistory-daemon.sh stop historyserver
./sbin/stop-history-server.sh