Работнику не удалось подключиться к мастеру в Spark Apache

Я развертываю приложение Spark Apache с помощью автономного диспетчера кластеров. В моей архитектуре используется 2 машины Windows, одна из которых установлена ​​​​в качестве ведущей, а другая - в качестве ведомой (рабочей).

master: на котором я запускаю: \bin>spark-class org.apache.spark.deploy.master.Master и вот что показывает веб-интерфейс:

slave: на котором я запускаю: \bin>spark-class org.apache.spark.deploy.worker.Worker spark://192.*.*.186:7077 и вот что показывает веб-интерфейс:

проблема в том, что рабочий узел не может подключиться к главному узлу и показывает следующую ошибку:

17/09/26 16:05:17 INFO Worker: Connecting to master 192.*.*.186:7077...
17/09/26 16:05:22 WARN Worker: Failed to connect to master 192.*.*.186:7077
org.apache.spark.SparkException: Exception thrown in awaitResult:
    at org.apache.spark.util.ThreadUtils$.awaitResult(ThreadUtils.scala:205)
    at org.apache.spark.rpc.RpcTimeout.awaitResult(RpcTimeout.scala:75)
    at org.apache.spark.rpc.RpcEnv.setupEndpointRefByURI(RpcEnv.scala:100)
    at org.apache.spark.rpc.RpcEnv.setupEndpointRef(RpcEnv.scala:108)
    at org.apache.spark.deploy.worker.Worker$$anonfun$org$apache$spark$deploy$worker$Worker$$tryRegisterAllMasters$1$$anon$1.run(Worker.scala:241)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
  Caused by: java.io.IOException: Failed to connect to /192.*.*.186:7077
    at org.apache.spark.network.client.TransportClientFactory.createClient(TransportClientFactory.java:232)
    at org.apache.spark.network.client.TransportClientFactory.createClient(TransportClientFactory.java:182)
    at org.apache.spark.rpc.netty.NettyRpcEnv.createClient(NettyRpcEnv.scala:197)
    at org.apache.spark.rpc.netty.Outbox$$anon$1.call(Outbox.scala:194)
    at org.apache.spark.rpc.netty.Outbox$$anon$1.call(Outbox.scala:190)
    ... 4 more
 Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection timed out: no further information: /192.*.*.186:7077
    at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
    at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717)
    at io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:257)
    at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:291)
    at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:631)
    at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:566)
    at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:480)
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:442)
    at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131)
    at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:144)
    ... 1 more

в чем может быть причина этой ошибки зная что брандмауэр отключен на обеих машинах и я проверил соединение между ними обеими (используя nmap) и все ок! но используя telnet я получаю эту ошибку: Connecting To 192.*.*.186...Could not open connection to the host, on port 23: Connect failed


person Mehdi Ben Hamida    schedule 26.09.2017    source источник
comment
Вы пытались подключиться вручную, используя telnet?   -  person Rahul Sharma    schedule 26.09.2017
comment
Как так? и в чем его полезность?   -  person Mehdi Ben Hamida    schedule 26.09.2017
comment
Вы должны активировать telnet (см. social.technet.microsoft.com/wiki/contents/articles/), а затем запустите telnet 192.*.*.186 7077.   -  person Sergey Kovalev    schedule 26.09.2017
comment
на главном или на рабочем узле?   -  person Mehdi Ben Hamida    schedule 26.09.2017
comment
это то, что я получаю при запуске telnet Connecting To 192.*.*.186...Could not open connection to the host, on port 23: Connect failed   -  person Mehdi Ben Hamida    schedule 26.09.2017
comment
Ваш хозяин в порядке? рабочий узел telnet maserhost port   -  person Rahul Sharma    schedule 26.09.2017
comment
да, проверка запущена, и это результат запуска telnet >telnet 192.*.*.186 7077 Connecting To 192.*.*.186...Could not open connection to the host, on port 7077: Connect failed   -  person Mehdi Ben Hamida    schedule 26.09.2017


Ответы (1)


Можешь показать мне свою spark-env.sh конфу? Это поможет определить вашу проблему.

Моя первая идея заключается в том, что вам нужно экспортировать SPARK_MASTER_HOST=(master ip) вместо SPARK_MASTER_IP в файл spark-env.sh. Вы должны сделать это как для мастера, так и для ведомого. Также экспортируйте SPARK_LOCAL_IP как для главного, так и для подчиненного устройства.

person Arslan Shakeel    schedule 02.10.2017
comment
Привет. Прошу вас помочь мне решить эту проблему: stackoverflow.com/questions/58767418/ - person tushaR; 18.11.2019