복붙노트

[HADOOP] namenode, datanode는 jps를 사용하여 목록에 없습니다.

HADOOP

namenode, datanode는 jps를 사용하여 목록에 없습니다.

환경 : 우분투 14.04, hadoop 2.6

start-all.sh 및 jps를 입력하면 DataNode가 터미널에 나열되지 않습니다.

>jps
9529 ResourceManager
9652 NodeManager
9060 NameNode
10108 Jps
9384 SecondaryNameNode

이 답변에 따르면 : Hadoop에서 실행되지 않는 데이터 노드 프로세스

나는 최선의 해결책을 시도한다.

그러나, 지금 나는 이것을 얻는다 :

>jps
20369 ResourceManager
26032 Jps
20204 SecondaryNameNode
20710 NodeManager

보시다시피 NameNode가 없어도 도와주세요.

DataNode 로그 : https://gist.github.com/fifiteen82726/b561bbd9cdcb9bf36032

NmaeNode 로그 : https://gist.github.com/fifiteen82726/02dcf095b5a23c1570b0

mapred-site.xml :

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!--
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License. See accompanying LICENSE file.
-->

<!-- Put site-specific property overrides in this file. -->

<configuration>
<property>
<name>mapreduce.framework.name</name>
 <value>yarn</value>
</property>

