Ich habe ein elasticsearch Docker Bild auf 127.0.0.1:9200 hören, ich habe es mit Sinn und Kibana getestet, funktioniert es gut, ich bin in der Lage, Dokumente zu indizieren und abzufragen. Jetzt, wenn ich versuche, um es von einem Funken App auf retryingSpark App kann nicht auf Elasticsearch Cluster in Docker
val sparkConf = new SparkConf().setAppName("ES").setMaster("local")
sparkConf.set("es.index.auto.create", "true")
sparkConf.set("es.nodes", "127.0.0.1")
sparkConf.set("es.port", "9200")
sparkConf.set("es.resource", "spark/docs")
val sc = new SparkContext(sparkConf)
val sqlContext = new SQLContext(sc)
val numbers = Map("one" -> 1, "two" -> 2, "three" -> 3)
val airports = Map("arrival" -> "Otopeni", "SFO" -> "San Fran")
val rdd = sc.parallelize(Seq(numbers, airports))
rdd.saveToEs("spark/docs")
Es kann keine Verbindung herstellen, und hält
16/07/11 17:20:07 INFO HttpMethodDirector: I/O exception (java.net.ConnectException) caught when processing request: Operation timed out 16/07/11 17:20:07 INFO HttpMethodDirector: Retrying request
Ich habe versucht zu schreiben IPAddress von Docker für das Elasticsearch Bild inspizieren gegeben verwenden, das funktioniert auch nicht. Wenn ich jedoch eine native Installation von elasticsearch verwende, läuft die Spark-App einwandfrei. Irgendwelche Ideen?