首页 文章

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

提问于
浏览
0

我有一个有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 回答

  • 1

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

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

    有关更多信息,您可以看到spark with yarn docs

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

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

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

相关问题