hadoop: datanode não está em execução?

5

Eu configurei e implantei o hadoop para configuração de nó único por meio de este tutorial .

Tudo foi implantado corretamente, mas quando eu faço jps para dar uma olhada nos processos ativos, o datanode não é mostrado.

Eu manualmente tentei iniciar o datanode indo para $HADOOP_HOME/bin : hadoop -datanode , mas sem sucesso.

Basicamente para resumir, o processo datanode não está sendo executado para o cluster hadoop.

Além disso, quero saber se uma única máquina pode ter 2 instalações de hadoop. Eu estou usando um para processos de mapreduce e outro para o motor de busca. ? então o diretório deles sendo diferente, tudo bem? Além disso, eu corro uma única operação de hadoop por vez.

EDIT 1 #: - Se isso ajudar, aqui está o log quando eu tentei executar o datanode via $HADOOP_HOME .

root@thinktank:/usr/local/hadoop/bin# hadoop datanode
Warning: $HADOOP_HOME is deprecated.

13/08/27 16:34:57 INFO datanode.DataNode: STARTUP_MSG: 
/************************************************************
STARTUP_MSG: Starting DataNode
STARTUP_MSG:   host = thinktank/127.0.1.1
STARTUP_MSG:   args = []
STARTUP_MSG:   version = 1.2.1
STARTUP_MSG:   build = https://svn.apache.org/repos/asf/hadoop/common/branches/branch-1.2 -r 1503152; compiled by 'mattf' on Mon Jul 22 15:23:09 PDT 2013  
STARTUP_MSG:   java = 1.6.0_27  
************************************************************/  
13/08/27 16:34:57 INFO impl.MetricsConfig: loaded properties from hadoop-metrics2.properties  
13/08/27 16:34:57 INFO impl.MetricsSourceAdapter: MBean for source   MetricsSystem,sub=Stats registered.  
13/08/27 16:34:57 INFO impl.MetricsSystemImpl: Scheduled snapshot period at 10 second(s).  
13/08/27 16:34:57 INFO impl.MetricsSystemImpl: DataNode metrics system started  
13/08/27 16:34:57 INFO impl.MetricsSourceAdapter: MBean for source ugi registered.  
13/08/27 16:34:57 WARN impl.MetricsSystemImpl: Source name ugi already exists!  
13/08/27 16:34:57 ERROR datanode.DataNode: java.io.IOException: Incompatible namespaceIDs in /app/hadoop/tmp/dfs/data: namenode namespaceID = 1955988395; datanode namespaceID =   1705269445
    at org.apache.hadoop.hdfs.server.datanode.DataStorage.doTransition(DataStorage.java:232)
    at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:147)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.startDataNode(DataNode.java:414)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.<init>(DataNode.java:321)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.makeInstance(DataNode.java:1712)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.instantiateDataNode(DataNode.java:1651)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.createDataNode(DataNode.java:1669)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.secureMain(DataNode.java:1795)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.main(DataNode.java:1812)

13/08/27 16:34:57 INFO datanode.DataNode: SHUTDOWN_MSG: 
/************************************************************
SHUTDOWN_MSG: Shutting down DataNode at thinktank/127.0.1.1
************************************************************/
    
por ASCIIbetical 27.08.2013 / 11:39

2 respostas

2

Ok, eu acho a solução alternativa. Parece que eu estava com o erro: NamespaceIDs incompatíveis. Eu encontrei um trabalho em torno aqui . Tão bem que finalmente foi resolvido.

Se você também está tendo o mesmo problema para Incompatible namespaceIDs, tente o seguinte, funcionou como um encanto para mim. Deixe comentários se você ainda tiver problemas e eu entrarei em contato com você.

Solução:
1. Pare o (s) DataNode (s) problemático (s).
2. Edite o valor de namespaceID em $ {dfs.data.dir} / current / VERSION para corresponder ao valor correspondente do NameNode atual em $ {dfs.name.dir} / current / VERSION.
3. Reinicie o (s) DataNode (s) fixo (s). Isso resolverá o problema para você.

    
por ASCIIbetical 27.08.2013 / 19:52
2
  1. O DataNode tenta iniciar, mas é encerrado. Pode ser verificado por hadoop datanode -start .
  2. O problema é devido ao Incompatible namespaceID.So, remova o diretório tmp usando comandos

    sudo rm -Rf  /app/hadoop/tmp
    
  3. Siga as etapas de:

    sudo mkdir -p /app/hadoop/tmp    
    

    link

por user286123 28.05.2014 / 15:14

Tags