Устранение неполадок рабочих нагрузок Apache Hadoop YARN с помощью Azure HDInsight
Ознакомьтесь с основными проблемами и их разрешением при работе с полезными данными Apache Hadoop YARN в Apache Ambari.
Как создать очередь YARN в кластере?
Способы устранения
Чтобы создать очередь YARN и выполнить балансировку выделения емкости для всех очередей, выполните следующие шаги с помощью Ambari.
В этом примере емкость двух имеющихся очередей (default и thriftsvr) изменяется с 50 % на 25 %, что позволяет обеспечить для новой очереди (spark) емкость 50 %.
Queue | Capacity | Максимальная вместимость |
---|---|---|
default | 25% | 50% |
thrftsvr | 25% | 50% |
spark; | 50% | 50% |
Выберите значок просмотров Ambari, а затем выберите шаблон сетки. После этого выберите диспетчер очереди YARN.
Выберите очередь по умолчанию.
Для очереди default измените емкость с 50 % на 25 %. Для очереди thriftsvr измените емкость на 25 %.
Нажмите кнопку Add Queue (Добавить очередь), чтобы создать очередь.
Присвойте имя новой очереди.
Оставьте значение емкости 50 %, а затем выберите кнопку Действия.
Выберите команду Save and Refresh Queues (Сохранить и обновить очереди).
После применения эти изменения сразу же появятся на пользовательском интерфейсе планировщика YARN.
Дополнительные материалы
- Hadoop: Capacity Scheduler (Hadoop: планировщик ресурсов)
Как скачать журналы YARN из кластера?
Способы устранения
Подключитесь к кластеру HDInsight с помощью клиента Secure Shell (SSH). Дополнительные сведения см. в разделе "Дополнительные сведения".
Чтобы получить список всех идентификаторов текущих выполняемых приложений YARN, выполните следующую команду:
yarn top
Идентификаторы перечислены в столбце APPLICATIONID. Вы можете скачать журналы из столбца APPLICATIONID.
YARN top - 18:00:07, up 19d, 0:14, 0 active users, queue(s): root NodeManager(s): 4 total, 4 active, 0 unhealthy, 0 decommissioned, 0 lost, 0 rebooted Queue(s) Applications: 2 running, 10 submitted, 0 pending, 8 completed, 0 killed, 0 failed Queue(s) Mem(GB): 97 available, 3 allocated, 0 pending, 0 reserved Queue(s) VCores: 58 available, 2 allocated, 0 pending, 0 reserved Queue(s) Containers: 2 allocated, 0 pending, 0 reserved APPLICATIONID USER TYPE QUEUE #CONT #RCONT VCORES RVCORES MEM RMEM VCORESECS MEMSECS %PROGR TIME NAME application_1490377567345_0007 hive spark thriftsvr 1 0 1 0 1G 0G 1628407 2442611 10.00 18:20:20 Thrift JDBC/ODBC Server application_1490377567345_0006 hive spark thriftsvr 1 0 1 0 1G 0G 1628430 2442645 10.00 18:20:20 Thrift JDBC/ODBC Server
Чтобы скачать журналы для всех основных контейнеров приложения YARN, выполните следующую команду:
yarn logs -applicationIdn logs -applicationId <application_id> -am ALL > amlogs.txt
Будет создан файл журнала с именем amlogs.txt.
Чтобы скачать журналы только для последнего основного контейнера приложения YARN, выполните следующую команду:
yarn logs -applicationIdn logs -applicationId <application_id> -am -1 > latestamlogs.txt
Будет создан файл журнала с именем latestamlogs.txt.
Чтобы скачать журналы для первых двух основных контейнеров приложения YARN, выполните следующую команду:
yarn logs -applicationIdn logs -applicationId <application_id> -am 1,2 > first2amlogs.txt
Будет создан файл журнала с именем first2amlogs.txt.
Чтобы скачать все журналы контейнеров приложения YARN, выполните следующую команду:
yarn logs -applicationIdn logs -applicationId <application_id> > logs.txt
Будет создан файл журнала с именем logs.txt.
Чтобы скачать журнал контейнера YARN для определенного контейнера, выполните следующую команду:
yarn logs -applicationIdn logs -applicationId <application_id> -containerId <container_id> > containerlogs.txt
Будет создан файл журнала с именем containerlogs.txt.
Дополнительные материалы
- Подключение к HDInsight (Hadoop) с помощью SSH
- APACHE HADOOP YARN — CONCEPTS AND APPLICATIONS (Apache Hadoop YARN: приложения и основные понятия)
Разделы справки проверьте сведения о диагностике приложений Yarn?
Диагностика в пользовательском интерфейсе Yarn — это функция, которая позволяет просматривать состояние и журналы приложений, работающих в Yarn. Диагностика помогает устранять неполадки и отладку приложений, а также отслеживать их производительность и использование ресурсов.
Чтобы просмотреть диагностика конкретного приложения, можно щелкнуть идентификатор приложения в списке приложений. На странице сведений о приложении также можно просмотреть список всех попыток запуска приложения. Вы можете щелкнуть любую попытку, чтобы просмотреть дополнительные сведения, например идентификатор попытки, идентификатор контейнера, идентификатор узла, время начала, время окончания и диагностика
Как устранить распространенные проблемы с YARN?
Пользовательский интерфейс Yarn не загружается
Если пользовательский интерфейс YARN не загружается или недоступен, и возвращается сообщение "Ошибка HTTP 502.3 — недопустимый шлюз", оно очень указывает, что служба Resource Manager неработоспособна. Чтобы решить эту проблему, выполните следующие действия.
- Перейдите к сводке YARN>пользовательского интерфейса>Ambari и проверьте, находится ли активный диспетчер ресурсов в состоянии "Запуск". Если нет, попробуйте устранить проблему, перезапустите неработоспособную или остановленную диспетчер ресурсов.
- Если шаг 1 не устраняет проблему, SSH активный головной узел Resource Manager и проверьте состояние сборки мусора с помощью
jstat -gcutil <Resource Manager pid> 1000 100
. Если вы видите увеличение FGCT значительно в течение нескольких секунд, оно указывает, что Resource Manager занят в полной сборке данных, и не может обрабатывать другие запросы. - Откройте Пользовательский интерфейс Ambari>YARN>КОНФИГУРАЦИИ>Дополнительно и увеличьте значение
Resource Manager java heap size
. - Перезапустите требуемые службы в пользовательском интерфейсе Ambari.
Оба диспетчера ресурсов в режиме ожидания
- Проверьте журнал Resource Manager, чтобы узнать, существует ли аналогичная ошибка.
Service RMActiveServices failed in state STARTED; cause: org.apache.hadoop.service.ServiceStateException: com.google.protobuf.InvalidProtocolBufferException: Could not obtain block: BP-452067264-10.0.0.16-1608006815288:blk_1074235266_494491 file=/yarn/node-labels/nodelabel.mirror
Если такая ошибка существует, проверьте, находятся ли некоторые файлы в репликации или есть ли отсутствующие блоки в HDFS. Можно запустить
hdfs fsck hdfs://mycluster/
Выполните
hdfs fsck hdfs://mycluster/ -delete
слишком принудительное очистку HDFS и избавиться от резервной проблемы RM. Можно также запустить PatchYarnNodeLabel на одном из головных узлов, чтобы установить исправление для кластера.
Следующие шаги
Если вы не видите своего варианта проблемы или вам не удается ее устранить, дополнительные сведения можно получить, посетив один из следующих каналов.
Получите ответы специалистов Azure на сайте поддержки сообщества пользователей Azure.
Подпишитесь на @AzureSupport — официальный канал Microsoft Azure для улучшения качества взаимодействия с клиентами. Вступайте в сообщество Azure для получения нужных ресурсов: ответов, поддержки и советов экспертов.
Если вам нужна дополнительная помощь, отправьте запрос в службу поддержки на портале Azure. Выберите Поддержка в строке меню или откройте центр Справка и поддержка. Дополнительные сведения см. в статье Создание запроса на поддержку Azure. Доступ к управлению подписками и поддержкой выставления счетов уже включен в вашу подписку Microsoft Azure, а техническая поддержка предоставляется в рамках одного из планов Службы поддержки Azure.