Spark sql正在运行,但似乎没有任何集群管理器,它有可能吗?

时间:2016-05-09 14:14:19

标签: apache-spark

我有一个带有4个节点的hadoop集群(1master,3slaves)。我从存储在hdfs中的文件创建了一些配置单元表。然后我将mysql配置为hive Metastore并将hive-site.xml文件复制到spark的conf文件夹中。

要安装spark,我只需在主节点中下载并解压缩spark。在复制了spark conf文件夹中的hive-site.xml之后,我用spark-shell command启动了spark。它还需要安装在从属节点吗?

我问这个因为,我执行成功spark下面的SQL查询,但如果我尝试访问localhost:8080中的集群管理器默认页面,它会显示"无法连接"。所以似乎spark sql工作正常,但没有任何集群管理器工作,这是可能的??

var hiveContext = new org.apache.spark.sql.hive.HiveContext(sc)
query = hiveContext.sql("select * from customers");
query.show()

主:8080

enter image description here

2 个答案:

答案 0 :(得分:1)

  1. 您需要单独启动群集;默认情况下,spark-shell在本地运行。

  2. 您还需要在工作节点上安装spark二进制文件。

  3. 有关启动自己的spark群集的文档,请参阅此处:https://spark.apache.org/docs/latest/spark-standalone.html

答案 1 :(得分:1)

首先,您必须通过在spark-env.sh文件中设置env变量HADOOP_CONF_DIR来让spark知道Hadoop配置的位置

然后,当启动spark-shell时,你必须告诉spark使用纱线作为主人: spark-shell --master yarn-client

有关详细信息,您可以看到spark with yarn docs