Использование политик качества обслуживания для томов#
Можно использовать политики качества обслуживания, основанные на емкости, чтобы задавать динамические ограничения для вычислительных томов. Погигабайтные политики качества обслуживания позволяют настроить производительность и пропускную способность томов в зависимости от их размера. Например, если ограничения составляют 5 IOPS на ГБ и 1 МБ/с на ГБ, том на 100 ГБ будет обладать производительностью 500 IOPS и пропускной способностью 100 МБ/с, тогда как том на 1 ТБ — 5 000 IOPS и 1 000 МБ/с. После увеличения размера тома, для которого заданы погигабайтные ограничения, его пропускная способность и производительность будут увеличены пропорционально размеру.
Для динамической конфигурации производительности и пропускной способности можно ограничивать следующие параметры томов:
количество операций чтения в секунду на ГБ;
количество операций записи в секунду на ГБ;
общее количество операций чтения и записи в секунду на ГБ;
количество считываемых байтов в секунду на ГБ;
количество записываемых байтов в секунду на ГБ;
общее количество считываемых и записываемых байтов в секунду на ГБ.
Кроме того, можно контролировать минимальные значения производительности и пропускной способности, чтобы гарантировать высокую производительность для томов маленького размера.
Погигабайтные политики качества обслуживания можно задавать для вычислительных томов посредством политик хранения. Можно либо создать новую политику хранения с погигабайтными ограничениями, либо можно добавить такие ограничения к существующей политике хранения.
Ограничения
Погигабайтные ограничения не применяются к существующим томам на лету. Чтобы применить их к существующему тому, остановите и запустите ВМ, к которой присоединен этот том.
В одной политике качества обслуживания можно ограничить либо общую производительность и общую пропускную способность, либо производительность и пропускную способность отдельно для чтения и отдельно для записи. Например, нельзя указать параметр
total-bytes-sec-per-gbвместе с параметромwrite-bytes-sec-per-gbилиread-bytes-sec-per-gb.
Создание погигабайтной политики качества обслуживания
Используйте следующую команду:
vinfra service compute storage-policy create --tier {0,1,2,3} (--replicas <norm> | --encoding <M>+<N>)
--failure-domain {0,1,2,3,4}
[--write-bytes-sec-per-gb <limit>] [--write-bytes-sec-per-gb-min <limit>]
[--read-bytes-sec-per-gb <limit>] [--read-bytes-sec-per-gb-min <limit>]
[--write-iops-sec-per-gb <limit>] [--write-iops-sec-per-gb-min <limit>]
[--read-iops-sec-per-gb <limit>] [--read-iops-sec-per-gb-min <limit>]
[--total-bytes-sec-per-gb <limit>] [--total-bytes-sec-per-gb-min <limit>]
[--total-iops-sec-per-gb <limit>] [--total-iops-sec-per-gb-min <limit>]
<name>
--replicas <norm>[:<min>]Схема репликации хранилища в формате:
norm— количество сохраняемых реплик,min— минимально требуемое количество реплик (необязательно).
--write-bytes-sec-per-gb <limit>Количество записываемых в секунду байтов на ГБ.
--write-bytes-sec-per-gb-min <limit>Минимальное количество записываемых в секунду байтов на ГБ.
--read-bytes-sec-per-gb <limit>Количество считываемых в секунду байтов на ГБ.
--read-bytes-sec-per-gb-min <limit>Минимальное количество считываемых в секунду байтов на ГБ.
--write-iops-sec-per-gb <limit>Количество операций записи в секунду на ГБ.
--write-iops-sec-per-gb-min <limit>Минимальное количество операций записи в секунду на ГБ.
--read-iops-sec-per-gb <limit>Количество операций чтения в секунду на ГБ.
--read-iops-sec-per-gb-min <limit>Минимальное количество операций чтения в секунду на ГБ.
--total-bytes-sec-per-gb <limit>Общее количество считываемых и записываемых в секунду байтов на ГБ.
--total-bytes-sec-per-gb-min <limit>Минимальное общее количество считываемых и записываемых в секунду байтов на ГБ.
--total-iops-sec-per-gb <limit>Общее количество операций чтения и записи в секунду на ГБ.
--total-iops-sec-per-gb-min <limit>Минимальное общее количество операций чтения и записи в секунду на ГБ.
<name>Имя политики хранения.
Например, чтобы создать политику хранения myqospolicy, в которой общее количество операций чтения и записи в секунду на ГБ — 100, минимальное общее количество операций чтения и записи в секунду на ГБ — 50, выполните:
# vinfra service compute storage-policy create myqospolicy --tier 1 --failure-domain 1 --replicas 3 \
--total-iops-sec-per-gb 100 --total-iops-sec-per-gb-min 50
Добавление погигабайтных ограничений к существующей политике хранения
Используйте команду vinfra service compute storage-policy set, указав необходимое значение для параметра, который требуется ограничить. Например, чтобы добавить к политике хранения myqospolicy погигабайтное ограничение пропускной способности в 104 857 600 байт, считываемых и записываемых в секунду, выполните:
# vinfra service compute storage-policy set myqospolicy --total-bytes-sec-per-gb 104857600
Удаление погигабайтных ограничений из существующей политики хранения
Используйте команду vinfra service compute storage-policy set, указав -1 как значение для параметра, для которого необходимо отменить погигабайтное ограничение. Например, чтобы удалить погигабайтное ограничение общей пропускной способности из политики хранения myqospolicy, выполните:
# vinfra service compute storage-policy set myqospolicy --total-bytes-sec-per-gb -1