Datanode no se inicia correctamente


Estoy intentando instalar Hadoop 2.2.0 en modo pseudo-distribuido. Mientras intento iniciar los servicios de datanode, muestra el siguiente error, ¿puede alguien decirme cómo resolver esto?

**2**014-03-11 08:48:15,916 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: Block pool <registering> (storage id unknown) service to localhost/127.0.0.1:9000 starting to offer service
2014-03-11 08:48:15,922 INFO org.apache.hadoop.ipc.Server: IPC Server Responder: starting
2014-03-11 08:48:15,922 INFO org.apache.hadoop.ipc.Server: IPC Server listener on 50020: starting
2014-03-11 08:48:16,406 INFO org.apache.hadoop.hdfs.server.common.Storage: Lock on /home/prassanna/usr/local/hadoop/yarn_data/hdfs/datanode/in_use.lock acquired by nodename 3627@prassanna-Studio-1558
2014-03-11 08:48:16,426 FATAL org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for block pool Block pool BP-611836968-127.0.1.1-1394507838610 (storage id DS-1960076343-127.0.1.1-50010-1394127604582) service to localhost/127.0.0.1:9000
java.io.IOException: Incompatible clusterIDs in /home/prassanna/usr/local/hadoop/yarn_data/hdfs/datanode: namenode clusterID = CID-fb61aa70-4b15-470e-a1d0-12653e357a10; datanode clusterID = CID-8bf63244-0510-4db6-a949-8f74b50f2be9
    at**** org.apache.hadoop.hdfs.server.datanode.DataStorage.doTransition(DataStorage.java:391)
    at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:191)
    at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:219)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.initStorage(DataNode.java:837)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool(DataNode.java:808)
    at org.apache.hadoop.hdfs.server.datanode.BPOfferService.verifyAndSetNamespaceInfo(BPOfferService.java:280)
    at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.connectToNNAndHandshake(BPServiceActor.java:222)
    at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.run(BPServiceActor.java:664)
    at java.lang.Thread.run(Thread.java:662)
2014-03-11 08:48:16,427 WARN org.apache.hadoop.hdfs.server.datanode.DataNode: Ending block pool service for: Block pool BP-611836968-127.0.1.1-1394507838610 (storage id DS-1960076343-127.0.1.1-50010-1394127604582) service to localhost/127.0.0.1:9000
2014-03-11 08:48:16,532 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: Removed Block pool BP-611836968-127.0.1.1-1394507838610 (storage id DS-1960076343-127.0.1.1-50010-1394127604582)
2014-03-11 08:48:18,532 WARN org.apache.hadoop.hdfs.server.datanode.DataNode: Exiting Datanode
2014-03-11 08:48:18,534 INFO org.apache.hadoop.util.ExitUtil: Exiting with status 0
2014-03-11 08:48:18,536 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: SHUTDOWN_MSG: 
Author: Brian, 2014-03-11

9 answers

Puede hacer el siguiente método,

Copie al portapapeles datanode ClusterId para su ejemplo, CID-8bf63244-0510-4db6-a949-8f74b50f2be9

Y ejecute el siguiente comando en el directorio HADOOP_HOME/bin

./hdfs namenode -format -clusterId CID-8bf63244-0510-4db6-a949-8f74b50f2be9

Entonces este código formateó el namenode con id de clúster de datanode.

 60
Author: iceberg,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-01-10 04:31:12

Debes hacer lo siguiente:

  • bin/stop-all.sh
  • rm -Rf /home/prassanna/usr/local/hadoop/yarn_data/hdfs/*
  • bin/hadoop namenode -format

Tuve el mismo problema hasta que encontré una respuesta en este sitio web .

 18
Author: Mouna,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-04-22 13:53:43

Cada vez que se obtiene un error por debajo, tratando de iniciar un DN en una máquina esclava:

java.io.IOException: Incompatible clusterIDs in /home/hadoop/dfs/data: namenode clusterID= ****; datanode clusterID = ****

Es porque después de configurar su clúster, usted, por cualquier razón, decidió reformatear tu NN. Sus DNs en los esclavos todavía llevan referencia al antiguo NN.

Para resolver esto, simplemente elimine y vuelva a crear la carpeta de datos en esa máquina en Linux FS local, a saber, /home/hadoop/dfs/data.

Reiniciar el demonio de ese DN en esa máquina recreará el contenido de data / folder y resolverá el problema.

 15
Author: eliasah,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-06-24 10:01:18

Siga los sencillos pasos

  • Borrar el directorio de datos de hadoop
  • Vuelva a formatear el namenode
  • iniciar el clúster

Después de esto, su clúster se iniciará normalmente si no tiene ningún otro problema de configuración

 10
Author: Vikas Hardia,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-03-12 07:45:14

DataNode muere debido a Clusterids incompatibles en comparación con el NameNode. Para solucionar este problema es necesario eliminar el directorio /tmp/hadoop-[user]/hdfs/data y reiniciar hadoop.

rm -r /tmp/hadoop-[user]/hdfs/data
 6
Author: sofiene zaghdoudi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-12-19 15:56:19

Tengo un problema similar en mi entorno pseudo distribuido. Detuve el clúster primero, luego copié el ID del clúster del archivo de versión de NameNode y lo puse en el archivo de versión de DataNode, luego después de reiniciar el clúster, todo está bien.

Mi ruta de datos está aquí /usr/local/hadoop/hadoop_store/hdfs/datanode y /usr/local/hadoop/hadoop_store/hdfs/namenode.

Para su información : el archivo de versión está bajo /usr/local/hadoop/hadoop_store/hdfs/datanode/current/ ; lo mismo para NameNode.

 5
Author: S N,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-11-28 11:30:52

Aquí, el datanode se detiene inmediatamente porque el ClusterId de datanode y namenode son diferentes. Así que tienes que formatear el ClusterId de namenode con ClusterId de datanode

Copie el datanode ClusterId para su ejemplo, CID-8bf63244-0510-4db6-a949-8f74b50f2be9 y ejecute el siguiente comando desde su directorio personal. Puede ir a su directorio de inicio simplemente escribiendo cd en su terminal.

Desde su directorio de inicio ahora escriba el comando:

hdfs namenode -format -clusterId CID-8bf63244-0510-4db6-a949-8f74b50f2be9
 4
Author: Neil,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-12-19 17:14:07

Elimine los directorios namenode y datanode como se especifica en el core-site.XML. Después de eso crear los nuevos directorios y reiniciar el dfs y yarn.

 1
Author: KayV,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-04 12:12:36

También tuve el problema similar. Eliminé las carpetas namenode y datanode de todos los nodos, y volví a ejecutar:

$HADOOP_HOME/bin> hdfs namenode -format -force
$HADOOP_HOME/sbin> ./start-dfs.sh
$HADOOP_HOME/sbin> ./start-yarn.sh

Para comprobar el informe de estado desde la línea de comandos (lo cual recomendaría)

$HADOOP_HOME/bin> hdfs dfsadmin -report

Y tengo todos los nodos funcionando correctamente.

 1
Author: Raxit Solanki,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-11-15 21:20:36