Балансировка нагрузки на диски

В YDB балансировать нагрузку на диски можно двумя способами:

Распределить нагрузку равномерно по группам

На странице Hive web-viewer, в нижней части экрана есть кнопка "Reassign Groups".

Распределить VDisk'и равномерно по устройствам

В результате некоторых операций, например декомиссии, VDisk'и могут быть распределены на блочных устройствах неравномерно. Улучшить равномерность распределения можно одним из способов:

  • Перевезти VDisk'и по одному с перегруженных устройств.

  • Воспользоваться утилитой YDB DSTool. Следующая команда перевезет VDisk с перегруженного устройства на менее нагруженное:

    ydb-dstool -e <bs_endpoint> cluster balance
    

    Команда перевозит не более одного VDisk'а за один запуск.

Изменение количествa слотов для VDisk'ов на PDisk'ах

Для добавления групп хранения требуется переопределить конфиг хоста, увеличив для него количество слотов на PDisk'ах.

Перед этим требуется получить изменяемые конфиг, это можно сделать следующей командой:

Command {
  TReadHostConfig{
    HostConfigId: <host-config-id>
  }
}
ydbd -s <endpoint> admin bs config invoke --proto-file ReadHostConfig.txt

Требуется вставить полученный конфиг в протобуф ниже и поменять в нем поле PDiskConfig/ExpectedSlotCount.

Command {
  TDefineHostConfig {
    <хост конфиг>
  }
}
ydbd -s <endpoint> admin bs config invoke --proto-file DefineHostConfig.txt