sparklingWater - несовместимый локальный класс / размер облака под ### - PullRequest
0 голосов
/ 12 сентября 2018

Настройка

У меня проблемы с настройкой газированной воды на автономном искровом кластере.
У меня два узла и один основной кластер Spark, развернутый на вершине кластера kubernetes.
Мне удалось подключить Python / R к моему удаленному кластеру Spark и выполнить несколько операций Spark.Так что я уверен, что мой искровой кластер работает нормально.

Alive Workers: 2
Cores in use: 8 Total, 8 Used
Memory in use: 29.3 GB Total, 28.0 GB Used

Я использую следующую конфигурацию Spark / H20 с Sparkpling Water 2.1.35

Spark master (MASTER)     : spark://spark-master:7077
Spark home   (SPARK_HOME) : C:\spark-2.1.3-bin-hadoop2.6
H2O build version         : 3.20.0.4 (wright)
Spark build version       : 2.1.3
Scala version             : 2.11

Согласно эта таблица , все версии должны быть совместимы,

Задача

Я следовал этому учебнику , чтобы настроить pysparkling.Тем не менее, ни один из этих двух способов не позволил мне использовать газированную воду.

Использование bin/pysparkling

Если я использую оболочку bin/pysparkling, я сталкиваюсь с ошибкой java.lang.RuntimeException: Cloud size under xxx.

Я следил за этим потоком и пытался настроить команду pysparkling несколькими способами.Я также отключил динамическое размещение в spark.

bin/pysparkling --master spark://spark-master:70177 
--conf "spark.dynamicAllocation.enabled=false" 
--num-executors 1 --executor-cores 1 --executor-memory 8G 
--driver-memory 4G --conf "spark.sql.autoBroadcastJoinThreshold=-1" 
--conf "spark.scheduler.minRegisteredResourcesRatio=1" 
--conf "spark.ext.h2o.client.log.dir=C:/Users/<username>/logs" 
--conf "spark.ext.h2o.fail.on.unsupported.spark.param=false" 
--conf "spark.ext.h2o.topology.change.listener.enabled=false"

Даже с помощью приведенной выше команды я получаю java.lang.RuntimeException: Cloud size under xxx.

Используя PySparkling, установленный из репозитория PyPi (2.1)

Если я запускаю Python из оболочки и напрямую создаю сеанс Spark, используя этот фрагмент кода,

from pyspark.sql import SparkSession
spark = SparkSession.builder.appName("SparklingWaterApp").getOrCreate()
from pysparkling import *
hc = H2OContext.getOrCreate(spark)

Когда python пытается выполнить hc = H2OContext.getOrCreate(spark), я получаю сообщение об ошибке java.io.InvalidClassException: org.apache.spark.h2o.backends.internal.InternalBackendUtils$; local class incompatible: stream classdesc serialVersionUID = -9254888608862.

Подробное сообщение об ошибке: здесь .

Я попытался выполнить обе процедуры на своем локальном компьютере и непосредственно с работника в кластере kubernetes, чтобы проверить наличие потенциальныхпроблемы с подключением.Но результат тот же.

Кто-нибудь знает, как я могу решить мою проблему?

Заранее спасибо, Джуго.

...