HDFS 2.0 federation配置全过程

本文档详细介绍了HDFS 2.0 Federation的配置过程,特别是dfs.namenode.shared.edits.dir配置的重要性。错误配置可能导致NameNode之间的namespaceID冲突,影响集群正常运行。正确做法是为每个Nameservice指定独立的JournalNode目录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

HDFS2.0 federation配置全过程

转载请注明出处,谢谢!
我是在已经搭建好的Hadoop 2.0和HA的基础上,增加federation的功能。所以相关的步骤只涉及到federation的部分。要看HA的配置步骤,请查看前一篇文章。
网上提供的好几个所谓的federation配置攻略,在实际操作中发现,都有多多少少的错误,有些错误在federation的配置时系统提示还相当的明确,所以都不可取啊。还是要自己一步一步跟着官方文档,脚踏实地地来。
主要的过程很简单,分三步:
1. 修改配置文件
2. 启动集群
3. 验证


1. 修改配置文件

*说明: 我在相应的每个配置项上面都有简单的注释,对作用做了简单的说明。
(1) core-site.xml
首先要注释掉之前在HA配置时使用的fs.defaultFS项,因为此时的ns不只一个,所以要重新配置。
  <!--  <property>
       <name>fs.defaultFS</name>
       <value>hdfs://mycluster</value>
  </property> -->
在core-site.xml中,主要是配置指定两个ns在HDFS中的存放目录,和查看视图。这里,我们把第一个ns挂载在了nameservice01目录下,第二个ns挂载在了nameservice02目录下。

注意,按照个人需要选择要不要配置defaultFS,这是指定默认的ns。如果配置了,那么如果没有指定的话,默认的存放位置就是你配置的那个ns。

 <!-- federation config start -->  
  <!-- use viewfs, to show a whole view of all namespaces -->
  <property>
       <name>fs.defaultFS</name>
       <value>viewfs:///</value>
  </property>
  <!-- mount the content of cluster 'namenode01' on /nameservice01 -->
  <property>
       <name>fs.viewfs.mounttable.default.link./nameservice01</name>
       <value>hdfs://nameservice01/</value>
  </property>
  <!-- same as the last one -->
  <property>
       <name>fs.viewfs.mounttable.default.link./nameservice02</name>
       <value>hdfs://nameservice02/</value>
  </property>
  <!-- federation config end -->
  
(2) hdfs-site.xml
首先要把关于HA的所有配置全部都删除掉,然后重新做如下配置。其实原理很简单,原来的HA相关的配置相当于是一个ns,所以当有2个ns时,把所有的配置项全部做两遍配置就好,当然细节方面还是要注意一下的。
同样,每个配置项前面会有相应的注释简单说明。

特别说明下dfs.namenode.shared.edits.dir配置项。

之前在网上看到许多配置文档,都介绍说只需要配置成如下这样:

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值