Se connecter avec Microsoft
S'identifier ou créer un compte.
Bonjour,
Sélectionnez un autre compte.
Vous avez plusieurs comptes
Choisissez le compte avec lequel vous voulez vous connecter.

Dans un environnement d’entreprise de R Hadoop/tour, un travail mapreduce peut échouer avec une exception Java liés à kerberos :

Définition des options :
15/02/03 16:59:05 util d’avertir. NativeCodeLoader : Impossible de charger la bibliothèque native-hadoop pour votre plate-forme... l’utilisation de builtin-java classes le cas échéant
DÉBOGAGE : allArgs = [-Dmapred.reduce.tasks=1, /user/RevoShare/a377683/EE594B467CDE4C988C3C3F7AF563DABB/.input, /user/RevoShare/a377683/EE594B467CDE4C988C3C3F7AF563DABB/IRO.iro, /user/RevoShare/a377683/AirlineDemoSmall / *, dojo3m20002.rtp1.hadoop.fmr.com, 8020, /usr/bin/Revoscript]
15/02/03 16:59:09 très d’INFO. DFSClient : Créé le jeton HDFS_DELEGATION_TOKEN 242420 d’a377683 de ha-hdfs:nameservice1
15/02/03 16:59:09 sécurité des informations. TokenCache : Vous avez dt pour hdfs://nameservice1; Type : HDFS_DELEGATION_TOKEN, le Service : ha-hdfs:nameservice1, Ident : (jeton HDFS_DELEGATION_TOKEN 242420 d’a377683)

......

15/02/03 16:59:25 INFO mapreduce. Tâche : 0 % de réduction carte 0 %
15/02/03 16:59:38 INFO mapreduce. Projet : Numéro de tâche : attempt_1422647534016_1760_m_000000_0, état : échec
Erreur : java.io.IOException : R VM est arrêté avec le code de sortie : 1, sortie :
script de démarrage
VRAI [1]
$fileName 
[1] NA
$start 
[1] 0
$length 
[1] 0
15/02/03 16:59:37 avertir sécurité. UserGroupInformation : PriviledgedActionException en tant que : a377683 (auth:KERBEROS) cause:javax.security.sasl.SaslException : initiate GSS n’a pas pu [causé par GSSException : aucune information d’identification valide fournie (niveau : Impossible de trouver un ticket Kerberos)]
15/02/03 16:59:37 avertir ipc. Client : Exception s’est produite lors de la connexion au serveur : javax.security.sasl.SaslException : début GSS n’a pas pu [causé par GSSException : aucune information d’identification valide fournie (niveau : Impossible de trouver un ticket Kerberos)]
15/02/03 16:59:37 avertir sécurité. UserGroupInformation : PriviledgedActionException en tant que : a377683 (auth:KERBEROS) cause:java.io.IOException : javax.security.sasl.SaslException : initiate GSS n’a pas pu [causé par GSSException : aucune information d’identification valide fournie (niveau : Impossible de trouver un ticket Kerberos)]
hdfsOpenFile(/user/RevoShare/a377683/EE594B467CDE4C988C3C3F7AF563DABB/.input) : erreur de FileSystem#open((Lorg/apache/hadoop/fs/Path;I)Lorg/apache/hadoop/fs/FSDataInputStream;) :
java.io.IOException : a échoué sur exceptions locale : java.io.IOException : javax.security.sasl.SaslException : initiate GSS n’a pas pu [causé par GSSException : aucune information d’identification valide fournie (niveau : Impossible de trouver un ticket Kerberos)] ; Détails de l’hôte : hôte local est : « < hostname > » ; hôte de destination est : « < hostname > » : 8020 ;
à org.apache.hadoop.net.NetUtils.wrapException(NetUtils.java:764)
à org.apache.hadoop.ipc.Client.call(Client.java:1415)
à org.apache.hadoop.ipc.Client.call(Client.java:1364)
à org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:206)
à com.sun.proxy.$Proxy14.getBlockLocations (Source inconnue)
à org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.getBlockLocations(ClientNamenodeProtocolTranslatorPB.java:246)
à sun.reflect.NativeMethodAccessorImpl.invoke0 (méthode Native)
à sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
à sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
à java.lang.reflect.Method.invoke(Method.java:606)
à org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:187)
à org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:102)
à com.sun.proxy.$Proxy15.getBlockLocations (Source inconnue)
à org.apache.hadoop.hdfs.DFSClient.callGetBlockLocations(DFSClient.java:1179)
à org.apache.hadoop.hdfs.DFSClient.getLocatedBlocks(DFSClient.java:1169)
à org.apache.hadoop.hdfs.DFSClient.getLocatedBlocks(DFSClient.java:1159)
à org.apache.hadoop.hdfs.DFSInputStream.fetchLocatedBlocksAndGetLastBlockLength(DFSInputStream.java:270)
à org.apache.hadoop.hdfs.DFSInputStream.openInfo(DFSInputStream.java:237)
à org.apache.hadoop.hdfs.DFSInputStream. < init > (DFSInputStream.java:230)
à org.apache.hadoop.hdfs.DFSClient.open(DFSClient.java:1457)
à org.apache.hadoop.hdfs.DistributedFileSystem$3.doCall(DistributedFileSystem.java:301)
à org.apache.hadoop.hdfs.DistributedFileSystem$3.doCall(DistributedFileSystem.java:297)
à org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81)
à org.apache.hadoop.hdfs.DistributedFileSystem.open(DistributedFileSystem.java:297)
A par : java.io.IOException : javax.security.sasl.SaslException : initiate GSS n’a pas pu [causé par GSSException : aucune information d’identification valide fournie (niveau : Impossible de trouver un ticket Kerberos)]
à org.apache.hadoop.ipc.Client$Connection$1.run(Client.java:679)
à java.security.AccessController.doPrivileged (méthode Native)
à javax.security.auth.Subject.doAs(Subject.java:415)
à org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1642)
à org.apache.hadoop.ipc.Client$Connection.handleSaslConnectionFailure(Client.java:642)
à org.apache.hadoop.ipc.Client$Connection.setupIOstreams(Client.java:725)
à org.apache.hadoop.ipc.Client$Connection.access$2800(Client.java:367)
à org.apache.hadoop.ipc.Client.getConnection(Client.java:1463)
à org.apache.hadoop.ipc.Client.call(Client.java:1382)

