2017-02-23 87 views
4

Я писал программу искры в моей развивающейся машине, которая является mac. Версия hadoop - 2.6, версия искры - 1.6.2. У клана hadoop есть 3 узла, конечно, все в Linux-машине. Я запускаю искровую программу в идее IDE в искровом автономном режиме, она работает успешно. Но теперь, я могу изменить его в режим пряжи клиента, он не работает успешно, и выдает сообщение следующим образом:Искра на пряжу, Подключение к ResourceManager на /0.0.0.0:8032

... 
2017-02-23 11:01:33,725-[HL] INFO main org.apache.hadoop.yarn.client.RMProxy - Connecting to ResourceManager at /0.0.0.0:8032 
2017-02-23 11:01:34,839-[HL] INFO main org.apache.hadoop.ipc.Client - Retrying connect to server: 0.0.0.0/0.0.0.0:8032. Already tried 0 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 MILLISECONDS) 
2017-02-23 11:01:35,842-[HL] INFO main org.apache.hadoop.ipc.Client - Retrying connect to server: 0.0.0.0/0.0.0.0:8032. Already tried 1 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 MILLISECONDS) 
2017-02-23 11:01:36,847-[HL] INFO main org.apache.hadoop.ipc.Client - Retrying connect to server: 0.0.0.0/0.0.0.0:8032. Already tried 2 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 MILLISECONDS) 
2017-02-23 11:01:37,854-[HL] INFO main org.apache.hadoop.ipc.Client - Retrying connect to server: 0.0.0.0/0.0.0.0:8032. Already tried 3 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 MILLISECONDS) 
... 

Я уже добавили соответствующие конфигурационные файлы в каталог ресурсов проекта. Если я сделаю пакет для jar и использую spark-submit для запуска этой программы, все будет в порядке. Теперь я хочу запустить эту программу в среде IDE в качестве режима «пряжа-клиент», как и в автономном режиме. Как я могу исправить эту проблему? Благодарю.

ответ

2

Убедитесь, что конфигурации YARN доступны для использования Spark при работе в режиме пряжи. Добавьте эти файлы core-site.xml, hdfs-site.xml и yarn-site.xml файлы в каталог conf искры.
Также убедитесь, то yarn-site.xml содержит адрес менеджера ресурсов

<property> 
    <name>yarn.resourcemanager.address</name> 
    <value>resource_manager_ip:8032</value> 
</property> 
+0

ли вы имеете в виду У меня должна быть такая же конфигурация, как и в машине разработки, в качестве бегущего кластера пряжи? – SparkFour

+0

Конфигурации, в которых работает пряжа, которую вы хотите использовать. Если вы хотите запустить «пряжа-клиент» в машине разработки, у вас должна быть пряжа, работающая в машине разработки, и эти конфигурации должны быть скопированы и искрообразованы (или установка «YARN_CONF_DIR» будет) или обеспечить конфиг удаленного окружающая среда, которая доступна для искры в машине разработки. – franklinsijo

+1

Я сделал следующее, но не работал. 1. Запустите локальный хаос и искру в моей машине разработки, и их конфигурации отличаются от удаленных хаопов и искры. 2. Скопируйте конфигурации удаленного хаоса в каталог 'conf' удаленной искры, включая' yarn-site.xml, core-site.xml, hdfs-site.xml' три файла. 3. Скопируйте конфигурации удаленных хаопов в локальную директорию 'conf', в том числе' yarn-site.xml, core-site.xml, hdfs-site.xml' три файла. 4. В моем проекте я не добавил других конфигураций. – SparkFour

0

Установите объект конф, как это, его работа для меня:

conf = new SparkConf().setAppName(setup.getAppname).setMaster("yarn") 
      .set("spark.hadoop.yarn.resourcemanager.hostname", "resourcemanager.fqdn") 
      .set("spark.hadoop.yarn.resourcemanager.address", "resourcemanager.fqdn:8032")` 

Шрифт: hortonworks.com