【问题标题】:sparklyr + rsparkling: Error while connecting to a clustersparklyr + rsparkling:连接到集群时出错
【发布时间】:2017-07-02 19:46:56
【问题描述】:

一段时间以来,我使用sparklyr 包连接到公司的Hadoop 集群,使用代码:

library(sparklyr)

Sys.setenv(SPARK_HOME="/opt/spark/")
Sys.setenv(HADOOP_CONF_DIR="/etc/hadoop/conf.cloudera.yarn")
Sys.setenv(JAVA_HOME="/usr/lib/jvm/jre")

system('kinit -k -t user.keytab user@xyz')

sc <- spark_connect(master="yarn",
                config = list(
                  default = list(
                    spark.submit.deployMode= "client",
                    spark.yarn.keytab= "user.keytab",
                    spark.yarn.principal= "user@xyz",
                    spark.executor.instances= 20, 
                    spark.executor.memory= "4G",
                    spark.executor.cores= 4,
                    spark.driver.memory= "8G")))

一切正常,但是当我尝试使用类似代码添加 rsparkling 包时:

library(h2o)
library(rsparkling)
library(sparklyr)

options(rsparkling.sparklingwater.version = '2.0')

Sys.setenv(SPARK_HOME="/opt/spark/")
Sys.setenv(HADOOP_CONF_DIR="/etc/hadoop/conf.cloudera.yarn")
Sys.setenv(JAVA_HOME="/usr/lib/jvm/jre")

system('kinit -k -t user.keytab user@xyz')

sc <- spark_connect(master="yarn",
                config = list(
                  default = list(
                    spark.submit.deployMode= "client",
                    spark.yarn.keytab= "user.keytab",
                    spark.yarn.principal= "user@xyz",
                    spark.executor.instances= 20, 
                    spark.executor.memory= "4G",
                    spark.executor.cores= 4,
                    spark.driver.memory= "8G")))

我收到错误:

强制错误(代码):
为 sessionid (9819) 连接到 sparklyr 到端口 (8880) 时失败:Sparklyr 网关没有响应 在 60 秒后检索端口信息路径: /opt/spark-2.0.0-bin-hadoop2.6/bin/spark-submit 参数:--class, sparklyr.Backend, --packages, 'ai.h2o:sparkling-water-core_2.11:2.0','ai.h2o:sparkling-water-ml_2.11:2.0','ai.h2o:sparkling-water-repl_2.11:2.0', '/usr/lib64/R/library/sparklyr/java/sparklyr-2.0-2.11.jar', 8880, 9819

---- 输出日志----
常春藤默认缓存设置为:/opt/users/user/.ivy2/cache 存储在以下位置的包的 jars: /opt/users/user/.ivy2/jars :: 加载设置 :: url = jar:file:/opt/spark-2.0.0-bin-hadoop2.6/jars/ivy-2.4.0.jar!/org/apache/ivy/core/settings/ivysettings.xml ai.h2o#sparkling-water-core_2.11 作为依赖项添加 ai.h2o#sparkling-water-ml_2.11 作为依赖项添加 ai.h2o#sparkling-water-repl_2.11 添加为依赖项 :: 解析 依赖项 :: org.apache.spark#spark-submit-parent;1.0 配置文件:[默认]

---- 错误日志----
另外:警告消息:1:在 if (nchar(config[[e]]) == 0) found

我是 spark 和 clusters 的新手,现在不知道该怎么做。任何帮助将不胜感激。我的第一个想法是在cluster 一侧缺少sparkling water 的jar 文件,对吗?

【问题讨论】:

    标签: r hadoop apache-spark sparklyr sparkling-water


    【解决方案1】:

    您需要使用确切的苏打水版本号:

    options(rsparkling.sparklingwater.version = '2.0.5')

    或者你可以直接从http://h2o.ai/download下载Sparkling Version的二进制版本,解压并替换上面的语句:

    options(rsparkling.sparklingwater.location = "/tmp/sparkling-water-assembly_2.11-2.0.99999-SNAPSHOT-all.jar")

    【讨论】:

      猜你喜欢
      • 2017-10-19
      • 2020-10-04
      • 2017-05-26
      • 2018-06-09
      • 2018-11-29
      • 2017-02-07
      • 2019-11-28
      • 2018-12-10
      • 2017-06-23
      相关资源
      最近更新 更多