Пользовательский интерфейс Hadoop показывает только одну датаноду

Я начал кластер hadoop, состоящий из главного и 4 подчиненных узлов.

Конфигурация кажется нормальной:

hduser @ ubuntu-amd64: / usr / local / hadoop $./bin/hdfs dfsadmin -report

Когда я вхожу в NameNode UI (http://10.20.0.140:50070/) Overview карта выглядит нормально - например, общая емкость всех узлов суммируется.

Проблема в том, что в карточке Datanodes Я вижу только одну датаноду.

Карточка датоде

8 ответов

Я столкнулся с той же проблемой, к счастью, я решил ее. Я думаю, это вызвано "loaclhost".

  1. Настройте другое имя для этих IP-адресов в /etc/host
  2. Не забудьте перезапустить все машины, все будет хорошо.

Это из-за одного и того же имени хоста в обоих датодах. В вашем случае оба datanodes регистрируются в namenode с тем же именем хоста, то есть "localhost". Попробуйте с разными именами хоста, это решит вашу проблему.

в пользовательском интерфейсе будет отображаться только одна запись для имени хоста.

в выводе "hdfs dfsadmin -report" вы можете увидеть оба.

Следующие советы могут помочь вам

  1. Проверьте core-site.xml и убедитесь, что имя хоста namenode является правильным
  2. Проверьте правила брандмауэра в namenode и datanodes и убедитесь, что необходимые порты открыты
  3. Проверьте журналы датододов
  4. Убедитесь, что все датододы запущены и работают

Как сказал @Rahul, проблема в том же имени хоста

измените ваше имя хоста в файле / etc / hostname и присвойте разные имена хостам для каждого хоста и определите имя хоста с помощью IP-адреса / etc / hosts

затем перезагрузите кластер, вы увидите все датододы на вкладке информации о датоданах в браузере

Извините, такое ощущение, что это было время. Но все же я хотел бы поделиться своим ответом: основная причина - в hadoop/etc/hadoop/hdfs-site.xml: файл xml имеет свойство с именем dfs.datanode.data.dir. Если вы установите для всех узлов данных одно и то же имя, тогда hadoop предполагает, что в кластере есть только один узел данных. Итак, правильный способ сделать это - присвоить каждому узлу данных уникальное имя:

С уважением, ЮН ХАНСЮАНЬ

У меня такая же проблема, потому что я использую ip вместо hostname, [hdfs dfsadmin -report] правильно, хотя это только один [localhost] в пользовательском интерфейсе. Наконец, я решил это так:

<property>
       <name>dfs.datanode.hostname</name>                   
       <value>the name you want to show</value>
</property>

Вы почти не можете найти его в любом документе...

Ваш отчет администратора выглядит абсолютно нормально. Пожалуйста, запустите ниже, чтобы проверить детали дискового пространства HDFS.

"hdfs dfs -df /"

Если вы все еще видите, что размер хороший, то это просто сбой пользовательского интерфейса.

Мои проблемы: у меня есть 1 главный узел и 3 подчиненных узла. когда я запускаю все узлы по start-all. sh и доступ к панели управления мастер-узлами. Я смог увидеть только один узел данных в веб-интерфейсе.

Мое решение:

  1. Попробуйте временно остановить брандмауэр с помощью sudo systemctl stop firewalld . если вы не хотите останавливать службу firewalld, тогда r разрешите порты узла данных с помощью sudo firewall-cmd --permanent --add-port {PORT_Number / tcp,PORT_number2 / tcp}; sudo firewall-cmd --reload
  2. Если вы используете пользователя sapretae для Hadoop, в моем случае я использую пользователя hadoop для управления демонами hadoop, а затем измените владельца вашего файла dataNode и nameNode на. sudo chown hadoop: hadoop / opt / data -R

Моя конфигурация hdfs-site.xml, как показано на изображении

  1. Проверьте свои демоны на узле данных с помощью команды jps . он должен выглядеть так, как показано на изображении ниже.

jps Выход

Другие вопросы по тегам