Автоматическое масштабирование подкластеров
Yandex Data Proc начиная с версии 1.2 поддерживает автоматическое масштабирование compute-подкластеров. Сервис работает с использованием Instance Groups и позволяет на основе показателей загруженности процессоров увеличить или уменьшить в кластере количество хостов. Правила масштабирования задаются отдельно для каждого подкластера.
Более подробно о Instance Groups можно узнать в документации.
Для проведения операций необходимо использовать сервисный аккаунт с правами editor
, под которым будут происходить операции. Такую роль необходимо назначить в дополнении к роли dataproc.agent
.
Для автоматического масштабирования можно настроить следующие параметры:
- Начальный размер группы и он же минимальный размер группы.
- Таймаут декомиссии. Задаётся в секундах. Максимальное значение — сутки, то есть 86400 секунд. По умолчанию 2 минуты.
- Тип виртуальных машин: стандартные или прерываемые
- Максимальный размер группы.
- Промежуток измерения нагрузки, за который следует усреднять замеры нагрузки для каждой виртуальной машины в группе.
- Время на разогрев ВМ. В течение этого времени после запуска виртуальной машины данные с этой машины не будут использоваться. Вместо них будут использоваться средние значения метрики в группе.
- Период стабилизации, в минутах или секундах — период, в течение которого требуемое количество ВМ в группе не может быть снижено.
При настройке правил автоматического масштабирования следует учитывать базовую нагрузку на подкластер и необходимую минимальную производительность подкластера. Когда загрузка vCPU превысит заданный порог, в подкластер добавляются новые хосты в соотвествии правилом. Новые хосты могут быть использованы в YARN кластере с Apache Spark, Apache Hive как только хосты перейдут в статус Alive
. Когда загрузка vCPU опустится ниже указанного порога, запустится процесс уменьшения автомасштабируемого подкластера: на части узлов подкластера будет запущена декомиссия, таймаут для которой указывается при создании подкластера. После успешного завершения декомиссии (корректного вывода узлов из кластера), выведенные хосты будут удалены.