在启动spark-shell --master yarn 中我们会发现spark-shell启动时报错
YarnClientSchedulerBackend: Yarn application has already exited with state FAILED
这时我们访问yarn进程看历史记录看看启动时报错异常:ERRORorg.apache.hadoop.hdfs.server.namenode.NameNode: RECEIVED SIGNAL 15: SIGTERM(如图),一般访问的端口号是http://主机名加上8088(默认)

解决办法
当jdk版本是1.8时常常会出现这个问题,直接修改hadoop中yarn-site.xml的配置并分发到各各集群,重新启动集群即可。
<property>
<name>yarn.nodemanager.vmem-pmem-ratio</name>
<value>10</value>
</property>
<property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>