UnknownHostException на задачнике в кластере Hadoop - PullRequest
3 голосов
/ 19 января 2011

Я настроил псевдораспределенный кластер Hadoop (с Jobtracker, TaskTracker и Namenode все в одном окне) в соответствии с инструкциями учебника, и он работает нормально. Сейчас я пытаюсь добавить второй узел в этот кластер как еще один трекер задач.

Когда я проверяю журналы на узле 2, все журналы выглядят нормально, кроме треккера задач. Я получаю бесконечный цикл сообщения об ошибке, перечисленные ниже. Похоже, что Task Tracker пытается использовать имя хоста SSP-SANDBOX-1.mysite.com, а не IP-адрес. Это имя хоста не находится в / etc / hosts, поэтому я предполагаю, что проблема в этом. У меня нет доступа с правами root для добавления этого в / etc / hosts.

Могу ли я изменить какое-либо свойство или конфигурацию, чтобы он прекратил попытки подключения с использованием имени хоста?

Большое спасибо,

2011-01-18 17:43:22,896 ERROR org.apache.hadoop.mapred.TaskTracker: 
Caught exception: java.net.UnknownHostException: unknown host: SSP-SANDBOX-1.mysite.com
        at org.apache.hadoop.ipc.Client$Connection.<init>(Client.java:195)
        at org.apache.hadoop.ipc.Client.getConnection(Client.java:850)
        at org.apache.hadoop.ipc.Client.call(Client.java:720)
        at org.apache.hadoop.ipc.RPC$Invoker.invoke(RPC.java:220)
        at $Proxy5.getProtocolVersion(Unknown Source)
        at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:359)
        at org.apache.hadoop.hdfs.DFSClient.createRPCNamenode(DFSClient.java:106)
        at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:207)
        at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:170)
        at org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:82)
        at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:1378)
        at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:66)
        at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:1390)
        at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:196)
        at org.apache.hadoop.fs.Path.getFileSystem(Path.java:175)
        at org.apache.hadoop.mapred.TaskTracker.offerService(TaskTracker.java:1033)
        at org.apache.hadoop.mapred.TaskTracker.run(TaskTracker.java:1720)
        at org.apache.hadoop.mapred.TaskTracker.main(TaskTracker.java:2833)

1 Ответ

3 голосов
/ 19 января 2011

Эта запись в блоге может быть полезна:

http://western -skies.blogspot.com / 2010/11 / фикс-для-превышены-maxfaileduniquefetches.html

Краткий ответ: Hadoop выполняет обратный поиск по имени хоста, даже если вы указали IP-адреса в своих файлах конфигурации. В вашей среде, чтобы вы могли заставить Hadoop работать, SSP-SANDBOX-1.mysite.com должен разрешить IP-адрес этого компьютера, а обратный поиск для этого IP-адреса должен разрешить SSP-SANDBOX-1.mysite. .com.

Так что вам нужно будет поговорить с тем, кто управляет этими машинами, чтобы либо выдумать файл hosts, либо предоставить DNS-сервер, который будет действовать правильно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...