我正在尝试使用this在Lubuntu机器上安装Hadoop2.7.3|教程。我正处于使用namenode-format命令格式化HDFS的时间点。每当我这样做时,我都会收到此错误:HadoopBot@hadoopmaster-MS-7756:~/Hadoop/hadoop/bin$/home/HadoopBot/Hadoop/hadoop/bin/hdfsnamenode-format/home/HadoopBot/Hadoop/hadoop/bin/hdfs:line304:/home/HadoopBot/Hadoop/hadoop/bin/$/usr/lib/jvm/java-8
在thisCloudera博文,在Replication部分,已经解释了复制不会消耗NameNode上的内存。但是,我对此持怀疑态度,因为我知道NameNode在主内存中存储有关每个文件及其副本的信息。那么,无论有无复制,内存需求如何相同? 最佳答案 那么内存消耗取决于你的意思,因为有物理内存和虚拟内存(我这里只说Namenode)就物理内存而言,Cloudera博客是正确的,因为Datanode有责任与Namenode通信(例如,在重启后连接时)它维护的block。Namenode仅将文件系统结构存储到磁盘(fsimage和编辑文
我有一个包含3个节点的Hbase集群设置:一个NameNode和2个DataNode。NameNode是一个4GB内存和20GB硬盘的服务器,而每个DataNode有8GB内存和100GB硬盘。我正在使用ApacheHadoop版本:2.7.2和ApacheHbase版本:1.2.4我看到有人提到了辅助NameNode。我的问题是,在我的设置中没有辅助NameNode有什么影响?是否可以使用其中一个DataNode作为辅助NameNode?如果可能,我该怎么做?(我只在/etc/hadoop/masters文件中插入了NameNode。) 最佳答案
我对使用QJM和HDFS联合的HadoopNamenodeHA有点困惑。两者都使用多个名称节点并且都提供高可用性。我无法决定将哪种架构用于Namenode高可用性,因为除了QJM之外,两者看起来完全相同。如果这不是这里要讨论的问题类型,请原谅。 最佳答案 HDFSHighAvailability和HDFSFederation之间的主要区别在于,Federation中的名称节点彼此不相关。在HDFS联邦中,所有名称节点共享一个元数据池,其中每个名称节点都有自己的池,因此提供容错能力,即如果联合中的一个名称节点发生故障,它不会影响其他名
我设置了一个运行良好的HAHadoop集群。但是添加Kerberos认证后datanode无法连接namenode。验证Namenode服务器成功启动并且没有记录错误。我用用户'hduser'启动所有服务$sudonetstat-tuplen...tcp0010.28.94.150:80190.0.0.0:*LISTEN1001202181518/javatcp0010.28.94.150:500700.0.0.0:*LISTEN1001202071447/javatcp0010.28.94.150:90000.0.0.0:*LISTEN1001202351447/java数据节点以r
我最近一直在伪分布式模式下设置hadoop,我创建了数据并将其加载到HDFS中。后来因为一个问题格式化了namenode。现在,当我这样做时,我发现之前在数据节点上已经存在的目录和文件不再显示了。(虽然“格式化”这个词是有道理的)但是现在,我确实有这个疑问。由于名称节点不再保存文件的元数据,是否会中断对先前加载文件的访问?如果是,那么我们如何删除数据节点上已有的数据? 最佳答案 是的,您以前的数据节点目录现在已经过时了。您需要手动遍历每个数据节点并删除这些目录的内容。通过HadoopCLI没有这样的格式命令数据节点目录默认是/tmp
经过一番努力,我最终设法在伪分布式节点中使用hadoop,namenode和jobtracker完美运行(在http://localhost:50070和http://localhost:50030)昨天我尝试重启我的namenode、datanode等:$hadoopnamenode-format$start-all.shjps给我以下输出:17148DataNode17295SecondaryNameNode17419JobTracker17669JpsNamenode似乎不再愿意启动了......Jobtracker几秒钟后就死了。标记我没有重新启动计算机并且我已经尝试了以下线程
Hadoop2.0中使用FileContext对象支持符号链接(symboliclink)createSymlinks()方法。我正在考虑在一个程序中大量使用符号链接(symboliclink),该程序将上个月的所有文件都放在Hadoop文件(HAR)中,但我想知道使用符号链接(symboliclink)是否会消耗Namenode内存,类似于在HDFS中拥有小文件,这会破坏目的将这些放在HAR中,让我找到小文件的原始问题。此外,我想使用符号链接(symboliclink)的原因是当文件被HAR时(并因此移动)我不必使用新文件位置更新HBase。NameNode中符号链接(symboli
当尝试在hadoop中格式化我的namenode时,运行此命令$HADOOP_HOME/bin/hdfsnamenode-format后出现以下异常。2013-11-1213:49:48,580FATALnamenode.NameNode(NameNode.java:main(808))-Exceptioninnamenodejoinjava.io.IOException:Cannotcreatedirectory/test/dfs/name/current此问题的修复,如thislink所示和thislink,是用sudo运行命令。我在这台机器上没有root权限,也无法访问root。
我只是想知道这个。假设我正在将一个80GB的文件复制到HDFS,并且我的block大小是64MB。现在在收集了一个block的数据后,名称节点将block写入数据节点。这是我的问题:名称节点以何种方式选择应将block写入哪个数据节点。是随机选择还是循环选择? 最佳答案 NameNode会根据负载分配因子选择datanode上的block。它将以平衡所有正在运行的数据节点上的负载的方式选择block。此外,NameNode不会收集一个block的数据并将其写入数据节点。当向NameNode发送写请求时,它会分配要写入各个数据节点的b