Hadoop/devrim R kuruluş ortamında, kerberos ile ilgili Java durumla mapreduce işi başarısız olabilir:

Ayar seçenekleri:
15/02/03 16:59:05 util. UYAR NativeCodeLoader: Platformunuz için yerel hadoop kitaplığı yüklenemedi... kullanarak yerleşik java sınıfları varsa
Hata ayıklama: 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 bilgi hdfs. DFSClient: A377683 için 242420 HDFS_DELEGATION_TOKEN belirteci ha oluşturuldu-hdfs:nameservice1
15/02/03 16:59:09 bilgi güvenliği. TokenCache: hdfs://nameservice1; için dt var Tür: HDFS_DELEGATION_TOKEN, hizmet: ha-hdfs:nameservice1, Ident: (242420 a377683 için HDFS_DELEGATION_TOKEN belirteci)

......

15/02/03 16:59:25 bilgi mapreduce. İş: harita %0 %0 azaltmak
15/02/03 16:59:38 bilgi mapreduce. İş: Görev kimliği: attempt_1422647534016_1760_m_000000_0, durumu: başarısız oldu
Hata: java.io.IOException: R VM çıkış koduyla çıkıldı: 1, çıktı:
Başlangıç komut dosyası
[1] DOĞRU
$fileName 
[1] NA
$start 
[1] 0
$length 
[1] 0
15/02/03 16:59:37 güvenlik UYAR. UserGroupInformation: Olarak PriviledgedActionException: a377683 (auth:KERBEROS) cause:javax.security.sasl.SaslException: GSS initiate başarısız oldu [tarafından GSSException neden: geçerli kimlik bilgileri sağlanan (mekanizması düzeyi: tüm Kerberos tgt bulunamadı)]
15/02/03 16:59:37 IPC UYAR. İstemci: sunucuya bağlanırken karşılaşılan özel durum: javax.security.sasl.SaslException: GSS initiate başarısız oldu [tarafından GSSException neden: geçerli kimlik bilgileri sağlanan (mekanizması düzeyi: tüm Kerberos tgt bulunamadı)]
15/02/03 16:59:37 güvenlik UYAR. UserGroupInformation: Olarak PriviledgedActionException: a377683 (auth:KERBEROS) cause:java.io.IOException: javax.security.sasl.SaslException: GSS initiate başarısız oldu [tarafından GSSException neden: geçerli kimlik bilgileri sağlanan (mekanizması düzeyi: tüm Kerberos tgt bulunamadı)]
hdfsOpenFile(/user/RevoShare/a377683/EE594B467CDE4C988C3C3F7AF563DABB/.input): hata FileSystem#open((Lorg/apache/hadoop/fs/Path;I)Lorg/apache/hadoop/fs/FSDataInputStream;):
java.io.IOException: yerel özel üzerinde başarısız oldu: java.io.IOException: javax.security.sasl.SaslException: GSS initiate başarısız oldu [tarafından GSSException neden: geçerli kimlik bilgileri sağlanan (mekanizması düzeyi: tüm Kerberos tgt bulunamadı)]; Ana ayrıntıları: yerel ana bilgisayar kullanılır: "< anabilgisayaradı >"; Hedef ana bilgisayar: "< anabilgisayaradı >": 8020;
org.apache.hadoop.net.NetUtils.wrapException(NetUtils.java:764) at
org.apache.hadoop.ipc.Client.call(Client.java:1415) at
org.apache.hadoop.ipc.Client.call(Client.java:1364) at
org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:206) at
(bilinmeyen bir kaynaktan) com.sun.proxy.$Proxy14.getBlockLocations at
org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.getBlockLocations(ClientNamenodeProtocolTranslatorPB.java:246) at
sun.reflect.NativeMethodAccessorImpl.invoke0 (doğal yöntemi)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at
java.lang.reflect.Method.invoke(Method.java:606) at
org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:187) at
org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:102) at
(bilinmeyen bir kaynaktan) com.sun.proxy.$Proxy15.getBlockLocations at
org.apache.hadoop.hdfs.DFSClient.callGetBlockLocations(DFSClient.java:1179) at
org.apache.hadoop.hdfs.DFSClient.getLocatedBlocks(DFSClient.java:1169) at
org.apache.hadoop.hdfs.DFSClient.getLocatedBlocks(DFSClient.java:1159) at
org.apache.hadoop.hdfs.DFSInputStream.fetchLocatedBlocksAndGetLastBlockLength(DFSInputStream.java:270) at
org.apache.hadoop.hdfs.DFSInputStream.openInfo(DFSInputStream.java:237) at
org.apache.hadoop.hdfs.DFSInputStream. < init > (DFSInputStream.java:230)
org.apache.hadoop.hdfs.DFSClient.open(DFSClient.java:1457) at
org.apache.hadoop.hdfs.DistributedFileSystem$3.doCall(DistributedFileSystem.java:301) at
org.apache.hadoop.hdfs.DistributedFileSystem$3.doCall(DistributedFileSystem.java:297) at
org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81) at
org.apache.hadoop.hdfs.DistributedFileSystem.open(DistributedFileSystem.java:297) at
Tarafından Caused: java.io.IOException: javax.security.sasl.SaslException: GSS initiate başarısız oldu [tarafından GSSException neden: geçerli kimlik bilgileri sağlanan (mekanizması düzeyi: tüm Kerberos tgt bulunamadı)]
org.apache.hadoop.ipc.Client$Connection$1.run(Client.java:679) at
java.security.AccessController.doPrivileged (doğal yöntemi)
javax.security.auth.Subject.doAs(Subject.java:415) at
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1642) at
org.apache.hadoop.ipc.Client$Connection.handleSaslConnectionFailure(Client.java:642) at
org.apache.hadoop.ipc.Client$Connection.setupIOstreams(Client.java:725) at
org.apache.hadoop.ipc.Client$Connection.access$2800(Client.java:367) at
org.apache.hadoop.ipc.Client.getConnection(Client.java:1463) at
org.apache.hadoop.ipc.Client.call(Client.java:1382) at

İlk olarak, işin geçerli ve kerberos bileti varsa, ancak teyit edilen geçerli bilet ile bile bu hata görmek mümkün gönderen kullanıcıya doğrulayın.

Küme adı düğüm yüksek kullanılabilirlik için yapılandırılmışsa, RxHadoopMR() içinde belirli olması gereklidir ve RxHdfsFileSystem() olsa da etkin adı düğüm ana bilgisayar adını belirterek çalışır düğüm hizmet adı belirtmek için komut dosyası çağırır. Bir kerberized ve HA adı düğüm ortamı söz konusu olduğunda, HDFS_DELEGATION_TOKEN nameservice başvurusuyla eşleşmesi gerekir. Yukarıdaki hata bakın:

BİLGİ güvenliği. TokenCache: hdfs://nameservice1; için dt var Tür: HDFS_DELEGATION_TOKEN, hizmet: ha-hdfs:nameservice1, Ident: (HDFS_DELEGATION_TOKEN belirteci 242420 için a377683

Bu durumda, RxHadoopMR() ve RxHdfsFileSystem() çağrıları nameNode/hostName değişkenlerinde için "nameservice1" olarak ayarlanmalıdır.

Daha fazla yardıma mı ihtiyacınız var?

Yeteneklerinizi geliştirin

Eğitimleri keşfedin >

Yeni özellikleri ilk olarak siz edinin

Microsoft Insider’a katılın >

Bu bilgi yararlı oldu mu?

Dil kalitesinden ne kadar memnunsunuz?
Deneyiminizi ne etkiledi?

Geri bildiriminiz için teşekkürler!

×