복붙노트

[HADOOP] Hadoop namenode는 모든 컴퓨터가 시작된 후에 포맷되어야합니다.

HADOOP

Hadoop namenode는 모든 컴퓨터가 시작된 후에 포맷되어야합니다.

나는이 문제를 찾았고 많은 유사한 예제가 있지만 일반적인 솔루션이나 저에게 적합한 솔루션을 찾을 수 없습니다. Hadoop을 설치했고 가상 분산 모드로 실행 중입니다. 그것은 잘 작동하고, 나는 그것을 여러 번 시작하고 멈출 수 있고 잘 달릴 수있다. 그러나 컴퓨터를 다시 시작하고 Hadoop을 시작하면 namenode가 시작되지 않습니다. 나는 그것을 매번 포맷팅해야하는데, 이것은 내가했던 모든 작업을 잃고 다시 시작해야한다는 것을 의미합니다.

나는 Hadoop을 따라 가고있다 : The Definitive Guide v3.

내 core-site.xml은 말합니다 :

<configuration>
    <property>
        <name>fs.default.name</name>
        <value>hdfs://localhost/</value>
    </property>
</configuration>

내 hdfs-site.xml 메시지 :

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>

컴퓨터를 다시 시작할 때마다 namenode를 다시 포맷 할 필요가 없도록 Hadoop을 구성하는 방법이 있습니까?

감사.

해결법

  1. ==============================

    1.dfs.name.dir, dfs.data.dir과 같은 hdfs 설정을 무시하지 않는 것 같습니다. 기본적으로 / tmp 디렉토리를 가리키며, 이는 컴퓨터가 재시작 될 때 지워질 것입니다. 이 값을 / tmp에서 HADOOP 구성 디렉토리에있는 hdfs-site.xml 파일에서이 값을 대체하여 홈 디렉토리의 다른 위치로 변경해야합니다.

    dfs.name.dir, dfs.data.dir과 같은 hdfs 설정을 무시하지 않는 것 같습니다. 기본적으로 / tmp 디렉토리를 가리키며, 이는 컴퓨터가 재시작 될 때 지워질 것입니다. 이 값을 / tmp에서 HADOOP 구성 디렉토리에있는 hdfs-site.xml 파일에서이 값을 대체하여 홈 디렉토리의 다른 위치로 변경해야합니다.

    다음 단계를 수행하십시오.

    namenode 이미지 및 데이터 노드 블록을 유지하기 위해 홈 디렉토리에 디렉토리를 만듭니다 (로그인 이름으로 바꾸기).

    mkdir /home/<USER>/pseudo/
    

    HADOOP_CONF_DIR (hadoop 구성 디렉토리)에서 hdfs-site.xml 파일을 다음과 같이 수정하십시오

    <?xml version="1.0"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    <configuration>
    <property>
      <name>dfs.name.dir</name>
      <value>file:///home/<USER>/pseudo/dfs/name</value>
    </property>
    <property>
      <name>dfs.data.dir</name>
      <value>file:///home/<USER>/pseudo/dfs/data</value>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    
    </configuration>
    

    hdfs namenode를 포맷하고 사용하기 시작하십시오.

  2. from https://stackoverflow.com/questions/27083114/hadoop-namenode-needs-to-be-formatted-after-every-computer-start by cc-by-sa and MIT license