Apache spark 仅允许在spark纱线群集环境中运行一个spark submit
我设置了一个spark纱线集群环境,spark(2.2.0)在Windows7中;纱线簇是hadoop 2.7.3 我运行“spark shell”来使用SparkSQL:Apache spark 仅允许在spark纱线群集环境中运行一个spark submit,apache-spark,resources,cluster-computing,yarn,distributed-computing,Apache Spark,Resources,Cluster Computing,Yarn,Distributed Computing,我设置了一个spark纱线集群环境,spark(2.2.0)在Windows7中;纱线簇是hadoop 2.7.3 我运行“spark shell”来使用SparkSQL: spark-shell --master yarn --deploy-mode client --conf spark.yarn.archive=hdfs://hadoop_273_namenode_ip:namenode_port/spark-archive.zip 现在一切正常,但当我启动另一个“spark shell
spark-shell --master yarn --deploy-mode client --conf spark.yarn.archive=hdfs://hadoop_273_namenode_ip:namenode_port/spark-archive.zip
现在一切正常,但当我启动另一个“spark shell”时,下面的消息似乎永远不会停止输出到控制台:
17/10/17 17:33:53 INFO Client: Application report for application_1508232101640_0003 (state: ACCEPTED)
ResourceManager web UI中的应用程序状态显示
[application status] ACCEPTED: waiting for AM container to be allocated, launched and register with RM
如果我关闭第一个“火花壳”,第二个就可以正常工作了
它似乎不允许同时使用多个spark shell(spark submit)(在我的环境中)
如何突破限制
正在等待分配AM容器
这是一个资源限制,所以你可以让你的第一个jb消耗更少的资源
发生的情况是,第一个作业消耗了所有可用资源,当第二个作业出现时,没有任何可用资源,因此第二个作业必须等待资源可用
这就是为什么当您关闭第一个shell时,另一个将启动。可能是第一个作业占用了所有可用资源。因此,第二个作业需要等待一些空闲后才能运行。Thanks@gsamaras,与我使用的前一个机器(8个vCPU,28 GB内存)相比,我尝试了更强大的机器(16个vCPU,112 GB内存),但没有效果。并尝试更改纱线的一些设置,但仍然不起作用。需要提及的一点是,我的纱线环境是以伪分布式模式部署的,您认为这是否是我的问题的原因?