Облачная платформаAdvanced

Настройка Auto Scaling для кластера MRS

Язык статьи: Русский
Показать оригинал
Страница переведена автоматически и может содержать неточности. Рекомендуем сверяться с английской версией.

В сценариях применения больших данных, особенно при анализе и обработке данных в реальном времени, количество узлов кластера необходимо динамически регулировать в соответствии с изменениями объёма данных для обеспечения надлежащих ресурсов. Функция auto scaling сервиса MRS позволяет кластерам автоматически масштабироваться наружу или внутрь в зависимости от нагрузки кластера.

  • Правила auto scaling: вы можете увеличивать или уменьшать узлы Task в зависимости от нагрузки кластера в реальном времени. Auto scaling будет запускаться при изменении объёма данных, однако возможны задержки.
  • План ресурсов (установка количества узлов Task в зависимости от диапазона времени): если объём данных меняется периодически, вы можете создавать планы ресурсов для изменения размера кластера до изменения объёма данных, тем самым избегая задержек при увеличении или уменьшении ресурсов.

Вы можете настроить правила auto scaling, планы ресурсов или оба варианта для запуска auto scaling.

Сценарий

В следующем примере описывается, как использовать одновременно правила auto scaling и планы ресурсов:

Сервис обработки данных в реальном времени наблюдает нестабильный рост объёма данных с 7:00 до 13:00 в понедельник, вторник и субботу. Например, требуется от 5 до 8 узлов Task в период с 7:00 до 13:00 в понедельник, вторник и субботу, а за пределами этого периода — от 2 до 4 узлов.

Можно задать правило auto scaling, основанное на плане ресурсов. Когда объём данных превышает ожидаемое значение, количество узлов Task меняется в соответствии с нагрузкой ресурсов, не выходя за пределы диапазона узлов, указанные в плане ресурсов. При срабатывании плана ресурсов количество узлов изменяется в пределах указанного диапазона с минимальным воздействием. То есть узлы увеличиваются до верхнего предела и уменьшаются до нижнего предела.

Добавление узла Task

Вы можете масштабировать кластер MRS наружу, вручную добавляя узлы Task.

Чтобы добавить узел Task в пользовательский кластер, выполните следующие действия:

  1. На странице сведений о кластере нажмите вкладку Nodes и нажмите Add Node Group. Отобразится страница Add Node Group.
  2. Select Task forNode Type. Retain the default value NM for Deploy Roles. To deploy the NodeManager role, the node type must be Task. Set other parameters as required.

    Figure 1Добавление группы узлов Task


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

  1. На странице сведений о кластере нажмите вкладку Nodes и нажмите Configure Task Node. Отображается страница Configure Task Node.
  2. На странице Configure Task Node задайте Node Type, Instance Specifications, Nodes, System Disk. Кроме того, если включена опция Add Data Disk, настройте тип, размер и количество дисков с данными.

  3. Нажмите OK.

Использование правил автошкалирования и планов ресурсов совместно

  1. Войдите в консоль управления MRS.
  2. На странице Active Clusters нажмите имя кластера, с которым необходимо работать. Отображается страница сведений о кластере.
  3. На отображаемой странице нажмите вкладку Auto Scaling.
  4. Нажмите Add Auto Scaling Policy и задайте Node Range значение 2-4.
  5. Настройте план ресурсов.

    1. Нажмите Configure Node Range for Specific Time Range в разделе Default Range.
    2. Настройте параметры Time Range и Node Range.

      Time Range: Установите значение 07:00-13:00.

      Node Range: Установите значение 5-8.

  6. Настройте правило автошкалирования.

    1. Выберите Scale-out.
    2. Нажмите Add Rule справа.

      Rule Name: default-expand-2.

      If: Выберите объекты правила и ограничения из раскрывающихся списков, например, YARNAppRunning больше 75.

      Last For: Установите значение 1 five-minute periods.

      Add: Установите значение 1 node.

      Cooldown Period: Установите значение 20 minutes.

    3. Нажмите OK.

  7. Выберите I agree to authorize MRS to scale out or in nodes based on the above rule.
  8. Нажмите OK.

Справочная информация

При добавлении правила вы можете обратиться к Table 1 для настройки соответствующих метрик.

Note
  • Гибридные кластеры поддерживают все метрики аналитических и потоковых кластеров.
  • Точность различных типов значений в Table 1 следующая:
    • Integer: integer
    • Percentage: 0.01
    • Ratio: 0.01
Table 1 Auto scaling metrics

Cluster Type

Metric

Value Type

Description

Streaming cluster

StormSlotAvailable

