当前位置: 首页 > 知识库问答 >
问题:

Hadoop datanode无法与KDC通信,但kinit可以工作

逄皓轩
2023-03-14

Hadoop datanode无法与KDC通信,但kinit可以工作。

sudo kinit-k-t /etc/hadoop/conf/hdfs.keytabhdfs/symbio5.us-west-1.compute.internal@US-WEST-1.COMPUTE.INTERNAL

UDP端口也可以。

nc symbio5.us-west-1.compute。内部-v-z-u 88

连接到symbio5.us-west-1.compute。内部88端口[udp/kerberos]成功!

但在hadoop kerberos调试输出中,它总是说“接收超时”。

KrbAsReq调用createMessage

createMessage中的KrbAsReq

KrbKdcReq发送:kdc=symbio5.us-west-1.compute。内部UDP:88,超时=30000,重试次数=3,#字节=216

kdc=symbio5.us-west-1.compute.internalUDP: 88,超时=30000,尝试=1,#字节=216

尝试为1的SocketTimeOutException

kdc=symbio5.us-west-1.compute.internalUDP: 88,超时=30000,尝试=2,#bytes=216

SocketTimeOutException尝试:2

kdc通信:kdc=symbio5.us-west-1.compute。内部UDP:88,超时=30000,尝试=3,#字节=216

尝试的SocketTimeOutException:3

KrbKdcReq发送:尝试symbio5.us-west-1.compute时出错。内部java.net。SocketTimeoutException:接收超时

但是在symbio5本身上,它有Namenode、KDC和datanode,这是可以的。

KrbAsReq调用createMessage

createMessage中的KrbAsReq

KrbKdcReq发送:kdc=symbio5.us-west-1.compute。内部UDP:88,超时=30000,重试次数=3,#字节=217

kdc通信:kdc=symbio5.us-west-1.compute。内部UDP:88,超时=30000,尝试=1,#字节=217

KrbKdcReq发送:#字节读取=776

KrbKdcReq发送:#字节读取=776

KDCAccessability:删除symbio5.us-west-1.compute.internal

谁能帮我点忙吗?非常感谢。

共有1个答案

毕富
2023-03-14

最后我修复了这个问题,只是让Hadoop使用TCP端口与Kerberos通信,而不是UDP。

sudo vim/etc/krb5.conf

...

[libdefaults]

...

udp_preference_limit=1

...

 类似资料:
  • 问题内容: 如果我使用ActionBarSherlock 3.5.1,则一切正常且正常。但是,如果我想使用4.0 RC1,则会出现错误。 有任何想法吗? 问题答案: 确保将(和您的ActionBarSherlock项目的)目标API级别设置为15。为此: 将两个AndroidManifest.xml文件中的android:targetSdkVersion都更改为“ 15”。 使用项目属性(可能也包

  • 问题内容: 我刚刚在xcode 6 beta中打开了现有项目。但是由于以下错误消息而崩溃。 xib在xcode beta上运行是否有任何解决方法? 问题答案: 这解决了Interface Builder问题。

  • 我试图使用Ubuntu 16.04在亚马逊AWS上部署我的Django项目。我正在运行python版本2.7.12和Django 1.10.5。我创建了名为venv的虚拟环境,然后激活了它。我得到这个错误,当我试图运行pythonmanage.pyrunserver。 Traceback(最近一次调用最后一次):文件"manage.py",第17行,在"不能导入Django。你确定它安装和"重要错

  • 我有一个Nodejs应用程序在我的服务器上运行,所以我想使用Nginx反向代理从一个不错的域名进行API调用,而不是键入IP和端口,我还生成了一个免费的let’s encrypt证书用于此。 问题是,如果我使用IP和端口,反向服务器不工作;如果我使用域名,反向服务器工作;不管怎样,反向服务器会给我一个Nginx模板测试页面。以下是我的配置: Nginx配置超文本传输协议{log_formatmai

  • 问题内容: 我有一个使用Http(不是套接字)与servlet通信的applet。当前,小程序的每个实例(即,当每个小程序由不同计算机上的不同客户端运行时),所有实例均与同一servlet通信。我想要的是applet的每个实例与 同一servlet的 不同实例通信。这可能吗? 问题答案: 您不想在webapp的生存期内拥有同一servlet的不同 实例 。通常的做法是使用来区分客户端。您需要将as

  • 我必须得到我使用ffmpeg的视频缩略图。在我的服务器上,我从ssh运行ffmpeg命令,然后它运行正常,但从php exec函数它不运行,它给出错误/usr/bin/ffmpeg:没有这样的文件或目录,但ffmpeg安装在这个位置usr/bin/ffmpeg。我的源代码是: 请提供任何解决方案。