복붙노트

[HADOOP] hadoop 데이터 노드를 정상적으로 시작할 수 없습니다.

HADOOP

hadoop 데이터 노드를 정상적으로 시작할 수 없습니다.

hadoop 2.2.0을 설치하려고합니다. dataenode 서비스를 시작하는 중에 다음과 같은 종류의 오류가 발생합니다.이 문제를 해결할 수 있도록 도와주세요. 미리 감사드립니다.

2014-03-11 08 : 48 : 16,406 INFO org.apache.hadoop.hdfs.server.common.Storage : nodename에 의해 획득 된 /home/prassanna/usr/local/hadoop/yarn_data/hdfs/datanode/in_use.lock에 대한 잠금 3627 @ prassanna-Studio-1558 2014-03-11 08 : 48 : 16,426 치명적 org.apache.hadoop.hdfs.server.datanode.DataNode : 블록 풀 BP-611836968-127.0.1.1-1394507838610 (저장소 ID DS-1960076343-127.0)에 대한 초기화가 실패했습니다. 1.1-50010-1394127604582) localhost에 대한 서비스 / 127.0.0.1 : 9000 java.io.IOException : / home / prassanna / usr / local / hadoop / yarn_data / hdfs / datanode의 호환되지 않는 clusterIDs : namenode clusterID = CID-fb61aa70-4b15-470e-a1d0-12653e357a10; 데이터 노드 clusterID = CID-8bf63244-0510-4db6-a949-8f74b50f2be9     DataStorage.java:391).     org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead (DataStorage.java:191)     org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead (DataStorage.java:219)에서     org.apache.hadoop.hdfs.server.datanode.DataNode.initStorage (DataNode.java:837)     org.apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool (DataNode.java:808)     org.apache.hadoop.hdfs.server.datanode.BPOfferService.verifyAndSetNamespaceInfo (BPOfferService.java:280)에서     BPServiceActor.java:222).     BPServiceActor.java : 664).     java.lang.Thread.run (Thread.java:662) 2014-03-11 08 : 48 : 16,427 WARN org.apache.hadoop.hdfs.server.datanode.DataNode : 블로킹 풀 BP-611836968-127.0.1.1-1394507838610 (저장소 ID DS-1960076343-127.0) .1.1-50010-1394127604582) localhost에 대한 서비스 / 127.0.0.1 : 9000 2014-03-11 08 : 48 : 16,532 INFO org.apache.hadoop.hdfs.server.datanode.DataNode : 제거 된 블록 풀 BP-611836968-127.0.1.1-1394507838610 (저장소 ID DS-1960076343-127.0.1.1-50010- 1394127604582) 2014-03-11 08 : 48 : 18,532 WARN org.apache.hadoop.hdfs.server.datanode.DataNode : 종료 데이터 노드 2014-03-11 08 : 48 : 18,534 INFO org.apache.hadoop.util.ExitUtil : 상태 0으로 종료 2014-03-11 08 : 48 : 18,536 INFO org.apache.hadoop.hdfs.server.datanode.DataNode : SHUTDOWN_MSG : / *********************************** SHUTDOWN_MSG : prassanna-Studio-1558 / 127.0.1.1에서 DataNode 종료

