Я вручную запустил кластер H2O с 3 узлами, используя опцию flatfile.
Затем я пытаюсь подключиться к этому кластеру, используя:
from pysparkling import *
conf = H2OConf(spark)
.set_external_cluster_mode()
.use_manual_cluster_start()
.set_h2o_cluster("my ip", 54321)
.set_cloud_name("ClusterName")
hc = H2OContext.getOrCreate(spark, conf)
В журнале H2O моих 3 узлов я вижу:
12-19 13:29:09.717 X.X.X.X:54321 5597 FJ-126-7 INFO: Client reported via broadcast message /X.X.X.X:54321 from ip-X-X-X-X.ec2.internal/X.X.X.X:54321
12-19 13:29:09.717 X.X.X.X:54321 5597 FJ-126-7 INFO: New client discovered: /X.X.X.X:54321(watchdog=false, cloud_name_hash=125572707)
12-19 13:29:12.854 X.X.X.X:54321 5597 #ckThread WARN: Client /X.X.X.X:54321 disconnected!
Что приводит кpyspark (очевидно) в другой ошибке:
Py4JJavaError: An error occurred while calling z:org.apache.spark.h2o.JavaH2OContext.getOrCreate.
: org.apache.spark.h2o.backends.external.H2OClusterNotRunning:
External H2O cluster is not running or could not be connected to. Provided configuration:
cluster name : CloudName
cluster representative : x.x.x.x:54321
cluster start timeout : 120 seconds"
It is possible that in case you provided only the cluster name, h2o is not able to cloud up
because multi-cast communication is limited in your network. In that case, please consider starting the
external H2O cluster with flatfile and set the following configuration 'spark.ext.h2o.cloud.representative'
Я понятия не имею, откуда происходит отключение ... Кто-нибудь испытывал подобные проблемы?
Большое спасибо!