</configuration>
coda@ubuntu:/usr/local/hadoop/sbin$ start-all.sh
This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh
15/04/30 01:07:25 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Starting namenodes on [localhost]
coda@localhost's password: 
localhost: chown: changing ownership of ‘/usr/local/hadoop/logs’: Operation not permitted
localhost: mv: cannot move ‘/usr/local/hadoop/logs/hadoop-coda-namenode-ubuntu.out.4’ to ‘/usr/local/hadoop/logs/hadoop-coda-namenode-ubuntu.out.5’: Permission denied
localhost: mv: cannot move ‘/usr/local/hadoop/logs/hadoop-coda-namenode-ubuntu.out.3’ to ‘/usr/local/hadoop/logs/hadoop-coda-namenode-ubuntu.out.4’: Permission denied
localhost: mv: cannot move ‘/usr/local/hadoop/logs/hadoop-coda-namenode-ubuntu.out.2’ to ‘/usr/local/hadoop/logs/hadoop-coda-namenode-ubuntu.out.3’: Permission denied
localhost: mv: cannot move ‘/usr/local/hadoop/logs/hadoop-coda-namenode-ubuntu.out.1’ to ‘/usr/local/hadoop/logs/hadoop-coda-namenode-ubuntu.out.2’: Permission denied
localhost: mv: cannot move ‘/usr/local/hadoop/logs/hadoop-coda-namenode-ubuntu.out’ to ‘/usr/local/hadoop/logs/hadoop-coda-namenode-ubuntu.out.1’: Permission denied
localhost: starting namenode, logging to /usr/local/hadoop/logs/hadoop-coda-namenode-ubuntu.out
localhost: /usr/local/hadoop/sbin/hadoop-daemon.sh: line 159: /usr/local/hadoop/logs/hadoop-coda-namenode-ubuntu.out: Permission denied
localhost: ulimit -a for user coda
localhost: core file size          (blocks, -c) 0
localhost: data seg size           (kbytes, -d) unlimited
localhost: scheduling priority             (-e) 0
localhost: file size               (blocks, -f) unlimited
localhost: pending signals                 (-i) 3877
localhost: max locked memory       (kbytes, -l) 64
localhost: max memory size         (kbytes, -m) unlimited
localhost: open files                      (-n) 1024
localhost: pipe size            (512 bytes, -p) 8
localhost: /usr/local/hadoop/sbin/hadoop-daemon.sh: line 177: /usr/local/hadoop/logs/hadoop-coda-namenode-ubuntu.out: Permission denied
localhost: /usr/local/hadoop/sbin/hadoop-daemon.sh: line 178: /usr/local/hadoop/logs/hadoop-coda-namenode-ubuntu.out: Permission denied
coda@localhost's password: 
localhost: chown: changing ownership of ‘/usr/local/hadoop/logs’: Operation not permitted
localhost: mv: cannot move ‘/usr/local/hadoop/logs/hadoop-coda-datanode-ubuntu.out.4’ to ‘/usr/local/hadoop/logs/hadoop-coda-datanode-ubuntu.out.5’: Permission denied
localhost: mv: cannot move ‘/usr/local/hadoop/logs/hadoop-coda-datanode-ubuntu.out.3’ to ‘/usr/local/hadoop/logs/hadoop-coda-datanode-ubuntu.out.4’: Permission denied
localhost: mv: cannot move ‘/usr/local/hadoop/logs/hadoop-coda-datanode-ubuntu.out.2’ to ‘/usr/local/hadoop/logs/hadoop-coda-datanode-ubuntu.out.3’: Permission denied
localhost: mv: cannot move ‘/usr/local/hadoop/logs/hadoop-coda-datanode-ubuntu.out.1’ to ‘/usr/local/hadoop/logs/hadoop-coda-datanode-ubuntu.out.2’: Permission denied
localhost: mv: cannot move ‘/usr/local/hadoop/logs/hadoop-coda-datanode-ubuntu.out’ to ‘/usr/local/hadoop/logs/hadoop-coda-datanode-ubuntu.out.1’: Permission denied
localhost: starting datanode, logging to /usr/local/hadoop/logs/hadoop-coda-datanode-ubuntu.out
localhost: /usr/local/hadoop/sbin/hadoop-daemon.sh: line 159: /usr/local/hadoop/logs/hadoop-coda-datanode-ubuntu.out: Permission denied
localhost: ulimit -a for user coda
localhost: core file size          (blocks, -c) 0
localhost: data seg size           (kbytes, -d) unlimited
localhost: scheduling priority             (-e) 0
localhost: file size               (blocks, -f) unlimited
localhost: pending signals                 (-i) 3877
localhost: max locked memory       (kbytes, -l) 64
localhost: max memory size         (kbytes, -m) unlimited
localhost: open files                      (-n) 1024
localhost: pipe size            (512 bytes, -p) 8
localhost: /usr/local/hadoop/sbin/hadoop-daemon.sh: line 177: /usr/local/hadoop/logs/hadoop-coda-datanode-ubuntu.out: Permission denied
localhost: /usr/local/hadoop/sbin/hadoop-daemon.sh: line 178: /usr/local/hadoop/logs/hadoop-coda-datanode-ubuntu.out: Permission denied
Starting secondary namenodes [0.0.0.0]
coda@0.0.0.0's password: 
0.0.0.0: chown: changing ownership of ‘/usr/local/hadoop/logs’: Operation not permitted
0.0.0.0: secondarynamenode running as process 20204. Stop it first.
15/04/30 01:07:51 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
starting yarn daemons
chown: changing ownership of ‘/usr/local/hadoop/logs’: Operation not permitted
resourcemanager running as process 20369. Stop it first.
coda@localhost's password: 
localhost: chown: changing ownership of ‘/usr/local/hadoop/logs’: Operation not permitted
localhost: nodemanager running as process 20710. Stop it first.
coda@ubuntu:/usr/local/hadoop/sbin$ jps
20369 ResourceManager
2934 Jps
20204 SecondaryNameNode
20710 NodeManager
hadoop@ubuntu:/usr/local/hadoop/sbin$ $HADOOP_HOME ./start-all.sh
This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh
15/05/03 09:32:23 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Starting namenodes on [localhost]
hadoop@localhost's password: 
localhost: starting namenode, logging to /usr/local/hadoop/logs/hadoop-hadoop-namenode-ubuntu.out
hadoop@localhost's password: 
localhost: datanode running as process 28584. Stop it first.
Starting secondary namenodes [0.0.0.0]
hadoop@0.0.0.0's password: 
0.0.0.0: starting secondarynamenode, logging to /usr/local/hadoop/logs/hadoop-hadoop-secondarynamenode-ubuntu.out
15/05/03 09:32:47 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
starting yarn daemons
starting resourcemanager, logging to /usr/local/hadoop/logs/yarn-hadoop-resourcemanager-ubuntu.out
hadoop@localhost's password: 
localhost: starting nodemanager, logging to /usr/local/hadoop/logs/yarn-hadoop-nodemanager-ubuntu.out
hadoop@ubuntu:/usr/local/hadoop/sbin$ jps
6842 Jps
28584 DataNode

