我正在使用 Hadoop 2.6.2 的 Ubuntu 14.04 VM 中进行开发/研究,但我经常受阻,因为我向 hdfs 发出的任何命令总是需要大约 15 秒才能运行。我试过四处挖掘,但我无法找到问题的根源,即使这是预期的行为也是如此。
我关注了 directions on Apache's website并在/opt/hadoop-2.6.2/中成功启动并运行良好
下面是一个简单的测试命令,我用它来评估我是否已经解决了问题。
/opt/hadoop-2.6.2/bin/hdfs dfs -ls /
我检查了日志,没有发现任何错误或奇怪的警告。我在网上找到的一个建议是将记录器设置为输出控制台。
HADOOP_ROOT_LOGGER=DEBUG,console /opt/hadoop-2.6.2/bin/hdfs dfs -ls /
这样做会产生一些有趣的东西。您可以看到它卡在以下位置之间。
16/01/15 11:59:02 DEBUG impl.MetricsSystemImpl: UgiMetrics, User and group related metrics
16/01/15 11:59:17 DEBUG util.KerberosName: Kerberos krb5 configuration not found, setting default realm to empty
想法:当我第一次看到这个时,我以为它卡在身份验证上,但我不仅没有安装 Kerberos,core-site.xml 的默认配置显示身份验证模式设置为“简单”。这让人想知道为什么它会在开始时寻找任何与 Kerberos 相关的东西。我试图在 xml 中专门禁用它,但滞后/缓慢并没有消失。我有点觉得延迟是因为等待某事超时。还有其他人有什么想法吗?
最佳答案
我只是继续安装 Kerberos,只是为了看看它是否有效。现在/etc/krb5.conf 存在,大的延迟已经消失。我想知道我是否可以创建一个没有任何内容的文件。嗯……
sudo apt-get install krb5-kdc krb5-admin-server
关于Hadoop 独立 - hdfs 命令很慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34816467/