zsyzhou 发表于 2016-12-11 10:45:36

如何配置Hadoop的 Secondary节点 & NameNode节点失效恢复

  原创:
  第一部分: 如何设置Secondary NameNode节点(单独的)
  1. 在masters文件中添加 Secondary节点的主机名。 
  2.  修改hdfs-default.xml  文件
  <property>   
  <name>dfs.http.address</name>  
  <value>client148.hadoop.local:50070</value>
  </property>   (NameNode节点开放的HTTP服务,是由Secondary 节点获取fsimage ,edits 文件的通道)
  <property>
  <name>dfs.secondary.http.address</name>  
  <value>client147.hadoop.local:50090</value> 
  </property>  (Secondary 节点开放的HTTP服务,是由NameNode节点获取新的fsimage 文件的通道)
  如果dfs.secondary.http.address 第二项不设置会产生一下错误:
  17 13:31:57,434 WARN org.mortbay.log: /getimage: java.io.IOException: GetImage failed. java.net.ConnectException: Connection refused
  更详细的错误描述: http://blog.csdn.net/chlaws/article/details/6981574
  两个参数:
  <name>fs.checkpoint.period</name>
<value>3600</value>  // fs.checkpoint.period表示多长时间记录一次hdfs的镜像。默认是1小时
  <name>fs.checkpoint.size</name>
<value>67108864</value> // fs.checkpoint.size定义了edits日志文件的最大值,一旦超过这个值会导致强制执行备份(即使没到检查点的最大时间间隔)。默认值是64MB。
  

  第二部分: NameNode节点无法恢复的时候,如何新建一个NameNode节点
  1. 新建 dfs.name.dir 一个目录
  例如: mkdir  {/opt/data/test}
  2. 把SecondaryNameNode节点中 {fs.checkpoint.dir} 的所有内容拷贝到新的NameNode节点的{fs.checkpoint.dir} 目录中
  <name>fs.checkpoint.dir</name>
  <value>${hadoop.tmp.dir}/dfs/namesecondary</value> // 默认设置
  3. 在新的NameNode节点中执行命令  hadoop namenode -importCheckpoint
  

  4. 检查 {dfs.name.dir} 此目录中是否有了文件,hadoop fsck /  查看文件内容是否正常。 
  如果一切OK,NameNode节点恢复正常。 Good Luck!
  如对以上有疑问或建议请Mail to: biansutao# gmail # com
  重要提示: 在一小间隔中间添加到HDFS中的数据将在恢复数据的时候丢失。
  如果想减少这种数据丢失,可以把Checkpoint 的时间调低一点,比方说5分钟,15分钟。 
  这个需要综合考虑数据量和集群规模。
  通过设置 {dfs.name.dir} 设置多个目录(例如:NFS)可以保存NameNode节点的fsimage和edits文件。
  这样减少数据的损失。
  <property>
  <name>dfs.name.dir</name>
  <value>${hadoop.tmp.dir}/dfs/name</value>
  <description>Determines where on the local filesystem the DFS name node
  should store the name table(fsimage).  If this is a comma-delimited list
  of directories then the name table is replicated in all of the
  directories, for redundancy. </description>
  </property>
页: [1]
查看完整版本: 如何配置Hadoop的 Secondary节点 & NameNode节点失效恢复