spark 與 yarn 結合

yunqiublog發表於2019-07-23

一.yarn 架構

二.yarn在spark官網的位置

1.Delpoying 的 yarn
2.官網位置截圖

二.spark -submit 提交到yarn

1.官網提交例項

2.自己測試提交改進官網例項


spark-submit \
  --class org.apache.spark.examples.SparkPi \
  --master yarn \
  /soft/spark/examples/jars/spark-examples_2.11-2.1.1.jar \
  3
spark-submit \
  --class org.apache.spark.examples.SparkPi \
  --master yarn-cluster  \
  /soft/spark/examples/jars/spark-examples_2.11-2.1.1.jar \
  3

3.總結:
  yarn = yarn client 單獨寫yarn 與 deploy-mode 後面寫 yarn client 一樣
4.提交可能遇到這個錯誤

5.原因:
  spark 要用yarn 你得告訴人配置在哪
  命令列 export HADOOP_CONF_DIR 等
  配置到命令列值當前有效,但是你要配置到spark-env 中可以永久有效

三.spark-submit 提交到yarn的日誌

1.提交日誌的顯示

2.流程解釋
  首先把spark的jars包裡面的包要全部傳上來
  配置檔案也要放上來
  要看這個引數配沒配置 spark.yarn.jars nor spark.yarn.archive

四.spark-submit 提交到yarn加快速度,不用每次都去提交spark的jars

1.配置引數


 Neither spark.yarn.jars nor spark.yarn.archive is set,
  falling back to uploading libraries under SPARK_HOME.

2.官網位置

3.你要配置在spark-defalut.conf中,配置如下
  首先你要把你的spark中的jars所用jar包傳到hdfs上
  之後你要spark.yarn.jars = hdfs路徑
  在提交的時候就不會有提交yarn前面每次都是上傳的日誌了
4.對於每次都會有很久的accetped 申請資源的日誌,這是正常現象,需要看資源是否滿足才給申請

五.spark-submit 提交到yarn的一些引數

1.檢視引數 spark-submit —help
2.引數截圖

3.主要用引數解釋
  —num-executors 預設是有兩個-executor
  —executor-cores 在yarn中預設每個executor一個core
  —executor-memory MEM Memory per executor (e.g. 1000M, 2G) (Default: 1G). 預設每個executor 記憶體是1G

五.yarn面試常問的問題

1.yarn有什麼狀態,先經過什麼,在經過什麼
  在yarn8088介面左側顯示

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69941978/viewspace-2651446/,如需轉載,請註明出處,否則將追究法律責任。

相關文章