3

我設置了spark-yarn集羣環境,spark(2.2.0)在Windows 7中;紗線簇是hadoop 2.7.3。只有一個spark-submit允許在spark-yarn集羣環境中運行

我跑「火花殼」使用SparkSQL:

spark-shell --master yarn --deploy-mode client --conf spark.yarn.archive=hdfs://hadoop_273_namenode_ip:namenode_port/spark-archive.zip 

一切都OK現在,但是當我開始另一種「火花殼」,該消息下方,似乎永遠不會結束,輸出到控制檯:

17/10/17 17:33:53 INFO Client: Application report for application_1640_0003 (state: ACCEPTED) 

在ResourceManager中的Web UI應用程序狀態顯示

[application status] ACCEPTED: waiting for AM container to be allocated, launched and register with RM 

如果我關閉的F首先是「火花外殼」,第二個能夠很好地工作。

看起來,它不允許在同一時間(在我的環境中)多個spark-shell(spark-submit)。

如何突破限制?

+1

可能是第一份工作佔用了所有可用資源。因此,第二份工作需要等待一些人在跑步之前獲得自由。 – Shaido

回答

1

等待AM容器被分配

這是一個種源的限制,所以你可以做你的第一JB消耗更少的資源。

會發生什麼情況是,第一份工作會消耗所有可用資源,到第二份工作出現時,什麼都不是free'd,因此第二份工作必須等待資源可用。

這就是爲什麼當你關閉第一個shell時,另一個會啓動。

+0

Thannks @gsamaras,我使用功能更強大的機器(16個vcpus,112 GB內存),與之前使用的(8個vcpus,28 GB內存)相比,但沒有效果。並嘗試更改紗線的某些設置,但仍無法使用。有一點要提到的是我的紗線環境是以僞分佈模式部署的,你認爲它是否是我的問題的原因? –