Вопрос

Я новичок в искре.Теперь я могу запустить искру 0.9.1 на пряже (2.0.0-cdh4.2.1).Но журнала после выполнения нет.

Следующая команда используется для запуска примера искры.Но журналы не обнаруживаются на сервере истории, как в обычном задании MapReduce.

SPARK_JAR=./assembly/target/scala-2.10/spark-assembly-0.9.1-hadoop2.0.0-cdh4.2.1.jar \
./bin/spark-class org.apache.spark.deploy.yarn.Client --jar ./spark-example-1.0.0.jar \
--class SimpleApp --args yarn-standalone  --num-workers 3 --master-memory 1g \
--worker-memory 1g --worker-cores 1

где я могу найти журналы/stderr/stdout?

Есть ли где установить конфигурацию?Я нашел вывод из консоли, в котором говорилось:

04.14.14 18:51:52 ИНФО Клиент:Команда для ApplicationMaster:$JAVA_HOME/bin/java -server -Xmx640m -Djava.io.tmpdir=$PWD/tmp org.apache.spark.deploy.yarn.ApplicationMaster --class SimpleApp --jar ./spark-example-1.0.0.jar --args 'yarn-standalone' --worker-memory 1024 --worker-cores 1 --num-workers 3 1> <LOG_DIR>/stdout 2> <LOG_DIR>/stderr

В этой строке обратите внимание 1> $LOG_DIR/stdout 2> $LOG_DIR/stderr

Где можно установить LOG_DIR?

Другие советы

Доступ к журналам можно получить с помощью команды

yarn logs -applicationId <application ID> [OPTIONS]

общие варианты:

  • appOwner <Application Owner> - AppOwner (предполагается текущий пользователь, если не указано)
  • containerId <Container ID> - Контейнер (должен быть указан, если указан адрес узла)
  • nodeAddress <Node Address> - NodeAddress в формате nodename:port (необходимо указать, если указан идентификатор контейнера)

Примеры:

yarn logs -applicationId application_1414530900704_0003                                      
yarn logs -applicationId application_1414530900704_0003 myuserid

// the user ids are different
yarn logs -applicationId <appid> --appOwner <userid>

Ни один из ответов не делает его кристально понятно, где искать журналы (хотя они делают на куски), поэтому я вкладываю его вместе.

Если агрегация журнала включена (с yarn.log-average-avalable yarn-site.xml), то сделайте это

yarn logs -applicationId <app ID>
.

Однако, если это не включено, то нужно пойти на машину данных-узла и посмотреть на

$HADOOP_HOME/logs/userlogs/application_1474886780074_XXXX/
.

Application_1474886780074_xxxx - это идентификатор приложения

Это журналы:

/var/log/hadoop-yarn/containers/[application id]/[container id]/stdout
.

Журналы находятся на каждом узле, на котором работает ваша искровая работа.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top