私はSpark 2.0.2とMesos 0.28.2を実行しています。ZooKeeperが管理するMesosクラスタにスパーク送信する方法(java.net.UnknownHostException:zos for mesos:// zk:// master URL)?
私はマスターとしてのZooKeeper管理のMesosクラスターを使用して、スパークするためにアプリケーションを提出しようとしています:
$SPARK_HOME/bin/spark-submit --verbose \
--conf spark.mesos.executor.docker.image=$DOCKER_IMAGE \
--conf spark.mesos.executor.home=$SPARK_HOME \
--conf spark.executorEnv.MESOS_NATIVE_JAVA_LIBRARY=/usr/lib/libmesos.so \
--deploy-mode cluster \
--master mesos://zk://<ip 1>:2181,<ip 2>:2181,<ip 3>:2181/mesos \
--class $APP_MAIN_CLASS \
file://$APP_JAR_PATH
(<ip 1>
、<ip 2>
、および<ip 3>
は10.0.0.0/8のIPv4アドレスです
マスターのURL F:ブロック)
はdocumentationによると、私はマスターのための適切なフォーマットを持っているように見えますまたはMesosは、単一マスターMesosクラスターの場合はmesos:// host:5050、マルチマスターMesosクラスターの場合はmesos:// zk:// host1:2181、host2:2181、host3:2181/mesosの形式です。 ZooKeeperを使用します。私はそれが3つのZooKeeperのノードを使用してではなく、しようとしなければならないことを認識するスパークを取得するにはどうすればよい
17/04/07 20:10:06 INFO RestSubmissionClient: Submitting a request to launch an application in mesos://zk://<ip 1>:2181,<ip 2>:2181,<ip 3>:2181/mesos. Exception in thread "main" java.net.UnknownHostException: zk at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:184) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) at java.net.Socket.connect(Socket.java:589) at java.net.Socket.connect(Socket.java:538) at sun.net.NetworkClient.doConnect(NetworkClient.java:180) at sun.net.www.http.HttpClient.openServer(HttpClient.java:432) at sun.net.www.http.HttpClient.openServer(HttpClient.java:527) at sun.net.www.http.HttpClient.<init>(HttpClient.java:211) at sun.net.www.http.HttpClient.New(HttpClient.java:308) at sun.net.www.http.HttpClient.New(HttpClient.java:326) at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1202) at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1138) at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1032) at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:966) at sun.net.www.protocol.http.HttpURLConnection.getOutputStream0(HttpURLConnection.java:1316) at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1291) at org.apache.spark.deploy.rest.RestSubmissionClient.org$apache$spark$deploy$rest$RestSubmissionClient$$postJson(RestSubmissionClient.scala:214) at org.apache.spark.deploy.rest.RestSubmissionClient$$anonfun$createSubmission$3.apply(RestSubmissionClient.scala:89) at org.apache.spark.deploy.rest.RestSubmissionClient$$anonfun$createSubmission$3.apply(RestSubmissionClient.scala:85) at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:733) at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33) at scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:186) at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:732) at org.apache.spark.deploy.rest.RestSubmissionClient.createSubmission(RestSubmissionClient.scala:85) at org.apache.spark.deploy.rest.RestSubmissionClient$.run(RestSubmissionClient.scala:417) at org.apache.spark.deploy.rest.RestSubmissionClient$.main(RestSubmissionClient.scala:430) at org.apache.spark.deploy.rest.RestSubmissionClient.main(RestSubmissionClient.scala) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:736) at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:185) at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:210) at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:124) at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
を:
しかし、それはそのスパークがzk
に接続しようとし、その後mesos://zk://...
文字列を読んでいる表示されます存在しないzk
ホストに接続しますか?
あなたはそれを引用しようとすることができますか? '--master" mesos:// zk:// ... "'?端末がURIをホスト名として解釈しているのでしょうか? –
@ cricket_007これまで私は '--conf'引数とマスターホストを引用していましたが、端末も引用符を送っていましたので、' 'spark.mesos.executor.home'のようなものについてはエラーが出ます有効なオプションと '' mesos:// 'は有効なプロトコルではありません。 –