Tout d’abord, vérifiez que l’utilisateur soumettant la tâche n’a pas un ticket kerberos valide et en cours, mais il est possible de voir cet échec même avec un ticket valide confirmé.

Si le cluster est configuré pour la haute disponibilité de nom du nœud, il est nécessaire d’être précis dans la RxHadoopMR() et de RxHdfsFileSystem() appelle dans le script pour spécifier le nom du service nœud si spécifiant le nom d’hôte du nœud de nom active fonctionne également. Dans le cas d’un Kerberos et nom du nœud environnement HA, la HDFS_DELEGATION_TOKEN doit correspondre à la référence nameservice. L’erreur ci-dessus, consultez :

Sécurité des informations. TokenCache : Vous avez dt pour hdfs://nameservice1; Type : HDFS_DELEGATION_TOKEN, le Service : ha-hdfs:nameservice1, Ident : (HDFS_DELEGATION_TOKEN jeton 242420 pour a377683

Dans ce cas, les arguments de nameNode/nom d’hôte dans les appels de RxHadoopMR() et de RxHdfsFileSystem() doivent indiquer « nameservice1 ».

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.

Les communautés vous permettent de poser des questions et d'y répondre, de donner vos commentaires et de bénéficier de l'avis d'experts aux connaissances approfondies.

Ces informations vous ont-elles été utiles ?

Dans quelle mesure êtes-vous satisfait(e) de la qualité de la langue ?
Qu’est-ce qui a affecté votre expérience ?
En cliquant sur Envoyer, vos commentaires seront utilisés pour améliorer les produits et services de Microsoft. Votre administrateur informatique sera en mesure de collecter ces données. Déclaration de confidentialité.

Nous vous remercions de vos commentaires.

×