Intermittent Exception Délai à l'aide de l'Étincelle
J'ai une Étincelle de cluster avec 10 nœuds, et je suis de cette exception après l'utilisation de l'Étincelle Contexte pour la première fois:
14/11/20 11:15:13 ERROR UserGroupInformation: PriviledgedActionException as:iuberdata (auth:SIMPLE) cause:java.util.concurrent.TimeoutException: Futures timed out after [120 seconds]
Exception in thread "main" java.lang.reflect.UndeclaredThrowableException: Unknown exception in doAs
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1421)
at org.apache.spark.deploy.SparkHadoopUtil.runAsSparkUser(SparkHadoopUtil.scala:52)
at org.apache.spark.executor.CoarseGrainedExecutorBackend$.run(CoarseGrainedExecutorBackend.scala:113)
at org.apache.spark.executor.CoarseGrainedExecutorBackend$.main(CoarseGrainedExecutorBackend.scala:156)
at org.apache.spark.executor.CoarseGrainedExecutorBackend.main(CoarseGrainedExecutorBackend.scala)
Caused by: java.security.PrivilegedActionException: java.util.concurrent.TimeoutException: Futures timed out after [120 seconds]
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1408)
... 4 more
Ce guy ont eu un problème similaire, mais j'ai déjà essayé sa solution, et n'a pas travaillé.
La même exception se produit également ici mais le problème n'est pas eux même ici alors que je suis en utilisant spark version 1.1.0 dans les deux maître ou de l'esclave et du client.
J'ai essayé d'augmenter le délai d'attente à 120s, mais ça ne fonctionne toujours pas à résoudre le problème.
Je suis doploying l'environnement à travers des scripts et je suis en utilisant le contexte.addJar inclure mon code dans le classpath.
Ce problème est intermittant, et je n'ai pas la moindre idée sur la façon de suivre pourquoi est-ce qu'il se passe. Quelqu'un a été confronté à ce problème lors de la configuration d'une étincelle cluster sais comment le résoudre?
OriginalL'auteur dirceusemighini | 2014-11-20
Vous devez vous connecter pour publier un commentaire.
Nous avons eu un problème similaire qui a été assez difficile à déboguer et à l'isolement. Longue histoire courte - Spark utilise Akka qui est très pointilleux sur le nom de domaine complet de résoudre les noms d'hôtes en adresses IP. Même si vous spécifiez l'Adresse IP à tous les endroits, il n'est pas assez. La réponse ici nous a aidé à identifier le problème.
Un test utile pour exécuter est exécuté
netcat -l <port>
sur le maître et exécuternc -vz <host> <port>
sur le travailleur pour tester la connectivité. Exécuter le test avec une adresse IP et le nom de domaine complet. Vous pouvez obtenir le nom de Spark est l'aide de l'AVERTIR de message dans le journal de l'extrait de code ci-dessous. Pour nous, c'étaithost032s4.staging.companynameremoved.info
. L'adresse IP de test pour nous le passé et le nom de domaine complet d'échec du test de notre DNS n'est pas configuré correctement.Une autre chose qui nous avions à faire était de préciser les
spark.driver.host
etspark.driver.port
propriétés de l'étincelle soumettre script. C'était parce que nous avions des machines avec deux adresses IP et le nom de domaine complet résolu à l'adresse IP incorrecte.Assurez-vous que votre réseau et les entrées DNS sont corrects!!
OriginalL'auteur Saket
Le Pare-feu a été missconfigured et, dans certains cas, il n'a pas autorisé les esclaves à se connecter au cluster.
Cela a généré le problème de délai d'attente, que les esclaves ne pouvaient pas se connecter au serveur.
Si vous êtes confrontés à ce délai d'attente, vérifiez votre pare-feu configs.
Salut @OlegShirokikh, où en êtes-vous déployer? Est-il un déploiement local? Vous devez vérifier si votre cluster de serveurs peuvent accéder les uns des autres. Ici le slcaves n'ont pas la permission d'accéder à la maîtrise, et qui a causé ce problème.
OriginalL'auteur dirceusemighini
J'ai eu le même problème et j'ai réussi à contourner ce problème en utilisant
cluster
déployer mode lorsque la soumission de la demande d'Étincelle.(Parce que même en faisant tout le trafic entrant vers mon maître et l'esclave ne me permet pas d'utiliser le
client
déployer mode. Avant de changer, j'avais par défaut du groupe de sécurité AWS (pare-feu) les paramètres mis en place par Spark EC2 scripts de Spark 1.2.0).OriginalL'auteur Greg Dubicki