Spark On Yarn 中出現的問題記錄
1:運行候一直retry master:8032的問題
分析:可能是因為yarn沒有啟動。
解決:檢查是否啟動了服務. 用jps命令查看相關信息[是否存在ResourceManager]
2: mory used; 2.2 GB of 2.1 GB virtual memory used. Killing container.
分析:可能是內存不夠的問題,因為自己是使用的虛擬機內存只分配了1G,後來百度了下並不是物理內存的問題,yarn執行會檢查虛擬內存,如果虛擬內存不夠就會報此錯誤。
解決:在{hadoopdir}/etc/Hadoop/yarn-site.xml文件中,修改檢查虛擬內存的屬性為false,如下:
<property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>
3:Neither spark.yarn.jars nor spark.yarn.archive is set, falling back to uploading libraries under SPARK_HOME. 不影響運行,但每次執行yarn都會把spark目錄下的jars的包傳到hdfs上,嚴重影響運行效率.
分析:需要設置相關的spark.yarn.jars nor spark.yarn.archive 參數
解決:
切換到spark目錄上傳spark的jars(spark1.6 只需要上傳spark-assembly-1.6.0-SNAPSHOT-hadoop2.6.0.jar)
hdfs dfs -mkdir /tmp/spark_jars
hdfs dfs -put jars/* /tmp/spark_jars/
在spark的conf的spark-default.conf添加配置
spark.yarn.jars=hdfs://master:9000/tmp/spark_jars/*
重啟spark服務,搞定.


※MapReduce中源碼分析(map端的過程)
※AutoItLibrary安裝和常見問題解決
TAG:程序員小新人學習 |