我想知道为什么使用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
答案 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)。