Поделиться через


Планирование емкости для кластеров HDInsight

Перед развертыванием кластера HDInsight запланируйте нужную емкость кластера, определив необходимую производительность и масштаб. Это планирование помогает оптимизировать удобство использования и затраты. Некоторые решения по емкости кластера не могут быть изменены после развертывания. При изменении параметров производительности кластер можно демонтировать и повторно создать, не теряя сохраненные данные.

Ключевыми вопросами, которые необходимо задать для планирования емкости, являются следующие:

  • В каком географическом регионе следует развернуть кластер?
  • Какой объем хранилища требуется?
  • Какой тип кластера следует развернуть?
  • Какой размер и тип виртуальной машины следует использовать узлам кластера?
  • Сколько рабочих узлов должно иметь кластер?

Выбор региона Azure

Регион Azure определяет, где кластер физически развернут. Чтобы свести к минимуму задержку операций чтения и записи, кластер должен находиться рядом с данными.

HDInsight доступен во многих регионах Azure. Чтобы найти ближайший регион, см. статью "Продукты", доступные по регионам.

Выбор расположения и размера хранилища

Расположение хранилища по умолчанию

Хранилище по умолчанию ( учетная запись хранения Azure или Azure Data Lake Storage) должно находиться в том же расположении, что и кластер. Служба хранилища Azure доступна во всех расположениях. Data Lake Storage доступна в некоторых регионах. См. текущую доступность Data Lake Storage.

Расположение существующих данных

Если вы хотите использовать существующую учетную запись хранения или Data Lake Storage в качестве хранилища по умолчанию кластера, необходимо развернуть кластер в том же расположении.

Объем памяти

В развернутом кластере можно подключить другие учетные записи хранения Azure или получить доступ к другим data Lake Storage. Все учетные записи хранения должны находиться в том же расположении, что и кластер. Data Lake Storage может находиться в другом расположении, хотя большие расстояния могут привести к некоторой задержке.

Служба хранилища Azure имеет некоторые ограничения емкости, в то время как Data Lake Storage почти неограниченно. Кластер может получить доступ к сочетанию различных учетных записей хранения. Ниже приведены типичные примеры:

  • Если объем данных, вероятно, превысит емкость одного BLOB-хранилища.
  • Если скорость доступа к контейнеру BLOB может превышать пороговое значение, при котором начинается ограничение.
  • Если вы хотите сделать данные, которые вы уже загрузили в контейнер блобов, доступными для кластера.
  • Если вы хотите изолировать различные части хранилища по соображениям безопасности или упростить администрирование.

Для повышения производительности используйте только один контейнер для каждой учетной записи хранения.

Выбор типа кластера

Тип кластера определяет рабочую нагрузку, для выполнения которой настроен ваш кластер HDInsight. Типы включают Apache Hadoop, Apache Kafka или Apache Spark. Подробное описание доступных типов кластеров см. в статье "Введение в Azure HDInsight". Каждый тип кластера имеет определенную топологию развертывания, которая включает требования к размеру и количеству узлов.

Выбор размера и типа виртуальной машины

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

Чтобы определить оптимальный размер кластера для приложения, можно проверить емкость кластера и увеличить размер, как указано. Например, можно использовать имитированную рабочую нагрузку или канарной запрос. Запускайте имитированные рабочие нагрузки на кластерах разного размера. Постепенно увеличьте размер до достижения предполагаемой производительности. Канарной запрос можно периодически вставлять среди других рабочих запросов, чтобы показать, имеет ли кластер достаточно ресурсов.

Дополнительные сведения о выборе подходящего семейства виртуальных машин для рабочей нагрузки см. в разделе "Выбор подходящего размера виртуальной машины для кластера".

Выбор масштаба кластера

Масштаб кластера определяется количеством узлов виртуальной машины. Для всех типов кластеров существуют типы узлов с определенным масштабом и типы узлов, поддерживающие горизонтальное масштабирование. Например, для кластера может потребоваться ровно три узла Apache ZooKeeper или два головного узла. Рабочие узлы, выполняющие обработку данных в распределенном режиме, получают преимущества от других рабочих узлов.

В зависимости от типа кластера увеличение числа рабочих узлов добавляет больше вычислительной емкости (например, больше ядер). Больше узлов увеличит общую память, необходимую для всего кластера для поддержки хранения данных в памяти. Как и при выборе размера и типа виртуальной машины, выбор правильного масштаба кластера обычно достигается эмпирически. Используйте имитированные рабочие нагрузки или канаровые запросы.

Вы можете масштабировать кластер для удовлетворения требований к пиковой нагрузке. Затем снижайте масштаб, когда эти дополнительные узлы больше не нужны. Функция автомасштабирования позволяет автоматически масштабировать кластер на основе предопределенных метрик и времени. Дополнительные сведения о масштабировании кластеров вручную см. в статье "Масштабирование кластеров HDInsight".

Жизненный цикл кластера

Плата взимается за время существования кластера. Если вам нужно использовать кластер только в определенные времена, создайте кластеры по запросу с помощью Azure Data Factory. Вы также можете создавать скрипты PowerShell, которые подготавливают и удаляют кластер, а затем планировать эти скрипты с помощью службы автоматизации Azure.

Замечание

При удалении кластера хранилище метаданных Hive по умолчанию также удаляется. Чтобы сохранить хранилище метаданных для следующего повторного создания кластера, используйте внешнее хранилище метаданных, например Базу данных Azure или Apache Oozie.

Идентификация ошибок в заданиях кластера

Иногда ошибки могут возникать из-за параллельного выполнения нескольких карт и уменьшения компонентов в кластере с несколькими узлами. Чтобы изолировать проблему, попробуйте выполнить распределенное тестирование. Выполнение параллельных нескольких заданий в одном кластере рабочих узлов. Затем разверните этот подход для одновременного выполнения нескольких заданий в кластерах, содержащих несколько узлов. Чтобы создать кластер с одним узлом HDInsight в Azure, используйте параметр Custom(size, settings, apps) со значением 1 для числа рабочих узлов в разделе масштаба кластера при подготовке нового кластера на портале.

Просмотр управления квотами для HDInsight

Просмотр детализированного уровня и классификации квоты на уровне семейства виртуальных машин. Просмотрите текущую квоту и сколько квот осталось для региона на уровне семейства виртуальных машин.

Замечание

Эта функция в настоящее время доступна в HDInsight 4.x и 5.x для региона EUAP восточной части США. Далее следуют другие регионы.

  1. Просмотр текущей квоты:

    Просмотрите текущую квоту и сколько квот осталось для региона на уровне семейства виртуальных машин.

    1. На портале Azure в верхней строке поиска выполните поиск и выберите "Квоты".

    2. На странице "Квота" выберите Azure HDInsight

      Снимок экрана: поиск квот.

    3. В раскрывающемся списке выберите подписку и регион

      Снимок экрана: выбор кластера и региона для выделения квот.

      Снимок экрана: просмотр квоты и управление ими.

  2. Запрос новых квот на семейство виртуальных машин и регион

    1. Щелкните строку, для которой нужно просмотреть сведения о квоте.

    Снимок экрана: сведения о квоте.

Quotas

Дополнительные сведения об управлении квотами подписки см. в статье Запрос увеличения квот.

Дальнейшие действия