Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

207
Visualizações
El trabajador de Spark sigue eliminando y agregando ejecutores

Traté de construir un clúster Spark usando una máquina virtual local de Ubuntu como maestra y una máquina virtual remota de Ubuntu como trabajador. Como la máquina virtual local se ejecuta en una caja virtual, para que un invitado remoto pueda acceder a ella, reenvié el puerto 7077 de la máquina virtual al puerto 7077 del host. Comienzo maestro por:

 ./sbin/start-master.sh -h 0.0.0.0 -p 7077

Lo hice escuchando en 0.0.0.0 , porque si uso el 127.0.1.1 predeterminado, el invitado remoto no podrá conectarse. Comienzo el trabajador ejecutando el siguiente comando en la máquina remota:

 ./bin/spark-class org.apache.spark.deploy.worker.Worker spark://129.22.151.82:7077

El trabajador puede conectarse al maestro, que se puede ver en la interfaz de usuario: Captura de pantalla

Luego traté de ejecutar el código python de ejemplo "pi":

 from pyspark import SparkContext, SparkConf conf=SparkConf().setAppName("Pi").setMaster("spark://0.0.0.0:7077) sc=SparkContext(conf=conf)

... Una vez que lo ejecuto, el programa nunca se detiene, noté que el programa siempre está eliminando y agregando ejecutores, porque los ejecutores siempre salen con el código de error 1. Y este es el stderr del ejecutor:

 Using Spark's default log4j profile: org/apache/spark/log4j- defaults.properties 16/02/25 13:22:22 INFO CoarseGrainedExecutorBackend: Registered signal handlers for [TERM, HUP, INT] 16/02/25 13:22:22 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 16/02/25 13:22:23 INFO SecurityManager: Changing view acls to: kxz138,adminuser 16/02/25 13:22:23 INFO SecurityManager: Changing modify acls to: kxz138,adminuser 16/02/25 13:22:23 INFO SecurityManager: SecurityManager: authentication disabled; ui acls disabled; users with view permissions: Set(kxz138, adminuser); users with modify permissions: Set(kxz138, adminuser) **16/02/25 13:22:23 ERROR UserGroupInformation: PriviledgedActionException as:adminuser (auth:SIMPLE) cause:java.io.IOException: Failed to connect to /10.0.2.15:34935 Exception in thread "main" java.io.IOException: Failed to connect to /10.0.2.15:34935** at org.apache.spark.network.client.TransportClientFactory.createClient(TransportClientFactory.java:216) at org.apache.spark.network.client.TransportClientFactory.createClient(TransportClientFactory.java:167) at org.apache.spark.rpc.netty.NettyRpcEnv.createClient(NettyRpcEnv.scala:200) at org.apache.spark.rpc.netty.Outbox$$anon$1.call(Outbox.scala:187)

Noté que el error aquí es en realidad un problema de red. El trabajador en realidad está tratando de acceder a 10.0.2.15 que es la dirección IP NAT local de mi máquina virtual, pero falló. Este error nunca ocurre cuando solo implemento el trabajador desde mi computadora local. ¿Alguien tiene alguna idea de por qué se produce este error? ¿Por qué el trabajador intenta acceder a la dirección IP 10.0.2.15 en lugar de mi IP pública?

Por cierto, ya configuré el acceso ssh sin llave de maestro a esclavo.

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Resolví el problema asegurándome de que las VM dentro del clúster pertenezcan a la misma subred. Como ejemplo, inicialmente, configuré la IP 192.168.56.101 como nodo maestro y 192.168.57.101 como nodo trabajador con 255.255.255.0 como máscara de subred. Pero esto significa que ambas direcciones IP no están dentro de la misma subred. Después de cambiar la máscara de subred a, por ejemplo, 255.255.0.0 , pude ejecutar mi aplicación correctamente. Es posible que también deba editar algunos archivos de configuración en consecuencia (por ejemplo, ~/.bashrc , conf/spark-env.sh , conf/slaves.sh , conf/spark-default.conf y /etc/hosts )

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda