Μετάβαση στο κύριο περιεχόμενο
Υποστήριξη
Είσοδος με Microsoft
Είσοδος ή δημιουργία λογαριασμού.
Γεια σας,
Επιλέξτε διαφορετικό λογαριασμό.
Έχετε πολλούς λογαριασμούς
Επιλέξτε τον λογαριασμό με τον οποίο θέλετε να εισέλθετε.

Σε ένα περιβάλλον εταιρικής R Hadoop/επανάσταση, μια εργασία mapreduce ενδέχεται να αποτύχει με μια εξαίρεση Java που σχετίζονται με το kerberos:

Ρύθμιση των επιλογών:
15/02/03 16:59:05 ΠΡΟΕΙΔΟΠΟΊΗΣΗ util. NativeCodeLoader: Δεν είναι δυνατή η φόρτωση της βιβλιοθήκης εγγενή hadoop για την πλατφόρμα σας... χρησιμοποιώντας ενσωματωμένες java κλάδους ανάλογα με την περίπτωση
Ο εντοπισμός ΣΦΑΛΜΆΤΩΝ: 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 hdfs ΠΛΗΡΟΦΟΡΙΕΣ. DFSClient: Η δημιουργία διακριτικό HDFS_DELEGATION_TOKEN 242420 για a377683 σε ha-hdfs:nameservice1
15/02/03 16:59:09 ΠΛΗΡΟΦΟΡΙΏΝ ασφαλείας. TokenCache: Παρουσιάστηκε dt για hdfs://nameservice1; Είδος: HDFS_DELEGATION_TOKEN, υπηρεσία: ha-hdfs:nameservice1, Ident: (διακριτικό HDFS_DELEGATION_TOKEN 242420 για a377683)

......

15/02/03 16:59:25 mapreduce ΠΛΗΡΟΦΟΡΙΏΝ. Εργασία: αντιστοίχιση 0% μείωση 0%
15/02/03 16:59:38 mapreduce ΠΛΗΡΟΦΟΡΙΏΝ. Εργασία: Αναγνωριστικό εργασίας: attempt_1422647534016_1760_m_000000_0, κατάσταση: ΑΠΈΤΥΧΕ
Σφάλμα: java.io.IOException: R VM τερματίστηκε με κωδικό εξόδου: 1, έξοδος:
δέσμη ενεργειών εκκίνησης
[1] TRUE
$fileName 
[1] NA
$start 
[1] 0
$length 
[1] 0
15/02/03 16:59:37 ΠΡΟΕΙΔΟΠΟΊΗΣΗ ασφαλείας. UserGroupInformation: PriviledgedActionException ως: a377683 cause:javax.security.sasl.SaslException (auth:KERBEROS): προετοιμασία GSS απέτυχε [οφείλεται σε GSSException: δεν υπάρχουν έγκυρες πιστοποιήσεις που παρέχονται (επίπεδο μηχανισμό: απέτυχε να εντοπίσει τυχόν tgt Kerberos)]
15/02/03 16:59:37 ΠΡΟΕΙΔΟΠΟΊΗΣΗ ipc. Πρόγραμμα-πελάτης: Εξαίρεση παρουσιάστηκε κατά τη σύνδεση με το διακομιστή: javax.security.sasl.SaslException: προετοιμασία GSS απέτυχε [οφείλεται σε GSSException: δεν υπάρχουν έγκυρες πιστοποιήσεις που παρέχονται (επίπεδο μηχανισμό: απέτυχε να εντοπίσει τυχόν tgt Kerberos)]
15/02/03 16:59:37 ΠΡΟΕΙΔΟΠΟΊΗΣΗ ασφαλείας. UserGroupInformation: PriviledgedActionException ως: a377683 (auth:KERBEROS) cause:java.io.IOException: javax.security.sasl.SaslException: GSS προετοιμασία απέτυχε [οφείλεται σε GSSException: δεν υπάρχουν έγκυρες πιστοποιήσεις που παρέχονται (επίπεδο μηχανισμό: απέτυχε να εντοπίσει τυχόν tgt Kerberos)]
hdfsOpenFile(/user/RevoShare/a377683/EE594B467CDE4C988C3C3F7AF563DABB/.input): σφάλμα FileSystem#open((Lorg/apache/hadoop/fs/Path;I)Lorg/apache/hadoop/fs/FSDataInputStream;):
java.io.IOException: απέτυχε σε τοπικό εξαίρεση: java.io.IOException: javax.security.sasl.SaslException: GSS προετοιμασία απέτυχε [οφείλεται σε GSSException: δεν υπάρχουν έγκυρες πιστοποιήσεις που παρέχονται (επίπεδο μηχανισμού: απέτυχε να εντοπίσει τυχόν tgt Kerberos)], Λεπτομέρειες του κεντρικού υπολογιστή: τοπικό κεντρικό υπολογιστή είναι: "< hostname >"; κεντρικός υπολογιστής προορισμού είναι: "< 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 (άγνωστη πηγή)
σε org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.getBlockLocations(ClientNamenodeProtocolTranslatorPB.java:246)
στο sun.reflect.NativeMethodAccessorImpl.invoke0 (εγγενής μέθοδος)
σε 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 (άγνωστη πηγή)
σε 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)
Caused από: java.io.IOException: javax.security.sasl.SaslException: προετοιμασία GSS απέτυχε [οφείλεται σε GSSException: δεν υπάρχουν έγκυρες πιστοποιήσεις που παρέχονται (επίπεδο μηχανισμό: απέτυχε να εντοπίσει τυχόν tgt Kerberos)]
σε org.apache.hadoop.ipc.Client$Connection$1.run(Client.java:679)
στο java.security.AccessController.doPrivileged (εγγενής μέθοδος)
σε 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)

Πρώτον, επιβεβαιώστε ότι ο χρήστης την υποβολή της εργασίας έχουν ένα δελτίο kerberos τρέχουσες και έγκυρες, αλλά είναι δυνατό να αναγνωρίσει αυτήν την αποτυχία ακόμη και με ένα έγκυρο εισιτήριο επιβεβαιωμένη.

Εάν το σύμπλεγμα έχει ρυθμιστεί για όνομα κόμβου υψηλής διαθεσιμότητας, είναι απαραίτητο να είναι συγκεκριμένοι όσον αφορά τις RxHadoopMR() και RxHdfsFileSystem() καλεί στη δέσμη ενεργειών για να καθορίσετε την υπηρεσία κόμβο όνομα, παρόλο που καθορίζει το όνομα κεντρικού υπολογιστή του ενεργού όνομα κόμβου θα λειτουργήσει επίσης. Στην περίπτωση ενός kerberized και HA όνομα κόμβου περιβάλλοντος, το HDFS_DELEGATION_TOKEN πρέπει να συμφωνεί με την αναφορά nameservice. Το παραπάνω σφάλμα, δείτε:

ΠΛΗΡΟΦΟΡΊΕΣ ασφαλείας. TokenCache: Παρουσιάστηκε dt για hdfs://nameservice1; Είδος: HDFS_DELEGATION_TOKEN, υπηρεσία: ha-hdfs:nameservice1, Ident: (HDFS_DELEGATION_TOKEN διακριτικό 242420 για a377683

Στην περίπτωση αυτή, τα ορίσματα nameNode/όνομα κεντρικού υπολογιστή στις κλήσεις RxHadoopMR() και RxHdfsFileSystem() πρέπει να οριστεί σε "nameservice1".

Χρειάζεστε περισσότερη βοήθεια;

Θέλετε περισσότερες επιλογές;

Εξερευνήστε τα πλεονεκτήματα της συνδρομής, περιηγηθείτε σε εκπαιδευτικά σεμινάρια, μάθετε πώς μπορείτε να προστατεύσετε τη συσκευή σας και πολλά άλλα.

Οι κοινότητες σάς βοηθούν να κάνετε και να απαντάτε σε ερωτήσεις, να δίνετε σχόλια και να ακούτε από ειδικούς με πλούσια γνώση.

Σας βοήθησαν αυτές οι πληροφορίες;

Πόσο ικανοποιημένοι είστε με τη γλωσσική ποιότητα;
Τι επηρέασε την εμπειρία σας;
Πατώντας "Υποβολή" τα σχόλια σας θα χρησιμοποιηθούν για τη βελτίωση των προϊόντων και των υπηρεσιών της Microsoft. Ο διαχειριστής IT θα έχει τη δυνατότητα να συλλέξει αυτά τα δεδομένα. Δήλωση προστασίας προσωπικών δεδομένων.

Σας ευχαριστούμε για τα σχόλιά σας!

×