2015-08-14 1 views
1

Служба узла данных не запускается в одном из моих кластеров Hadoop.Hadoop: узел данных не запущен, журналы показывают «исключение Java-привязки (используется порт)»

журналы узел данных имеет следующую информацию ... детали

Exception на компьютере, где DataNode служба не запускается:

2015-08-12 15: 51: 09331 INFO орг. apache.hadoop.http.HttpServer2: HttpServer.start() выбрал не привязанный IOException java.net.BindException: Используемый порт: localhost: 0 at org.apache.hadoop.http.HttpServer2.openListeners (HttpServer2.java: 919) по адресу org.apache.hadoop.http.HttpSe ...........................

На успешных ПК Узлов данных лога выглядит следующим образом

2015-08-12 15: 43: 57,520 INFO org.apache.hadoop.http.HttpServer2: Jetty, связанный с портом 34958

2015-08-12 15: 43: 57,520 INFO org.mortbay.log: jetty- 6.1.26

2015-08-12 15: 43: 57,619 INFO org.mortbay.log: начато HttpServer2 $ SelectChannelConnectorWithSafeStartup @ локальный: 34958

Я попытался фиксации портов в HDFS-site.xml, как описано в link

Но это не сработало. Пожалуйста, бросьте немного света, чтобы решить эту проблему.

Благодаря

ответ

0

Эта проблема связана с портом уже используется, поэтому BindException Метательное. для устранения этой проблемы выполните следующие шаги.

1.

запустить NetStat -np команду, чтобы знать номер порта, используемый с идентификатором процесса

2.

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

+0

Я смотрел на порты, которые используются с командой Netstat -p. Я не нашел порт порта данных, который используется любым из процессов ... По умолчанию порты узла данных описаны в ссылке «http://blog.cloudera.com/blog/2009/08/hadoop -default-ports-quick-reference/" Thanks – rsl

2

«локальный: 0» пожалуйста проверить/и т.д./хосты, скорее всего, этот файл не установлен хорошо

+0

Это была моя проблема.Нужно добавить эту строку в/etc/hosts: '127.0.0.1 localhost.localdomain localhost' –