해결법

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

    1.간단히 말해서 데이터 노드가 시작하려고 시도했지만 예외가 있었고 사망했습니다.

    간단히 말해서 데이터 노드가 시작하려고 시도했지만 예외가 있었고 사망했습니다.

    hadoop 설치 폴더의 logs 폴더 아래에있는 datanode 로그를 확인하십시오 (해당 구성을 변경하지 않은 경우). 일반적으로 어떤 종류의 구성 문제, 특히 esp를 가리 킵니다. 네트워크 설정 (/ etc / hosts)과 관련이 있지만 꽤 많은 가능성이 있습니다.

  2. ==============================

    2.올바른 구성과 올바른 경로로 준비되었는지 확인하십시오. 이것은 우분투에서 Hadoop을 실행하기위한 링크입니다.

    올바른 구성과 올바른 경로로 준비되었는지 확인하십시오. 이것은 우분투에서 Hadoop을 실행하기위한 링크입니다.

    내 시스템에 hadoop을 설치하기 위해이 링크를 사용했으며 정상적으로 작동합니다.

  3. ==============================

    3.이것을 참조하십시오,

    이것을 참조하십시오,

    1.Check JAVA_HOME ---

        readlink -f $(which java) 
        /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 
    

    2.JAVA를 사용할 수없는 경우 명령에 의한 설치

        sudo apt-get install defalul-jdk 
    

    1.를 실행하고 터미널을 확인하십시오.

        java -version 
        javac -version 
    

    3.SSH 구성

    Hadoop을 사용하려면 Hadoop에 노드 (즉, 원격 시스템과 로컬 시스템)를 관리해야합니다 (이 간단한 튜토리얼에서 수행하고자하는 작업). Hadoop의 단일 노드 설정을 위해서는 사용자의 로컬 호스트에 대한 SSH 액세스를 구성해야합니다.

        sudo apt-get install ssh
        sudo su hadoop
        ssh-keygen -t rsa -P “”
        cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
        ssh localhost
    

    hadoop-2.7.3 다운로드 및 추출 (읽기 쓰기 권한이있는 디렉토리 선택)

    환경 변수 설정

        sudo gedit .bashrc
        source .bashrc
    

    설치 구성 파일

    Hadoop 설정을 완료하려면 다음 파일을 수정해야합니다.

    ~/.bashrc   (Already done)
    (PATH)/etc/hadoop/hadoop-env.sh 
    (PATH)/etc/hadoop/core-site.xml 
    (PATH)/etc/hadoop/mapred-site.xml.template 
    (PATH)/etc/hadoop/hdfs-site.xm
    
    gedit (PATH)/etc/hadoop/hadoop-env.sh
    
    export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
    
    gedit (PATH)/etc/hadoop/core-site.xml: 
    

    (HOME) /etc/hadoop/core-site.xml 파일에는 Hadoop이 시작할 때 사용하는 구성 등록 정보가 들어 있습니다. 이 파일은 Hadoop이 시작하는 기본 설정을 재정의하는 데 사용할 수 있습니다.

        ($ sudo mkdir -p /app/hadoop/tmp)
    

    파일을 열고 태그 사이에 다음을 입력하십시오.

    gedit /usr/local/hadoop/etc/hadoop/core-site.xml 
    <configuration> 
     <property> 
      <name>hadoop.tmp.dir</name> 
      <value>/app/hadoop/tmp</value> 
      <description>A base for other temporary directories.</description> 
     </property> 
    
     <property> 
      <name>fs.default.name</name> 
      <value>hdfs://localhost:54310</value> 
      <description>The name of the default file system.  A URI whose 
      scheme and authority determine the FileSystem implementation.  The 
      uri's scheme determines the config property (fs.SCHEME.impl) naming 
      the FileSystem implementation class.  The uri's authority is used to 
      determine the host, port, etc. for a filesystem.</description> 
     </property> 
    </configuration>
    
    
    (PATH)/etc/hadoop/mapred-site.xml 
    

    기본적으로 (PATH) / etc / hadoop / 폴더에는 /etc/hadoop/mapred-site.xml.template 파일이 들어 있습니다.이 파일은 mapred-site.xml이라는 이름으로 바꾸거나 복사해야합니다.

    cp /usr/local/hadoop/etc/hadoop/mapred-site.xml.template /usr/local/hadoop/etc/hadoop/mapred-site.xml 
    

    mapred-site.xml 파일은 MapReduce에 사용되는 프레임 워크를 지정하는 데 사용됩니다.

    태그 사이에 다음 내용을 입력해야합니다.

        <configuration> 
         <property> 
          <name>mapred.job.tracker</name> 
          <value>localhost:54311</value> 
          <description>The host and port that the MapReduce job tracker runs 
          at.  If "local", then jobs are run in-process as a single map 
          and reduce task. 
          </description> 
         </property> 
        </configuration>
    
    (PATH)/etc/hadoop/hdfs-site.xml 
    

    (PATH) /etc/hadoop/hdfs-site.xml 파일은 사용중인 클러스터의 각 호스트에 대해 구성해야합니다.

    해당 호스트의 namenode 및 datanode로 사용될 디렉토리를 지정하는 데 사용됩니다.

    이 파일을 편집하기 전에이 Hadoop 설치를위한 namenode와 datanode를 포함 할 두 개의 디렉토리를 만들어야합니다. 이것은 다음 명령을 사용하여 수행 할 수 있습니다.

    sudo mkdir -p /usr/local/hadoop_store/hdfs/namenode 
    sudo mkdir -p /usr/local/hadoop_store/hdfs/datanode 
    

    파일을 열고 태그 사이에 다음 내용을 입력하십시오.

        gedit (PATH)/etc/hadoop/hdfs-site.xml 
    
        <configuration> 
         <property> 
          <name>dfs.replication</name> 
          <value>1</value> 
          <description>Default block replication. 
          The actual number of replications can be specified when the file is created. 
          The default is used if replication is not specified in create time. 
          </description> 
         </property> 
         <property> 
           <name>dfs.namenode.name.dir</name> 
           <value>file:/usr/local/hadoop_store/hdfs/namenode</value> 
         </property> 
         <property> 
           <name>dfs.datanode.data.dir</name> 
           <value>file:/usr/local/hadoop_store/hdfs/datanode</value> 
         </property> 
        </configuration> 
    

    새로운 Hadoop 파일 시스템 포맷하기

    이제 Hadoop 파일 시스템을 사용하여 시작할 수 있어야합니다. format 명령은 / usr / local / hadoop_store / folder 아래에 현재 디렉토리를 작성하기 때문에 쓰기 권한으로 실행해야합니다.

        bin/hadoop namenode -format 
    

    또는

        bin/hdfs namenode -format
    

    HADOOP 설치가 완료되었습니다.

    이제 hdfs를 시작하십시오.

    start-dfs.sh
    start-yarn.sh
    

    CHECK URL : http : // localhost : 50070 /

    HDFS를 멈추는 방법

    stop-dfs.sh
    stop-yarn.sh
    
  4. from https://stackoverflow.com/questions/22240488/couldnt-start-hadoop-datanode-normally by cc-by-sa and MIT license