为什么start-slave.sh需要主URL?

时间:2017-05-22 09:15:13

标签: apache-spark apache-spark-standalone

我想知道为什么使用apache-spark/sbin/start-slave.sh <master's URL>的客户必须指明此master's URL,因为主服务器已经在apache-spark/sbin/start-master.sh --master spark://my-master:7077e.g.中指明了它?

是否因为客户端必须等待主服务器接收主服务器发送的submit?如果是:那么为什么主人必须在--master spark://....

中指定submit

1 个答案:

答案 0 :(得分:0)

start-slave.sh <master's URL>启动一个独立的Worker(以前称为slave),<master's URL>上的独立Master用于为Spark应用程序提供资源。

Standalone Master管理工作人员及其工作人员向主人注册,并为资源提供提供CPU和内存。

来自Starting a Cluster Manually

  

您可以通过执行以下命令启动独立主服务器:

     

./sbin/start-master.sh

     

一旦启动,主人将打印出一个spark:// HOST:PORT URL,用于将工作者连接到它,或者作为“master”参数传递给SparkContext。您还可以在主Web的UI上找到此URL,默认情况下为http://localhost:8080

     

同样,您可以启动一个或多个工作人员并通过以下方式将他们连接到主人:

     

./sbin/start-slave.sh <master-spark-URL>

  

因为主人已经指出它:apache-spark / sbin / start-master.sh --master spark:// my-master:7077

您可以指定默认为spark://my-master:7077的独立主服务器的网址,但网络上未公布,因此任何人都可以知道该网址(除非在命令行中指定)。

  

为什么主人必须在其提交

中指定--master spark:// ....

没有。 Standalone Master和submit是不同的&#34;工具&#34;,前者是Spark应用程序的集群管理器,而后者是将Spark应用程序提交给集群管理器执行(可以在三个支持的集群中的任何一个上)经理:Spark Standalone,Apache Mesos和Hadoop YARN)。

请参阅Submitting Applications