Integer

Количество доступных слотов Storm.

Диапазон значений: от 0 до 2147483646.

StormSlotAvailablePercentage

Percentage

Процент доступных слотов Storm, то есть доля доступных слотов от общего количества слотов.

Диапазон значений: 0 до 100.

StormSlotUsed

Integer

Количество используемых слотов Storm.

Диапазон значений: 0 до 2147483646.

StormSlotUsedPercentage

Percentage

Процент используемых слотов Storm, то есть отношение используемых слотов к общему количеству слотов.

Диапазон значений: 0 до 100.

StormSupervisorMemAverageUsage

Integer

Среднее использование памяти процесса Supervisor в Storm.

Диапазон значений: 0 до 2147483646.

StormSupervisorMemAverageUsagePercentage

Percentage

Средний процент используемой памяти процесса Supervisor в Storm от общей памяти системы.

Диапазон значений: 0 до 100.

StormSupervisorCPUAverageUsagePercentage

Процент

Средний процент используемых CPU процесса Supervisor в Storm от общего количества CPU.

Диапазон значений: [0, 6000].

Кластер анализа

YARNAppPending

Целое число

Количество ожидающих задач в Yarn.

Диапазон значений: 0 до 2147483646.

YARNAppPendingRatio

Соотношение

Соотношение ожидающих задач в Yarn, то есть отношение количества ожидающих задач к количеству запущенных задач в Yarn.

Диапазон значений: 0 до 2147483646.

YARNAppRunning

Integer

Количество запущенных задач в Yarn.

Диапазон значений: от 0 до 2147483646.

YARNContainerAllocated

Integer

Количество контейнеров, выделенных YARN.

Диапазон значений: от 0 до 2147483646.

YARNContainerPending

Integer

Количество ожидающих контейнеров в Yarn.

Диапазон значений: от 0 до 2147483646.

YARNContainerPendingRatio

Коэффициент

Коэффициент ожидающих контейнеров в Yarn, то есть отношение количества ожидающих контейнеров к количеству запущенных контейнеров в Yarn.

Диапазон значений: 0 до 2147483646.

YARNCPUAllocated

Integer

Количество виртуальных CPU (vCPU), выделенных Yarn.

Диапазон значений: 0 до 2147483646.

YARNCPUAvailable

Integer

Количество доступных vCPU в Yarn.

Диапазон значений: 0 до 2147483646.

YARNCPUAvailablePercentage

Percentage

Процент доступных vCPU в Yarn, то есть доля доступных vCPU от общего количества vCPU.

Диапазон значений: 0 до 100.

YARNCPUPending

Integer

Количество ожидающих vCPUs в Yarn.

Диапазон значений: 0 до 2147483646.

YARNMemoryAllocated

Integer

Память, выделенная Yarn. Единица измерения — MB.

Диапазон значений: 0 до 2147483646.

YARNMemoryAvailable

Integer

Доступная память в Yarn. Единица измерения — MB.

Диапазон значений: 0 до 2147483646.

YARNMemoryAvailablePercentage

Percentage

Процент доступной памяти в Yarn, то есть отношение доступной памяти к общей памяти в Yarn.

Диапазон значений: 0 до 100.

YARNMemoryPending

Целое

Ожидающая память в Yarn.

Диапазон значений: от 0 до 2147483646.

При добавлении плана ресурсов вы можете задавать параметры, ссылаясь на Table 2.

Table 2 Элементы конфигурации плана ресурсов

Параметр

Описание

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

Дата вступления в силу плана ресурсов. Daily выбрана по умолчанию. Вы также можете выбрать один или несколько дней с понедельника по воскресенье.

Временной диапазон

Время начала и окончания плана ресурсов указывается с точностью до минут, значения находятся в диапазоне от 00:00 до 23:59. Например, если план ресурсов начинается в 8:00 и заканчивается в 10:00, задайте этот параметр как 8:00-10:00. Время окончания должно быть минимум на 30 минут позже времени начала. Временные диапазоны, настроенные для разных планов ресурсов, не могут пересекаться.

Диапазон узлов

Количество узлов в плане ресурсов находится в диапазоне от 0 до 500. В указанном в плане ресурсов временном диапазоне, если количество узлов задач меньше указанного минимального количества узлов, оно будет увеличено до заданного минимального значения диапазона узлов за один раз. Если количество узлов задач превышает максимальное количество узлов, указанное в плане ресурсов, функция автоскейлинга уменьшает количество узлов задач до максимального значения диапазона узлов за один раз. Минимальное количество узлов должно быть меньше или равно максимальному количеству узлов.