2014-05-18 12 views
9

Viene visualizzato questo errore quando si tenta di avviare un DataNode. Da quello che ho letto, i paramter RPC sono usati solo per una configurazione HA, che non sto configurando (credo).Configurazione errata: indirizzo namenode dfs.namenode.rpc-indirizzo non configurato

2014-05-18 18:05:00,589 INFO [main] impl.MetricsSystemImpl (MetricsSystemImpl.java:shutdown(572)) - DataNode metrics system shutdown complete. 
2014-05-18 18:05:00,589 INFO [main] datanode.DataNode (DataNode.java:shutdown(1313)) -  Shutdown complete. 
2014-05-18 18:05:00,614 FATAL [main] datanode.DataNode (DataNode.java:secureMain(1989)) - Exception in secureMain 
java.io.IOException: Incorrect configuration: namenode address dfs.namenode.servicerpc-address or dfs.namenode.rpc-address is not configured. 
at org.apache.hadoop.hdfs.DFSUtil.getNNServiceRpcAddresses(DFSUtil.java:840) 
at org.apache.hadoop.hdfs.server.datanode.BlockPoolManager.refreshNamenodes(BlockPoolManager.java:151) 
at org.apache.hadoop.hdfs.server.datanode.DataNode.startDataNode(DataNode.java:745) 
at org.apache.hadoop.hdfs.server.datanode.DataNode.<init>(DataNode.java:278) 

miei file assomigliano:

[root @ datanode1 conf.cluster] # cat core-site.xml

<?xml version="1.0"?> 
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?> 

<configuration> 

<property> 
<name>fs.defaultFS</name> 
<value>hdfs://namenode:8020</value> 
</property> 

</configuration> 

gatto HDFS-site.xml

<?xml version="1.0"?> 
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?> 

<configuration> 
<property> 
<name>dfs.datanode.data.dir</name> 
<value>/hdfs/data</value> 
</property> 
<property> 
<name>dfs.permissions.superusergroup</name> 
<value>hadoop</value> 
</property> 
</configuration> 

Sto usando l'ultima distro CDH5.

Installed Packages 
Name  : hadoop-hdfs-datanode 
Arch  : x86_64 
Version  : 2.3.0+cdh5.0.1+567 
Release  : 1.cdh5.0.1.p0.46.el6 

Qualche consiglio utile su come superare questo?

MODIFICA: utilizzare solo il gestore Cloudera.

+0

È [questa altra domanda] (http://stackoverflow.com/questions/14531590/dfs-namenode-servicerpc-address-or-dfs-namenode-rpc-address-is-not-configured) utile? – nelsonda

risposta

0

Ho avuto lo stesso identico problema. Ho trovato una risoluzione controllando l'ambiente sul nodo di dati:

$ sudo update-alternatives --install /etc/hadoop/conf hadoop-conf /etc/hadoop/conf.my_cluster 50 
$ sudo update-alternatives --set hadoop-conf /etc/hadoop/conf.my_cluster 

Assicurarsi che le alternative siano impostate correttamente sul Data Node.

+1

Anche io ho affrontato lo stesso problema ... puoi per favore elaborare la soluzione .. –

0

controllare il core-site.xml sotto $ HADOOP_INSTALL/etc/hadoop dir. Verifica che la proprietà fs.default.name sia configurata correttamente

21

Anch'io stavo affrontando lo stesso problema e alla fine ho scoperto che c'era uno spazio nel valore fs.default.name. troncare lo spazio ha risolto il problema. Il precedente core-site.xml non sembra avere spazio, quindi il problema potrebbe essere diverso da quello che avevo. i miei 2 centesimi

+0

Non sai perché questo è stato downvoted. La rimozione degli spazi tra le proprietà ha risolto il mio problema. Stavo seguendo la guida dell'oceano digitale. – Divyanshu

+3

Aveva lo stesso problema (causato dalla copia del codice da [il tutorial] (http://www.tutorialspoint.com/hadoop/hadoop_enviornment_setup.htm) senza eseguire la pulizia) –

3

Questi passaggi hanno risolto il problema per me:

  • export HADOOP_CONF_DIR = $HADOOP_HOME/etc/hadoop
  • echo $HADOOP_CONF_DIR
  • hdfs namenode -format
  • hdfs getconf -namenodes
  • ./start-dfs.sh
0

Ovviamente, il tuo core-site.xml ha configurato l'errore.

<property> 
<name>fs.defaultFS</name> 
<value>hdfs://namenode:8020</value> 
</property> 

L'impostazione <name>fs.defaultFS</name> come <value>hdfs://namenode:8020</value>, ma l'apparecchio hostname è datanode1 .Così basta cambiare namenode a datanode1 sarà OK.

0

nel mio caso, ho erroneamente impostato HADOOP_CONF_DIR su un'altra installazione di Hadoop.

0

Configurando il nome host completo in core-site.xml, i master e gli slave hanno risolto il problema.

Vecchio: node1 (fallito)

Nuovo: node1.krish.com (Succeed)

0

creazione dfs.name.dir e dfs.data.dir directory e la configurazione completa hostname in core-site.xml, master & slave è stato risolto il mio numero

0

Nella mia situazione, ho corretto per modifica/etc/hosts config in minuscolo.