• 模拟namenode挂掉利用secondary namenode恢复


    测试机器:

    10.0.50.144  master  (namenode,datanode)

    10.0.50.145  node1    (datanode)

    10.0.50.146  node2    (datanode)

    一、在hdfs正常启动后执行以下命令查看目录/tmp 内容

    [hbase@master sbin]$ hadoop fs -ls /tmp
    Found 10 items
    drwxr-xr-x   - hbase supergroup          0 2015-09-11 03:12 /tmp/arch
    drwx------   - hbase supergroup          0 2015-09-10 03:32 /tmp/hadoop-yarn
    drwxr-xr-x   - hbase supergroup          0 2015-09-10 03:32 /tmp/input
    -rw-r--r--   3 hbase supergroup  153512879 2015-09-10 09:49 /tmp/jdk-7u79-linux-x64.gz
    -rw-r--r--   3 hbase supergroup  312043744 2015-09-17 06:44 /tmp/mysql-5.6.24-linux-glibc2.5-x86_64.tar.gz
    drwxr-xr-x   - hbase supergroup          0 2015-09-10 03:33 /tmp/out
    drwxr-xr-x   - hbase supergroup          0 2015-09-22 02:54 /tmp/test1
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 09:49 /tmp/test2
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 10:44 /tmp/test3
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 11:14 /tmp/test4

    在checkpoint执行之前,创建一个目录/tmp/test5

    [hbase@master sbin]$ hadoop fs -mkdir /tmp/test5
    [hbase@master sbin]$ hadoop fs -ls /tmp         
    Found 11 items
    drwxr-xr-x   - hbase supergroup          0 2015-09-11 03:12 /tmp/arch
    drwx------   - hbase supergroup          0 2015-09-10 03:32 /tmp/hadoop-yarn
    drwxr-xr-x   - hbase supergroup          0 2015-09-10 03:32 /tmp/input
    -rw-r--r--   3 hbase supergroup  153512879 2015-09-10 09:49 /tmp/jdk-7u79-linux-x64.gz
    -rw-r--r--   3 hbase supergroup  312043744 2015-09-17 06:44 /tmp/mysql-5.6.24-linux-glibc2.5-x86_64.tar.gz
    drwxr-xr-x   - hbase supergroup          0 2015-09-10 03:33 /tmp/out
    drwxr-xr-x   - hbase supergroup          0 2015-09-22 02:54 /tmp/test1
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 09:49 /tmp/test2
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 10:44 /tmp/test3
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 11:14 /tmp/test4
    drwxr-xr-x   - hbase supergroup          0 2015-09-24 02:21 /tmp/test5

    查看namenode的进程号,并执行kill

    [hbase@master sbin]$ jps
    20008 NameNode
    20122 DataNode
    20539 Jps
    [hbase@master sbin]$ kill 20008
    [hbase@master sbin]$ jps
    20122 DataNode
    20556 Jps

    此时namenode日志里报错线上namenode已经shutdown

    2015-09-24 02:21:58,561 ERROR org.apache.hadoop.hdfs.server.namenode.NameNode: RECEIVED SIGNAL 15: SIGTERM
    2015-09-24 02:21:58,565 INFO org.apache.hadoop.hdfs.server.namenode.NameNode: SHUTDOWN_MSG: 
    /************************************************************
    SHUTDOWN_MSG: Shutting down NameNode at master/10.0.52.144
    ************************************************************/

    此时集群已经不可用

    [hbase@master sbin]$ hadoop fs -ls /tmp
    ls: Call From master/10.0.52.144 to master:9000 failed on connection exception: java.net.ConnectException: Connection refused; For more details see:  http://wiki.apache.org/hadoop/ConnectionRefused

    人为模拟namenode目录丢失

    [hbase@master sbin]$ cd /app/HadoopData/
    [hbase@master HadoopData]$ ll
    total 8
    drwxrwxr-x 4 hbase hbase 4096 Sep 24 10:20 dfs
    drwxr-xr-x 5 hbase hbase 4096 Sep 23 19:59 nm-local-dir
    [hbase@master HadoopData]$ cd dfs
    [hbase@master dfs]$ ll
    total 8
    drwx------ 3 hbase hbase 4096 Sep 24 10:22 data
    drwxrwxr-x 3 hbase hbase 4096 Sep 24 10:21 name
    [hbase@master dfs]$ mv name name1
    [hbase@master dfs]$ ll
    total 8
    drwx------ 3 hbase hbase 4096 Sep 24 10:22 data
    drwxrwxr-x 3 hbase hbase 4096 Sep 24 10:21 name1

    然后重新启动hdfs,namenode启动不起来,因为目录找不到了

    2015-09-24 02:28:02,198 WARN org.apache.hadoop.hdfs.server.common.Storage: Storage directory /app/HadoopData/dfs/name does not exist
    2015-09-24 02:28:02,200 WARN org.apache.hadoop.hdfs.server.namenode.FSNamesystem: Encountered exception loading fsimage
    org.apache.hadoop.hdfs.server.common.InconsistentFSStateException: Directory /app/HadoopData/dfs/name is in an inconsistent state: storage directory does not exist or is not accessible.
            at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverStorageDirs(FSImage.java:327)
            at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage.java:215)
            at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFSImage(FSNamesystem.java:975)
            at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFromDisk(FSNamesystem.java:681)
            at org.apache.hadoop.hdfs.server.namenode.NameNode.loadNamesystem(NameNode.java:584)
            at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:644)
            at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:811)
            at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:795)
            at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1488)
            at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1554)
    2015-09-24 02:28:02,204 INFO org.mortbay.log: Stopped HttpServer2$SelectChannelConnectorWithSafeStartup@0.0.0.0:50070
    2015-09-24 02:28:02,304 INFO org.apache.hadoop.metrics2.impl.MetricsSystemImpl: Stopping NameNode metrics system...
    2015-09-24 02:28:02,305 INFO org.apache.hadoop.metrics2.impl.MetricsSystemImpl: NameNode metrics system stopped.
    2015-09-24 02:28:02,305 INFO org.apache.hadoop.metrics2.impl.MetricsSystemImpl: NameNode metrics system shutdown complete.
    2015-09-24 02:28:02,305 ERROR org.apache.hadoop.hdfs.server.namenode.NameNode: Failed to start namenode.

    恢复方案一

    将secondary namenode所在机器上的目录文件,打包拷贝到master上

    [hbase@node1 dfs]$ ll
    total 24
    drwx------ 3 hbase hbase 4096 Sep 24 10:22 data
    drwxrwxr-x 3 hbase hbase 4096 Sep 10 11:23 name
    drwxrwxr-x 3 hbase hbase 4096 Sep 24 10:31 namesecondary
    -rw-rw-r-- 1 hbase hbase 9891 Sep 24 10:33 namesecondary.tar.gz
    [hbase@node1 dfs]$ 
    [hbase@node1 dfs]$ scp namesecondary.tar.gz master:/app/HadoopData/dfs/

    在master上解压后,重命名为name

    [hbase@master dfs]$ tar xzvf namesecondary.tar.gz
    [hbase@master dfs]$ ll
    total 28
    drwx------ 3 hbase hbase 4096 Sep 24 10:22 data
    drwxrwxr-x 3 hbase hbase 4096 Sep 24 10:21 name1
    drwxrwxr-x 3 hbase hbase 4096 Sep 24 10:31 namesecondary
    -rw-rw-r-- 1 hbase hbase 9891 Sep 24 10:33 namesecondary.tar.gz
    [hbase@master dfs]$ mv namesecondary name
    [hbase@master dfs]$ ll
    total 24
    drwx------ 3 hbase hbase 4096 Sep 24 10:22 data
    drwxrwxr-x 3 hbase hbase 4096 Sep 24 10:31 name
    drwxrwxr-x 3 hbase hbase 4096 Sep 24 10:21 name1
    -rw-rw-r-- 1 hbase hbase 9891 Sep 24 10:33 namesecondary.tar.gz

    然后重新启动

    [hbase@master sbin]$ ./start-dfs.sh

    再次执行hadoop fs命令

    [hbase@master sbin]$ jps
    21888 NameNode
    22008 DataNode
    22251 Jps
    [hbase@master sbin]$ hadoop fs -ls /tmp
    Found 10 items
    drwxr-xr-x   - hbase supergroup          0 2015-09-11 03:12 /tmp/arch
    drwx------   - hbase supergroup          0 2015-09-10 03:32 /tmp/hadoop-yarn
    drwxr-xr-x   - hbase supergroup          0 2015-09-10 03:32 /tmp/input
    -rw-r--r--   3 hbase supergroup  153512879 2015-09-10 09:49 /tmp/jdk-7u79-linux-x64.gz
    -rw-r--r--   3 hbase supergroup  312043744 2015-09-17 06:44 /tmp/mysql-5.6.24-linux-glibc2.5-x86_64.tar.gz
    drwxr-xr-x   - hbase supergroup          0 2015-09-10 03:33 /tmp/out
    drwxr-xr-x   - hbase supergroup          0 2015-09-22 02:54 /tmp/test1
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 09:49 /tmp/test2
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 10:44 /tmp/test3
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 11:14 /tmp/test4

     发现集群是恢复了,可用了,但是在最后一次checkpoint后至集群挂掉之后的操作是丢失了(/tmp/test5)

    毕竟secondary namenode只保留了最近一次的fsimage.

    观察namenode利用secondary namenode目录恢复时的日志

    2015-09-24 02:35:02,452 INFO org.apache.hadoop.hdfs.server.namenode.FileJournalManager: Recovering unfinalized segments in /app/HadoopData/dfs/name/current
    2015-09-24 02:35:02,491 INFO org.apache.hadoop.hdfs.server.namenode.FSImage: No edit log streams selected.
    2015-09-24 02:35:02,642 INFO org.apache.hadoop.hdfs.server.namenode.FSImageFormatPBINode: Loading 35 INodes.
    2015-09-24 02:35:02,791 INFO org.apache.hadoop.hdfs.server.namenode.FSImageFormatProtobuf: Loaded FSImage in 0 seconds.
    2015-09-24 02:35:02,791 INFO org.apache.hadoop.hdfs.server.namenode.FSImage: Loaded image for txid 760 from /app/HadoopData/dfs/name/current/fsimage_0000000000000000760
    2015-09-24 02:35:02,813 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem: Need to save fs image? true (staleImage=true, haEnabled=false, isRollingUpgrade=false)
    2015-09-24 02:35:02,813 INFO org.apache.hadoop.hdfs.server.namenode.FSImage: Save namespace ...
    2015-09-24 02:35:02,985 INFO org.apache.hadoop.hdfs.server.namenode.NNStorageRetentionManager: Going to retain 2 images with txid >= 757
    2015-09-24 02:35:03,066 INFO org.apache.hadoop.hdfs.server.namenode.FSEditLog: Starting log segment at 761
    2015-09-24 02:35:03,235 INFO org.apache.hadoop.hdfs.server.namenode.NameCache: initialized with 0 entries 0 lookups
    2015-09-24 02:35:03,236 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem: Finished loading FSImage in 1028 msecs

    恢复方案二

    将secondary namenode所在机器上的目录文件,打包拷贝到master上

    [hbase@node1 dfs]$ ll
    total 24
    drwx------ 3 hbase hbase 4096 Sep 24 10:22 data
    drwxrwxr-x 3 hbase hbase 4096 Sep 10 11:23 name
    drwxrwxr-x 3 hbase hbase 4096 Sep 24 10:31 namesecondary
    -rw-rw-r-- 1 hbase hbase 9891 Sep 24 10:33 namesecondary.tar.gz
    [hbase@node1 dfs]$ 
    [hbase@node1 dfs]$ scp namesecondary.tar.gz master:/app/HadoopData/dfs/

    在master上的namenode目录下创建文件夹name

    [hbase@master dfs]$ mkdir name
    [hbase@master dfs]$ ll
    total 28
    drwx------ 3 hbase hbase 4096 Sep 24 11:14 data
    drwxrwxr-x 2 hbase hbase 4096 Sep 24 11:15 name
    drwxrwxr-x 3 hbase hbase 4096 Sep 24 10:21 name1
    drwxrwxr-x 3 hbase hbase 4096 Sep 24 11:14 name2
    -rw-rw-r-- 1 hbase hbase 9891 Sep 24 10:33 namesecondary.tar.gz
    [hbase@master dfs]$ tar xzvf namesecondary.tar.gz
    [hbase@master dfs]$ ll
    total 32
    drwx------ 3 hbase hbase 4096 Sep 24 11:14 data
    drwxrwxr-x 3 hbase hbase 4096 Sep 24 11:19 name
    drwxrwxr-x 3 hbase hbase 4096 Sep 24 10:21 name1
    drwxrwxr-x 3 hbase hbase 4096 Sep 24 11:14 name2
    drwxrwxr-x 3 hbase hbase 4096 Sep 24 10:31 namesecondary
    -rw-rw-r-- 1 hbase hbase 9891 Sep 24 10:33 namesecondary.tar.gz

    执行 hadoop namenode -importCheckpoint

    [hbase@master dfs]$ hadoop namenode -importCheckpoint
    DEPRECATED: Use of this script to execute hdfs command is deprecated.
    Instead use the hdfs command for it.
    
    15/09/24 05:59:17 INFO namenode.NameNode: STARTUP_MSG: 
    /************************************************************
    STARTUP_MSG: Starting NameNode
    STARTUP_MSG:   host = master/10.0.52.144
    STARTUP_MSG:   args = [-importCheckpoint]
    STARTUP_MSG:   version = 2.7.1
    STARTUP_MSG:   classpath = /usr/local/hadoop/etc/hadoop:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/slf4j-api-1.7.10.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/servlet-api-2.5.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/jersey-server-1.9.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/hadoop-annotations-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/hadoop-auth-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/jsch-0.1.42.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/api-asn1-api-1.0.0-M20.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/commons-httpclient-3.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/curator-framework-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/avro-1.7.4.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/jackson-mapper-asl-1.9.13.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/jaxb-impl-2.2.3-1.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/commons-logging-1.1.3.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/paranamer-2.3.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/curator-recipes-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/asm-3.2.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/httpclient-4.2.5.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/gson-2.2.4.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/activation-1.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/stax-api-1.0-2.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/zookeeper-3.4.6.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/junit-4.11.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/hamcrest-core-1.3.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/commons-compress-1.4.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/jettison-1.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/java-xmlbuilder-0.4.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/commons-digester-1.8.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/apacheds-i18n-2.0.0-M15.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/commons-beanutils-1.7.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/jackson-xc-1.9.13.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/log4j-1.2.17.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/jets3t-0.9.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/commons-codec-1.4.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/mockito-all-1.8.5.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/jsr305-3.0.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/netty-3.6.2.Final.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/api-util-1.0.0-M20.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/commons-configuration-1.6.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/htrace-core-3.1.0-incubating.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/protobuf-java-2.5.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/jersey-core-1.9.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/commons-collections-3.2.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/commons-cli-1.2.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/apacheds-kerberos-codec-2.0.0-M15.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/commons-io-2.4.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/jsp-api-2.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/snappy-java-1.0.4.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/commons-math3-3.1.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/xz-1.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/jetty-util-6.1.26.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/commons-lang-2.6.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/commons-beanutils-core-1.8.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/xmlenc-0.52.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/jetty-6.1.26.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/httpcore-4.2.5.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/jaxb-api-2.2.2.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/commons-net-3.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/jackson-core-asl-1.9.13.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/guava-11.0.2.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/jersey-json-1.9.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/jackson-jaxrs-1.9.13.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/lib/curator-client-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/hadoop-nfs-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/hadoop-common-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/common/hadoop-common-2.7.1-tests.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/servlet-api-2.5.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/jersey-server-1.9.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/xml-apis-1.3.04.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/jackson-mapper-asl-1.9.13.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/commons-daemon-1.0.13.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/netty-all-4.0.23.Final.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/commons-logging-1.1.3.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/asm-3.2.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/leveldbjni-all-1.8.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/log4j-1.2.17.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/commons-codec-1.4.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/jsr305-3.0.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/netty-3.6.2.Final.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/htrace-core-3.1.0-incubating.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/protobuf-java-2.5.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/jersey-core-1.9.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/commons-cli-1.2.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/xercesImpl-2.9.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/commons-io-2.4.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/jetty-util-6.1.26.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/commons-lang-2.6.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/xmlenc-0.52.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/jetty-6.1.26.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/jackson-core-asl-1.9.13.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/lib/guava-11.0.2.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/hadoop-hdfs-nfs-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/hadoop-hdfs-2.7.1-tests.jar:/usr/local/hadoop-2.7.1/share/hadoop/hdfs/hadoop-hdfs-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/servlet-api-2.5.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/jersey-server-1.9.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/jackson-mapper-asl-1.9.13.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/jaxb-impl-2.2.3-1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/commons-logging-1.1.3.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/asm-3.2.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/leveldbjni-all-1.8.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/activation-1.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/stax-api-1.0-2.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/zookeeper-3.4.6.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/commons-compress-1.4.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/jettison-1.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/jersey-client-1.9.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/jackson-xc-1.9.13.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/guice-servlet-3.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/guice-3.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/log4j-1.2.17.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/commons-codec-1.4.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/aopalliance-1.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/javax.inject-1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/jsr305-3.0.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/netty-3.6.2.Final.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/protobuf-java-2.5.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/jersey-core-1.9.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/commons-collections-3.2.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/commons-cli-1.2.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/jersey-guice-1.9.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/commons-io-2.4.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/xz-1.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/jetty-util-6.1.26.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/commons-lang-2.6.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/jetty-6.1.26.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/jaxb-api-2.2.2.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/jackson-core-asl-1.9.13.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/guava-11.0.2.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/jersey-json-1.9.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/jackson-jaxrs-1.9.13.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/lib/zookeeper-3.4.6-tests.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/hadoop-yarn-applications-unmanaged-am-launcher-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/hadoop-yarn-server-common-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/hadoop-yarn-server-resourcemanager-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/hadoop-yarn-api-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/hadoop-yarn-server-tests-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/hadoop-yarn-server-sharedcachemanager-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/hadoop-yarn-registry-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/hadoop-yarn-server-nodemanager-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/hadoop-yarn-client-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/hadoop-yarn-server-web-proxy-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/hadoop-yarn-applications-distributedshell-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/hadoop-yarn-server-applicationhistoryservice-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/yarn/hadoop-yarn-common-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/jersey-server-1.9.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/hadoop-annotations-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/avro-1.7.4.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/jackson-mapper-asl-1.9.13.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/paranamer-2.3.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/asm-3.2.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/leveldbjni-all-1.8.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/junit-4.11.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/hamcrest-core-1.3.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/commons-compress-1.4.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/guice-servlet-3.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/guice-3.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/log4j-1.2.17.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/aopalliance-1.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/javax.inject-1.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/netty-3.6.2.Final.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/protobuf-java-2.5.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/jersey-core-1.9.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/jersey-guice-1.9.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/commons-io-2.4.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/snappy-java-1.0.4.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/xz-1.0.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/lib/jackson-core-asl-1.9.13.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/hadoop-mapreduce-client-common-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/hadoop-mapreduce-client-hs-plugins-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/hadoop-mapreduce-client-shuffle-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/hadoop-mapreduce-client-hs-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/hadoop-mapreduce-client-app-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/hadoop-mapreduce-client-core-2.7.1.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.1-tests.jar:/usr/local/hadoop-2.7.1/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.1.jar:/contrib/capacity-scheduler/*.jar:/usr/local/hadoop-2.7.1/contrib/capacity-scheduler/*.jar
    STARTUP_MSG:   build = https://git-wip-us.apache.org/repos/asf/hadoop.git -r 15ecc87ccf4a0228f35af08fc56de536e6ce657a; compiled by 'jenkins' on 2015-06-29T06:04Z
    STARTUP_MSG:   java = 1.7.0_17
    ************************************************************/
    15/09/24 05:59:17 INFO namenode.NameNode: registered UNIX signal handlers for [TERM, HUP, INT]
    15/09/24 05:59:17 INFO namenode.NameNode: createNameNode [-importCheckpoint]
    15/09/24 05:59:18 INFO impl.MetricsConfig: loaded properties from hadoop-metrics2.properties
    15/09/24 05:59:18 INFO impl.MetricsSystemImpl: Scheduled snapshot period at 10 second(s).
    15/09/24 05:59:18 INFO impl.MetricsSystemImpl: NameNode metrics system started
    15/09/24 05:59:18 INFO namenode.NameNode: fs.defaultFS is hdfs://master:9000
    15/09/24 05:59:18 INFO namenode.NameNode: Clients are to use master:9000 to access this namenode/service.
    15/09/24 05:59:19 INFO hdfs.DFSUtil: Starting Web-server for hdfs at: http://0.0.0.0:50070
    15/09/24 05:59:19 INFO mortbay.log: Logging to org.slf4j.impl.Log4jLoggerAdapter(org.mortbay.log) via org.mortbay.log.Slf4jLog
    15/09/24 05:59:19 INFO server.AuthenticationFilter: Unable to initialize FileSignerSecretProvider, falling back to use random secrets.
    15/09/24 05:59:19 INFO http.HttpRequestLog: Http request log for http.requests.namenode is not defined
    15/09/24 05:59:19 INFO http.HttpServer2: Added global filter 'safety' (class=org.apache.hadoop.http.HttpServer2$QuotingInputFilter)
    15/09/24 05:59:19 INFO http.HttpServer2: Added filter static_user_filter (class=org.apache.hadoop.http.lib.StaticUserWebFilter$StaticUserFilter) to context hdfs
    15/09/24 05:59:19 INFO http.HttpServer2: Added filter static_user_filter (class=org.apache.hadoop.http.lib.StaticUserWebFilter$StaticUserFilter) to context static
    15/09/24 05:59:19 INFO http.HttpServer2: Added filter static_user_filter (class=org.apache.hadoop.http.lib.StaticUserWebFilter$StaticUserFilter) to context logs
    15/09/24 05:59:19 INFO http.HttpServer2: Added filter 'org.apache.hadoop.hdfs.web.AuthFilter' (class=org.apache.hadoop.hdfs.web.AuthFilter)
    15/09/24 05:59:19 INFO http.HttpServer2: addJerseyResourcePackage: packageName=org.apache.hadoop.hdfs.server.namenode.web.resources;org.apache.hadoop.hdfs.web.resources, pathSpec=/webhdfs/v1/*
    15/09/24 05:59:19 INFO http.HttpServer2: Jetty bound to port 50070
    15/09/24 05:59:19 INFO mortbay.log: jetty-6.1.26
    15/09/24 05:59:19 WARN mortbay.log: Can't reuse /tmp/Jetty_0_0_0_0_50070_hdfs____w2cu08, using /tmp/Jetty_0_0_0_0_50070_hdfs____w2cu08_528369526129709161
    15/09/24 05:59:19 INFO mortbay.log: Started HttpServer2$SelectChannelConnectorWithSafeStartup@0.0.0.0:50070
    15/09/24 05:59:20 WARN namenode.FSNamesystem: !!! WARNING !!!
            The NameNode currently runs without persistent storage.
            Any changes to the file system meta-data may be lost.
            Recommended actions:
                    - shutdown and restart NameNode with configured "dfs.namenode.edits.dir.required" in hdfs-site.xml;
                    - use Backup Node as a persistent and up-to-date storage of the file system meta-data.
    15/09/24 05:59:20 WARN namenode.FSNamesystem: Only one image storage directory (dfs.namenode.name.dir) configured. Beware of data loss due to lack of redundant storage directories!
    15/09/24 05:59:20 WARN namenode.FSNamesystem: Only one namespace edits storage directory (dfs.namenode.edits.dir) configured. Beware of data loss due to lack of redundant storage directories!
    15/09/24 05:59:20 INFO namenode.FSNamesystem: No KeyProvider found.
    15/09/24 05:59:20 INFO namenode.FSNamesystem: fsLock is fair:true
    15/09/24 05:59:20 INFO blockmanagement.DatanodeManager: dfs.block.invalidate.limit=1000
    15/09/24 05:59:20 INFO blockmanagement.DatanodeManager: dfs.namenode.datanode.registration.ip-hostname-check=true
    15/09/24 05:59:20 INFO blockmanagement.BlockManager: dfs.namenode.startup.delay.block.deletion.sec is set to 000:00:00:00.000
    15/09/24 05:59:20 INFO blockmanagement.BlockManager: The block deletion will start around 2015 Sep 24 05:59:20
    15/09/24 05:59:20 INFO util.GSet: Computing capacity for map BlocksMap
    15/09/24 05:59:20 INFO util.GSet: VM type       = 64-bit
    15/09/24 05:59:20 INFO util.GSet: 2.0% max memory 888.9 MB = 17.8 MB
    15/09/24 05:59:20 INFO util.GSet: capacity      = 2^21 = 2097152 entries
    15/09/24 05:59:20 INFO blockmanagement.BlockManager: dfs.block.access.token.enable=false
    15/09/24 05:59:20 INFO blockmanagement.BlockManager: defaultReplication         = 3
    15/09/24 05:59:20 INFO blockmanagement.BlockManager: maxReplication             = 512
    15/09/24 05:59:20 INFO blockmanagement.BlockManager: minReplication             = 1
    15/09/24 05:59:20 INFO blockmanagement.BlockManager: maxReplicationStreams      = 2
    15/09/24 05:59:20 INFO blockmanagement.BlockManager: shouldCheckForEnoughRacks  = false
    15/09/24 05:59:20 INFO blockmanagement.BlockManager: replicationRecheckInterval = 3000
    15/09/24 05:59:20 INFO blockmanagement.BlockManager: encryptDataTransfer        = false
    15/09/24 05:59:20 INFO blockmanagement.BlockManager: maxNumBlocksToLog          = 1000
    15/09/24 05:59:20 INFO namenode.FSNamesystem: fsOwner             = hbase (auth:SIMPLE)
    15/09/24 05:59:20 INFO namenode.FSNamesystem: supergroup          = supergroup
    15/09/24 05:59:20 INFO namenode.FSNamesystem: isPermissionEnabled = true
    15/09/24 05:59:20 INFO namenode.FSNamesystem: HA Enabled: false
    15/09/24 05:59:20 INFO namenode.FSNamesystem: Append Enabled: true
    15/09/24 05:59:20 INFO util.GSet: Computing capacity for map INodeMap
    15/09/24 05:59:20 INFO util.GSet: VM type       = 64-bit
    15/09/24 05:59:20 INFO util.GSet: 1.0% max memory 888.9 MB = 8.9 MB
    15/09/24 05:59:20 INFO util.GSet: capacity      = 2^20 = 1048576 entries
    15/09/24 05:59:20 INFO namenode.FSDirectory: ACLs enabled? false
    15/09/24 05:59:20 INFO namenode.FSDirectory: XAttrs enabled? true
    15/09/24 05:59:20 INFO namenode.FSDirectory: Maximum size of an xattr: 16384
    15/09/24 05:59:20 INFO namenode.NameNode: Caching file names occuring more than 10 times
    15/09/24 05:59:20 INFO util.GSet: Computing capacity for map cachedBlocks
    15/09/24 05:59:20 INFO util.GSet: VM type       = 64-bit
    15/09/24 05:59:20 INFO util.GSet: 0.25% max memory 888.9 MB = 2.2 MB
    15/09/24 05:59:20 INFO util.GSet: capacity      = 2^18 = 262144 entries
    15/09/24 05:59:20 INFO namenode.FSNamesystem: dfs.namenode.safemode.threshold-pct = 0.9990000128746033
    15/09/24 05:59:20 INFO namenode.FSNamesystem: dfs.namenode.safemode.min.datanodes = 0
    15/09/24 05:59:20 INFO namenode.FSNamesystem: dfs.namenode.safemode.extension     = 30000
    15/09/24 05:59:20 INFO metrics.TopMetrics: NNTop conf: dfs.namenode.top.window.num.buckets = 10
    15/09/24 05:59:20 INFO metrics.TopMetrics: NNTop conf: dfs.namenode.top.num.users = 10
    15/09/24 05:59:20 INFO metrics.TopMetrics: NNTop conf: dfs.namenode.top.windows.minutes = 1,5,25
    15/09/24 05:59:20 INFO namenode.FSNamesystem: Retry cache on namenode is enabled
    15/09/24 05:59:20 INFO namenode.FSNamesystem: Retry cache will use 0.03 of total heap and retry cache entry expiry time is 600000 millis
    15/09/24 05:59:20 INFO util.GSet: Computing capacity for map NameNodeRetryCache
    15/09/24 05:59:20 INFO util.GSet: VM type       = 64-bit
    15/09/24 05:59:20 INFO util.GSet: 0.029999999329447746% max memory 888.9 MB = 273.1 KB
    15/09/24 05:59:20 INFO util.GSet: capacity      = 2^15 = 32768 entries
    15/09/24 05:59:20 INFO common.Storage: Lock on /app/HadoopData/dfs/name/in_use.lock acquired by nodename 24822@master
    15/09/24 05:59:20 INFO namenode.FSImage: Storage directory /app/HadoopData/dfs/name is not formatted.
    15/09/24 05:59:20 INFO namenode.FSImage: Formatting ...
    15/09/24 05:59:20 INFO common.Storage: Lock on /app/HadoopData/dfs/namesecondary/in_use.lock acquired by nodename 24822@master
    15/09/24 05:59:20 WARN namenode.FSNamesystem: !!! WARNING !!!
            The NameNode currently runs without persistent storage.
            Any changes to the file system meta-data may be lost.
            Recommended actions:
                    - shutdown and restart NameNode with configured "dfs.namenode.edits.dir.required" in hdfs-site.xml;
                    - use Backup Node as a persistent and up-to-date storage of the file system meta-data.
    15/09/24 05:59:20 INFO namenode.FileJournalManager: Recovering unfinalized segments in /app/HadoopData/dfs/namesecondary/current
    15/09/24 05:59:20 INFO namenode.FSImage: No edit log streams selected.
    15/09/24 05:59:20 INFO namenode.FSImageFormatPBINode: Loading 35 INodes.
    15/09/24 05:59:21 INFO namenode.FSImageFormatProtobuf: Loaded FSImage in 0 seconds.
    15/09/24 05:59:21 INFO namenode.FSImage: Loaded image for txid 760 from /app/HadoopData/dfs/namesecondary/current/fsimage_0000000000000000760
    15/09/24 05:59:21 WARN namenode.FSNamesystem: !!! WARNING !!!
            The NameNode currently runs without persistent storage.
            Any changes to the file system meta-data may be lost.
            Recommended actions:
                    - shutdown and restart NameNode with configured "dfs.namenode.edits.dir.required" in hdfs-site.xml;
                    - use Backup Node as a persistent and up-to-date storage of the file system meta-data.
    15/09/24 05:59:21 INFO namenode.FileJournalManager: Recovering unfinalized segments in /app/HadoopData/dfs/name/current
    15/09/24 05:59:21 INFO namenode.FSImage: Save namespace ...
    15/09/24 05:59:21 INFO namenode.FSImageTransactionalStorageInspector: No version file in /app/HadoopData/dfs/name
    15/09/24 05:59:21 INFO namenode.FSNamesystem: Need to save fs image? false (staleImage=false, haEnabled=false, isRollingUpgrade=false)
    15/09/24 05:59:21 INFO namenode.FSEditLog: Starting log segment at 761
    15/09/24 05:59:21 INFO namenode.NameCache: initialized with 0 entries 0 lookups
    15/09/24 05:59:21 INFO namenode.FSNamesystem: Finished loading FSImage in 857 msecs
    15/09/24 05:59:21 INFO namenode.NameNode: RPC server is binding to master:9000
    15/09/24 05:59:21 INFO ipc.CallQueueManager: Using callQueue class java.util.concurrent.LinkedBlockingQueue
    15/09/24 05:59:22 INFO ipc.Server: Starting Socket Reader #1 for port 9000
    15/09/24 05:59:22 INFO namenode.FSNamesystem: Registered FSNamesystemState MBean
    15/09/24 05:59:22 WARN namenode.FSNamesystem: !!! WARNING !!!
            The NameNode currently runs without persistent storage.
            Any changes to the file system meta-data may be lost.
            Recommended actions:
                    - shutdown and restart NameNode with configured "dfs.namenode.edits.dir.required" in hdfs-site.xml;
                    - use Backup Node as a persistent and up-to-date storage of the file system meta-data.
    15/09/24 05:59:22 INFO namenode.LeaseManager: Number of blocks under construction: 0
    15/09/24 05:59:22 INFO namenode.LeaseManager: Number of blocks under construction: 0
    15/09/24 05:59:22 INFO hdfs.StateChange: STATE* Safe mode ON. 
    The reported blocks 0 needs additional 20 blocks to reach the threshold 0.9990 of total blocks 20.
    The number of live datanodes 0 has reached the minimum number 0. Safe mode will be turned off automatically once the thresholds have been reached.
    15/09/24 05:59:22 INFO blockmanagement.DatanodeDescriptor: Number of failed storage changes from 0 to 0
    15/09/24 05:59:22 INFO ipc.Server: IPC Server Responder: starting
    15/09/24 05:59:22 INFO ipc.Server: IPC Server listener on 9000: starting
    15/09/24 05:59:22 INFO namenode.NameNode: NameNode RPC up at: master/10.0.52.144:9000
    15/09/24 05:59:22 INFO namenode.FSNamesystem: Starting services required for active state
    15/09/24 05:59:22 INFO blockmanagement.CacheReplicationMonitor: Starting CacheReplicationMonitor with interval 30000 milliseconds
    
    
    15/09/24 06:03:22 INFO ipc.Server: IPC Server handler 1 on 9000, call org.apache.hadoop.hdfs.protocol.ClientProtocol.mkdirs from 10.0.52.144:48599 Call#2 Retry#0: org.apache.hadoop.hdfs.server.namenode.SafeModeException: Cannot create directory /tmp/test5. Name node is in safe mode.
    The reported blocks 0 needs additional 20 blocks to reach the threshold 0.9990 of total blocks 20.
    The number of live datanodes 0 has reached the minimum number 0. Safe mode will be turned off automatically once the thresholds have been reached.

    此时namenode已经启动了,并且是安全模式

    [hbase@master root]$ jps
    24908 Jps
    24822 NameNode
    [hbase@master root]$ hadoop fs -ls /tmp
    Found 10 items
    drwxr-xr-x   - hbase supergroup          0 2015-09-11 03:12 /tmp/arch
    drwx------   - hbase supergroup          0 2015-09-10 03:32 /tmp/hadoop-yarn
    drwxr-xr-x   - hbase supergroup          0 2015-09-10 03:32 /tmp/input
    -rw-r--r--   3 hbase supergroup  153512879 2015-09-10 09:49 /tmp/jdk-7u79-linux-x64.gz
    -rw-r--r--   3 hbase supergroup  312043744 2015-09-17 06:44 /tmp/mysql-5.6.24-linux-glibc2.5-x86_64.tar.gz
    drwxr-xr-x   - hbase supergroup          0 2015-09-10 03:33 /tmp/out
    drwxr-xr-x   - hbase supergroup          0 2015-09-22 02:54 /tmp/test1
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 09:49 /tmp/test2
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 10:44 /tmp/test3
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 11:14 /tmp/test4
    [hbase@master root]$ hadoop fs -mkdir /tmp/test5
    mkdir: Cannot create directory /tmp/test5. Name node is in safe mode.

    此时name下面已经有数据
    按Ctrl+C 结束

    然后在master上重新启动集群,正常恢复

    [hbase@master sbin]$ ./start-all.sh
    This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh
    Starting namenodes on [master]
    master: starting namenode, logging to /usr/local/hadoop-2.7.1/logs/hadoop-hbase-namenode-master.out
    node1: starting datanode, logging to /usr/local/hadoop-2.7.1/logs/hadoop-hbase-datanode-node1.out
    node2: starting datanode, logging to /usr/local/hadoop-2.7.1/logs/hadoop-hbase-datanode-node2.out
    master: starting datanode, logging to /usr/local/hadoop-2.7.1/logs/hadoop-hbase-datanode-master.out
    Starting secondary namenodes [node1]
    node1: starting secondarynamenode, logging to /usr/local/hadoop-2.7.1/logs/hadoop-hbase-secondarynamenode-node1.out
    starting yarn daemons
    starting resourcemanager, logging to /usr/local/hadoop-2.7.1/logs/yarn-hbase-resourcemanager-master.out
    master: starting nodemanager, logging to /usr/local/hadoop-2.7.1/logs/yarn-hbase-nodemanager-master.out
    node1: starting nodemanager, logging to /usr/local/hadoop-2.7.1/logs/yarn-hbase-nodemanager-node1.out
    node2: starting nodemanager, logging to /usr/local/hadoop-2.7.1/logs/yarn-hbase-nodemanager-node2.out
    [hbase@master sbin]$ jps
    25188 NameNode
    25595 ResourceManager
    25711 NodeManager
    26031 Jps
    25303 DataNode

    可以正常读写

    [hbase@master sbin]$ hadoop fs -ls /tmp         
    Found 10 items
    drwxr-xr-x   - hbase supergroup          0 2015-09-11 03:12 /tmp/arch
    drwx------   - hbase supergroup          0 2015-09-10 03:32 /tmp/hadoop-yarn
    drwxr-xr-x   - hbase supergroup          0 2015-09-10 03:32 /tmp/input
    -rw-r--r--   3 hbase supergroup  153512879 2015-09-10 09:49 /tmp/jdk-7u79-linux-x64.gz
    -rw-r--r--   3 hbase supergroup  312043744 2015-09-17 06:44 /tmp/mysql-5.6.24-linux-glibc2.5-x86_64.tar.gz
    drwxr-xr-x   - hbase supergroup          0 2015-09-10 03:33 /tmp/out
    drwxr-xr-x   - hbase supergroup          0 2015-09-22 02:54 /tmp/test1
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 09:49 /tmp/test2
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 10:44 /tmp/test3
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 11:14 /tmp/test4
    [hbase@master sbin]$ hadoop fs -mkdir /tmp/test5
    [hbase@master sbin]$ hadoop fs -ls /tmp         
    Found 11 items
    drwxr-xr-x   - hbase supergroup          0 2015-09-11 03:12 /tmp/arch
    drwx------   - hbase supergroup          0 2015-09-10 03:32 /tmp/hadoop-yarn
    drwxr-xr-x   - hbase supergroup          0 2015-09-10 03:32 /tmp/input
    -rw-r--r--   3 hbase supergroup  153512879 2015-09-10 09:49 /tmp/jdk-7u79-linux-x64.gz
    -rw-r--r--   3 hbase supergroup  312043744 2015-09-17 06:44 /tmp/mysql-5.6.24-linux-glibc2.5-x86_64.tar.gz
    drwxr-xr-x   - hbase supergroup          0 2015-09-10 03:33 /tmp/out
    drwxr-xr-x   - hbase supergroup          0 2015-09-22 02:54 /tmp/test1
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 09:49 /tmp/test2
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 10:44 /tmp/test3
    drwxr-xr-x   - hbase supergroup          0 2015-09-23 11:14 /tmp/test4
    drwxr-xr-x   - hbase supergroup          0 2015-09-24 06:10 /tmp/test5

    总结

    利用secondary namenode恢复namenode有两种方案,一种是人工拷贝目录数据,一种是利用importcheckpoint

    import checkpoint。步骤如下:
    拿一台和原来机器一样的机器,包括配置和文件,一般来说最快的是拿你节点机器中的一台,立马能用(部分配置要改成NameNode的配置)
    创建一个空的文件夹,该文件夹就是配置文件中dfs.name.dir所指向的文件夹。
    拷贝你的secondary NameNode checkpoint出来的文件,到某个文件夹,该文件夹为fs.checkpoint.dir指向的文件夹
    执行命令bin/hadoop namenode -importCheckpoint
    这样NameNode会读取checkpoint文件,保存到dfs.name.dir。但是如果你的dfs.name.dir包含合法的fsimage,是会执行失败的。因为NameNode会检查fs.checkpoint.dir目录下镜像的一致性,但是不会去改动它

     利用secondary namenode恢复的数据并不是最新的,毕竟它只保存了最近一次的快照

  • 相关阅读:
    yum安装工具的理解
    Linux防火墙
    Python的优雅写法
    Python的time模块
    Python中根据提供的日期,返回是一年中的第几天
    观察者模式
    数据插入INSERT
    RSA加密、解密、签名、校验签名
    js的apply和call
    js插件编程-tab框
  • 原文地址:https://www.cnblogs.com/prayer21/p/4835272.html
Copyright © 2020-2023  润新知