Использование политик качества обслуживания для томов
Можно использовать политики качества обслуживания, основанные на емкости, чтобы задавать динамические ограничения для вычислительных томов. Погигабайтные политики качества обслуживания позволяют настроить производительность и пропускную способность томов в зависимости от их размера. Например, если ограничения составляют 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>
--tier {0,1,2,3}- Уровень хранилища
--encoding <M>+<N>-
Схема помехоустойчивого кодирования хранилища в формате:
M: число блоков данныхN: число паритетных блоков
--failure-domain {0,1,2,3,4}- Область отказа хранилища
--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