Неверная конфигурация: адрес namenode dfs.namenode.rpc-address не настроен

Я получаю эту ошибку, когда пытаюсь загрузить DataNode. Из того, что я прочитал, параметры RPC используются только для конфигурации HA, которую я не настраиваю (я думаю).

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)

Мои файлы выглядят так:

[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>

кошка 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>

Я использую последний дистрибутив 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

Любые полезные советы о том, как пройти через это?

РЕДАКТИРОВАТЬ: Просто используйте менеджер Cloudera.


person aaa90210    schedule 18.05.2014    source источник
comment
другой вопрос полезный?   -  person nelsonda    schedule 20.05.2014


Ответы (13)


Я тоже столкнулся с той же проблемой и, наконец, обнаружил, что в значении fs.default.name есть пробел. усечение пробела решило проблему. Вышеупомянутый core-site.xml, похоже, не имеет места, поэтому проблема может отличаться от той, что была у меня. мои 2 цента

person QADeveloper    schedule 08.12.2015
comment
Не уверен, почему за это проголосовали. Удаление пробелов между свойствами решило мою проблему. Я следовал цифровому путеводителю по океану. - person Divyanshu Das; 29.03.2016
comment
Возникла та же проблема (вызванная копированием кода из учебника без очистки) - person Keerthi Bandara; 02.07.2016
comment
У меня была аналогичная проблема. Вместо пробела у меня просто была неверная информация в том же месте для fs.default.name. Все работало нормально после того, как я это исправил. - person Michael Galaxy; 24.04.2019

Эти шаги решили проблему для меня:

  • export HADOOP_CONF_DIR = $HADOOP_HOME/etc/hadoop
  • echo $HADOOP_CONF_DIR
  • hdfs namenode -format
  • hdfs getconf -namenodes
  • ./start-dfs.sh
person Hamdi Charef    schedule 02.03.2016

проверьте файл core-site.xml в каталоге $HADOOP_INSTALL/etc/hadoop. Убедитесь, что свойство fs.default.name настроено правильно.

person OPMendeavor    schedule 21.04.2015

Очевидно, ваш core-site.xml имеет ошибку конфигурации.

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

Ваш параметр <name>fs.defaultFS</name> равен <value>hdfs://namenode:8020</value>, но имя хоста вашего компьютера равно datanode1. Так что вам просто нужно изменить namenode на datanode1, и все будет в порядке.

person cutd    schedule 25.01.2017
comment
этот ответ и ответ Хамди Шарефа вместе были моим решением. - person Kevin Milner; 03.05.2019

У меня была точно такая же проблема. Я нашел решение, проверив среду на узле данных:

$ 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

Убедитесь, что альтернативы правильно установлены на узлах данных.

person user3705189    schedule 04.06.2014

Настройка полного имени хоста в core-site.xml, masters и slaves решила проблему для меня.

Старое: node1 (ошибка)

Новое: node1.krish.com (успешно)

person Krishas    schedule 29.07.2017

создание каталогов dfs.name.dir и dfs.data.dir и настройка полного имени хоста в core-site.xml, мастера и подчиненные решают мою проблему

person Hemantha Kumara M S    schedule 30.08.2017

В моей ситуации я исправил, изменив конфигурацию /etc/hosts на нижний регистр.

person LoranceChen    schedule 28.12.2017

в моем случае я неправильно установил HADOOP_CONF_DIR для другой установки Hadoop.

Добавьте в hadoop-env.sh:

export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop/
person Yousef Irman    schedule 10.04.2017

Этот тип проблемы в основном возникает, если в значении или имени свойства есть пробел в любом из следующих файлов: core-site.xml, hdfs-site.xml, mapred-site.xml, yarn-site.xml.

просто убедитесь, что вы не поставили пробелы или (изменили строку) между открывающим и закрывающим тегами имени и значения.

Код:

 <property> 
<name>dfs.name.dir</name> <value>file:///home/hadoop/hadoop_tmp/hdfs/namenode</value> 
<final>true</final> 
</property>
person ranubwj    schedule 13.06.2018
comment
Приведите пример, пожалуйста - person DeshDeep Singh; 13.06.2018
comment
вы должны добавить в свой ответ, чтобы все могли его понять. я сделал это на данный момент. - person DeshDeep Singh; 13.06.2018

Я столкнулся с той же проблемой, форматирование HDFS решило мою проблему. Не форматируйте HDFS, если у вас есть важные метаданные.
Команда для форматирования HDFS: hdfs namenode -format

Когда namenode не работал
Когда namenode не работал< /а>

После форматирования HDFS После форматирования HDFS

person rahul mahajan    schedule 24.06.2018

Проверьте файл '/etc/hosts':
Должна быть строка, как показано ниже: (если нет, добавьте ее)
namenode 127.0.0.1
Замените 127.0.01 с вашим IP-адресом namenode.

person Mohammadhosein Qanbari    schedule 17.12.2018

Добавьте приведенную ниже строку в файл hadoop-env.cmd.

set HADOOP_HOME_WARN_SUPPRESS=1
person Siddharth Sheladiya    schedule 11.10.2020