如何从SparkContext将Apache Spark与Yarn连接起来?

2 hadoop hadoop-yarn apache-spark

我已经使用Eclipse在Java中开发了一个Spark应用程序。
到目前为止,我通过将主机的地址配置为“ local [*]”来使用独立模式。
现在,我想将此应用程序部署在Yarn群集上。
我找到的唯一官方文档是http://spark.apache.org/docs/latest/running-on-yarn.html

与用于在mesos群集上或独立部署的文档不同(http://spark.apache.org/docs/latest/running-on-mesos.html),在SparkContext中没有任何URL可以用作主服务器的地址。
显然,我必须使用命令行命令在Yarn上部署spark。

您是否知道是否可以像独立模式和Mesos模式一样在SparkContext中配置主控地址?

cri*_*007 5

实际上有一个URL。

确保HADOOP_CONF_DIRYARN_CONF_DIR指向包含Hadoop集群的(客户端)配置文件的目录。这些配置用于写入HDFS并连接到YARN ResourceManager

你应该有至少hdfs-site.xmlyarn-site.xmlcore-site.xml文件集群您连接到所有指定为Hadoop的设置和URL。

yarn-site.xml包括yarn.nodemanager.hostname和的一些属性yarn.nodemanager.address

由于该地址的默认值为 ${yarn.nodemanager.hostname}:0,因此您可能只需要设置主机名。

  • 我不知道您是如何安装hadoop的,但是如果其他人安装了hadoop,则应该与他们联系。是的,您需要在运行Spark的客户端计算机上使用XML文件。它们不必直接在Java应用程序中。如果您要搜索这些文件的示例,可以在网上找到它们,或者再次询问负责Hadoop集群的人员。 (2认同)
  • 这两个“设置”是环境变量,Spark驱动程序会选择这些环境变量。XML文件在这些文件夹中。除了`--master yarn`,不需要额外的配置。 (2认同)