zoukankan      html  css  js  c++  java
  • NameNode故障处理

     NameNode故障后,可以采用如下两种方法恢复数据。

    在此之前需要启动SecondaryNameNode节点(和NameNode节点不要放到一台服务器上,影响性能)

    配置hdfs-site.xml文件

      <property>
            <name>dfs.namenode.secondary.http-address</name>
            <value>192.168.1.149:50090</value>
        </property>
    hdfs  --daemon start secondarynamenode

    方法一:将SecondaryNameNode中的数据拷贝到NameNode存储数据的目录。

    1、kill -9 NameNode进程

    2、删除NameNode存储的数据(${hadoop.tmp.dir}/dfs/name)

    3、拷贝SecondaryNameNode中的数据到元NameNode存储数据的目录

    4、重新启动NamenNode

    方法二:使用-importCheckpoint选项启动NameNode守护进程,从而将SecondaryNameNode中数据拷贝到NameNode目录中。

    1、修改hdfs-site.xml中的

    <property>
      <name>dfs.namenode.checkpoint.period</name>
      <value>120</value>
    </property>
    
    <property>
      <name>dfs.namenode.name.dir</name>
      <value>${hadoop.tmp.dir}/dfs/name</value>
    </property>

    2、kill -9 NameNode进程

    3、删除NameNode存储的数据(${hadoop.tmp.dir}/dfs/name)

    4、如果SecondaryNameNode不和NameNode在一个主机节点上,需要将SecondaryNameNode存储数据的目录拷贝到NameNode存储数据的平级目录,并删除in_use.lock文件

    5、导入检查点数据(等待一会ctrl+c结束掉)

    6、启动NameNode

  • 相关阅读:
    SimpleDateFormat解析的时区问题
    linux之cp/scp命令+scp命令详解
    java.net.SocketException: java.security.NoSuchAlgorithmException
    Gradle使用手册(一):为什么要用Gradle?
    js_实用
    exp.validate.js
    MySQL实用技巧
    MongoDB 用户配置
    js 图片处理 Jcrop.js API
    MySQL连接池
  • 原文地址:https://www.cnblogs.com/cq-yangzhou/p/14412989.html
Copyright © 2011-2022 走看看