해결법

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

    1.이 오류는 / usr / local / hadoop_store / hdfs / datanode / 폴더에 대한 잘못된 권한으로 인한 것일 수 있습니다.

    이 오류는 / usr / local / hadoop_store / hdfs / datanode / 폴더에 대한 잘못된 권한으로 인한 것일 수 있습니다.

    이 오류는 / usr / local / hadoop_store / hdfs / namenode 폴더에 대한 잘못된 사용 권한 때문이거나 존재하지 않습니다. 이 문제를 해결하려면 다음 옵션을 따르십시오.

    옵션 I :

    / usr / local / hadoop_store / hdfs 폴더가 없으면 다음과 같이 폴더를 만들고 권한을 부여하십시오.

    sudo mkdir /usr/local/hadoop_store/hdfs
    sudo chown -R hadoopuser:hadoopgroup /usr/local/hadoop_store/hdfs
    sudo chmod -R 755 /usr/local/hadoop_store/hdfs
    

    hadoop 사용자 이름과 hadoop 그룹 이름으로 hadoopuser와 hadoopgroup을 각각 변경하십시오. 이제, hadoop 프로세스를 시작하십시오. 문제가 지속되면 옵션 2를 시도하십시오.

    옵션 II :

    / usr / local / hadoop_store / hdfs 폴더의 내용을 제거하십시오 :

    sudo rm -r /usr/local/hadoop_store/hdfs/*
    

    폴더 변경 권한 :

    sudo chmod -R 755 /usr/local/hadoop_store/hdfs
    

    이제, hadoop 프로세스를 시작하십시오. 그것은 작동해야합니다.

    최신 정보:

    hadoop 사용자 및 그룹을 만들지 않은 경우 다음과 같이하십시오.

    sudo addgroup hadoop
    sudo adduser --ingroup hadoop hadoop
    

    이제 / usr / local / hadoop과 / usr / local / hadoop_store의 소유권을 변경하십시오 :

    sudo chown -R hadoop:hadoop /usr/local/hadoop
    sudo chown -R hadoop:hadoop /usr/local/hadoop_store
    

    사용자를 hadoop으로 변경하십시오.

    su - hadoop
    

    hadoop 사용자 비밀번호를 입력하십시오. 이제 터미널은 다음과 같아야합니다.

    hadoop @ 우분투 : $

    이제 다음을 입력하십시오.

    $ HADOOP_HOME / bin / start-all.sh

    또는

    sh /usr/local/hadoop/bin/start-all.sh

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

    2.비슷한 문제가 발생하여 jps가 데이터 노드를 표시하지 못했습니다.

    비슷한 문제가 발생하여 jps가 데이터 노드를 표시하지 못했습니다.

    hdfs 폴더의 내용을 제거하고 폴더 권한을 변경하는 것은 저에게 효과적이었습니다.

    sudo rm -r /usr/local/hadoop_store/hdfs/*
    sudo chmod -R 755 /usr/local/hadoop_store/hdfs    
    hadoop namenode =format
    start-all.sh
    jps
    
  3. ==============================

    3.권한 설정시 기억해야 할 한 가지 : ---- ssh-keygen -t rsa -P "" 위의 명령은 namenode에서만 입력해야합니다. 생성 된 공개 키를 모든 데이터 노드에 추가해야한다 ssh-copy-id -i ~ / .ssh / id_rsa.pub 그런 다음 명령을 누릅니다. SSH 허가가 설정됩니다 ...... 그 후에는 dfs를 시작할 때 암호가 필요하지 않습니다.

    권한 설정시 기억해야 할 한 가지 : ---- ssh-keygen -t rsa -P "" 위의 명령은 namenode에서만 입력해야합니다. 생성 된 공개 키를 모든 데이터 노드에 추가해야한다 ssh-copy-id -i ~ / .ssh / id_rsa.pub 그런 다음 명령을 누릅니다. SSH 허가가 설정됩니다 ...... 그 후에는 dfs를 시작할 때 암호가 필요하지 않습니다.

  4. ==============================

    4.직면 한 동일한 문제 : 네임 노드 서비스가 Jps 명령에 표시되지 않음 해결책 : / usr / local / hadoop_store / hdfs 디렉토리의 사용권 문제로 인한 것입니다. 권한을 변경하고 namenode를 포맷하고 hadoop을 재시작하십시오.

    직면 한 동일한 문제 : 네임 노드 서비스가 Jps 명령에 표시되지 않음 해결책 : / usr / local / hadoop_store / hdfs 디렉토리의 사용권 문제로 인한 것입니다. 권한을 변경하고 namenode를 포맷하고 hadoop을 재시작하십시오.

    $ sudo chmod -R 755 / usr / local / hadoop_store / hdfs

    $ hadoop ford-format

    $ start-all.sh

    $ jps

  5. ==============================

    5.해결책은 먼저 namenode를 사용하여 / usr / local / hadoop으로 가라.

    해결책은 먼저 namenode를 사용하여 / usr / local / hadoop으로 가라.

    bin / hdfs ford-format

    집에서 hdfs 및 tmp 디렉토리를 삭제하십시오.

    mkdir ~/tmp
    mkdir ~/hdfs
    chmod 750 ~/hdfs
    

    hadoop 디렉토리로 가서 hadoop을 시작한다.

    `sbin/start-dfs.sh`
    

    데이터 노드가 표시됩니다.

  6. from https://stackoverflow.com/questions/29910805/namenode-datanode-not-list-by-using-jps by cc-by-sa and MIT license