Программа Wordcount застряла в hadoop-2.3.0
Я установил hadoop-2.3.0 и попытался запустить пример wordcount
Но он запускает работу и сидит без дела
[email protected]:~$ $HADOOP_HOME/bin/hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.3.0.jar wordcount /myprg outputfile1
14/04/30 13:20:40 INFO client.RMProxy: Connecting to ResourceManager at /0.0.0.0:8032
14/04/30 13:20:51 INFO input.FileInputFormat: Total input paths to process : 1
14/04/30 13:20:53 INFO mapreduce.JobSubmitter: number of splits:1
14/04/30 13:21:02 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1398885280814_0004
14/04/30 13:21:07 INFO impl.YarnClientImpl: Submitted application application_1398885280814_0004
14/04/30 13:21:09 INFO mapreduce.Job: The url to track the job: http://ubuntu:8088/proxy/application_1398885280814_0004/
14/04/30 13:21:09 INFO mapreduce.Job: Running job: job_1398885280814_0004
URL-адрес для отслеживания задания: application_1398885280814_0004/
![enter image description here]()
![enter image description here]()
Для предыдущих версий я получил такую проблему. В предыдущей версии я смог запустить hasoop wordcount.
Я выполнил эти шаги для установки hadoop-2.3.0
Просьба предложить.
Ответы
Ответ 1
У меня была такая же ситуация некоторое время назад, переключаясь на YARN. В принципе, в MRv1 и containers
в MRv2 была концепция task slots
. Оба они очень сильно отличаются от того, как задачи планируются и выполняются на узлах.
Причина, по которой ваша задача застревает, заключается в том, что она не может найти/запустить a container
. Если вы войдете в полные журналы Resource Manager/Application Master
и т.д., Вы можете обнаружить, что он ничего не делает после того, как начинает назначать новый контейнер.
Чтобы решить эту проблему, вы должны настроить настройки своей памяти в yarn-site.xml
и mapred-site.xml
. Выполняя то же самое, я нашел этот и этот, особенно полезно. Я бы предложил вам попробовать с самыми основными настройками памяти и оптимизировать их позже. Сначала сверьтесь со примером подсчета слов, затем переходите к другим сложным.
Ответ 2
Я столкнулся с той же проблемой. Я добавил следующее свойство в файл yarn-site.xml и решил проблему.
<property>
<name>yarn.resourcemanager.hostname</name>
<value>Hostname-of-your-RM</value>
<description>The hostname of the RM.</description>
</property>
Без имени хоста диспетчера ресурсов все происходит в настройке multi- node, поскольку каждый node будет по умолчанию пытаться найти локального менеджера ресурсов и никогда не объявит свои ресурсы мастеру node. Таким образом, ваш запрос на уменьшение размера карты, вероятно, не нашел каких-либо картографов, в которые нужно было выполнить, потому что запрос отправлялся мастеру, а мастер не знал о slave-слотах.
Ссылка: http://www.alexjf.net/blog/distributed-systems/hadoop-yarn-installation-definitive-guide/
Ответ 3
Я также сталкиваюсь с той же проблемой. Я использую кластер с одним узлом на GCP. вышеуказанное решение не работает для меня. любое другое решение?