Задать вопрос

Hadoop: почему не получается запустить MapReduce задачу?

Всем привет.

Делаю первые шаги в освоении Hadoop. Настроил "кластер" из пары виртуалок. Не могу запустить MapReduce-задачу.
sudo -uhdfs yarn jar /usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi 1 1


В логе ResourceManager-а доходит до такого:
13/12/10 23:30:02 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1386714123362_0001
13/12/10 23:30:02 INFO client.YarnClientImpl: Submitted application application_1386714123362_0001 to ResourceManager at master/192.168.122.175:8032
13/12/10 23:30:02 INFO mapreduce.Job: The url to track the job: http://master:8088/proxy/application_1386714123362_0001/
13/12/10 23:30:02 INFO mapreduce.Job: Running job: job_1386714123362_0001

... и молчек. Задача остается висеть навечно. В логе NodeManager-ов никаких новых сообщений не наблюдается

#hadoop job -list
...
                  JobId	     State	     StartTime	    UserName	       Queue	  Priority	 UsedContainers	 RsvdContainers	 UsedMem	 RsvdMem	 NeededMem	   AM info
 job_1386790587985_0001	      PREP	 1386801628645	        hdfs	     default	    NORMAL	              0	              0	      0M	      0M	        0M	master:8088/proxy/application_1386790587985_0001/
  • Вопрос задан
  • 11155 просмотров
Подписаться 3 Оценить Комментировать
Решения вопроса 1
martsen
@martsen
Программист-дроновод
Привожу рабочие конфиги для кластера hadoop 2.2.0 с узлами master и slave:
etc/hadoop/core-site.xml
<configuration>
	<property>
		<name>fs.defaultFS</name>
		<value>hdfs://master:9000</value>
	</property>
</configuration>


etc/hadoop/hdfs-site.xml
<configuration>
	<property>
		<name>dfs.replication</name>
		<value>2</value>
	</property>
	<property>
		<name>dfs.namenode.name.dir</name>
		<value>file:/usr/local/hadoop/tmp/hdfs/namenode</value>
	</property>
	<property>
		<name>dfs.datanode.data.dir</name>
		<value>file:/usr/local/hadoop/tmp/hdfs/datanode</value>
	</property>
</configuration>


etc/hadoop/mapred-site.xml
<configuration>
	<property>
		<name>mapreduce.framework.name</name>
		<value>yarn</value>
	</property>
</configuration>


etc/hadoop/yarn-site.xml
<configuration>
	<property>
		<name>yarn.nodemanager.aux-services</name>
		<value>mapreduce_shuffle</value>
	</property>
	<property>
		<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
		<value>org.apache.hadoop.mapred.ShuffleHandler</value>
	</property>
	<property>
		<name>yarn.resourcemanager.scheduler.address</name>
		<value>master:8030</value>
	</property>
	<property>
		<name>yarn.resourcemanager.address</name>
		<value>master:8032</value>
	</property>
	<property>
		<name>yarn.resourcemanager.webapp.address</name>
		<value>master:8088</value>
	</property>
	<property>
		<name>yarn.resourcemanager.resource-tracker.address</name>
		<value>master:8031</value>
	</property>
	<property>
		<name>yarn.resourcemanager.admin.address</name>
		<value>master:8033</value>
	</property>
</configuration>


Также убедитесь, что у вас все в порядке с файлом /etc/hosts
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
martsen
@martsen
Программист-дроновод
Столкнулся с такой же проблемой. Вы сразу создавали кластер из несколькоих виртуалок? Пробовали запускать в псевдораспределенном режиме с одним узлом? У меня так работает.
Сейчас я немного перенастраиваю кластер и вечером подробнее напишу вам, смог ли я побороть эту проблему. Ну и напишу решение.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы