Управление IOPs при аренде виртуальной инфраструктуры. How many IOPs is enough? 07.08.2014

При аренде виртуальной инфраструктуры заказчику не всегда просто определиться с требуемым объемом ресурсов, необходимым конкретно под его задачу. Базовый набор облачных ресурсов включает в себя вычислительные ресурсы процессора, исчисляемые в GHz, оперативную память в GB и дисковое пространство ...


При аренде виртуальной инфраструктуры заказчику не всегда просто определиться с требуемым объемом ресурсов, необходимым конкретно под его задачу. Базовый набор облачных ресурсов включает в себя вычислительные ресурсы процессора, исчисляемые в GHz, оперативную память в GB и дисковое пространство в GB. Что касается дискового пространства, к выбору требуемого объема нужно подходить особенно тщательно. Так как на эффективную работу приложения влияет не сколько объем диска, сколько производительность дисковой подсистемы. Потому важно, чтобы сервис провайдер давал возможность управления IOPs-ами и раскрывал информацию об используемых дисковых массивах своей инфраструктуры.

Как же заказчику определиться с объемом и производительностью дискового пространства. 

Предположим, нашему заказчику необходимо разместить в облаке сервис, для работы которого требуется 10GHz процессорной мощности, 20GB оперативной памяти и 100GB дискового пространства. Приобретая такой сервис без заявленных характеристик производительности дисковой подсистемы, заказчик рискует столкнуться с проблемами производительности дисковой подсистемы, обусловленными скоростью носителей данных. Например, запрошенные 100GB дискового пространства возможно предоставить с использованием одного единственного физического носителя (или не менее двух для обеспечения отказоустойчивости), и производительность такого хранилища будет жестко определяться производительностью данного носителя, например, 150 IOPS. Однако, такой производительности может оказаться недостаточно для функционирования сервиса в штатном режиме либо при пиковых нагрузках. Поэтому прежде чем заказывать инфраструктуру под свои цели необходимо определиться не только с тремя основными количественными характеристиками сервиса, но и с требуемой производительностью дисковой подсистемы, исчисляемой в IOPS.

IOPS (количество операций ввода/вывода – от англ. Input/Output Operations Per Second) – один из ключевых параметров при измерении производительности систем хранения данных, жестких и твердотельных дисков и других устройств хранения.

Как заказчику понять, сколько IOPS ему необходимо?

Существует три способа определить требуемый объем дисковой подсистемы:

Если приложение уже стоит на инфраструктуре заказчика, но планируется его перенос в облако:
  • то можно выполнить сбор статистики по потреблению ресурсов, чтобы четко представлять себе, сколько IOPS осуществляется в периоды пиковой нагрузки. Варианты программных продуктов для сбора статистики приведены в конце данной статьи.
  • или можно оценить производительность традиционной дисковой подсистемы, эффективно справляющейся с нагрузкой приложения.

Если приложение изначально планируется запустить в облаке:
  • то необходимо изучить документацию и произвести теоретический расчет либо симуляцию нагрузок, если такие методики предложены производителем.

Когда заказчик имеет конкретные требования по производительности дисковой подсистемы в IOPS эти требования возможно предъявить сервис-провайдеру. Однако, в большинстве случаев, сервис провайдеры предлагают только выбор типа носителей, обеспечивающих функционирование дисковой подсистемы арендованной виртуальной инфраструктуры, что зачастую приводит к необходимости увеличивать заказанный объем дисковых ресурсов для обеспечения требуемой производительности.

Мы предоставляем возможность гибкого управления производительностью дисков виртуальных машин. Базово на 1 Gb дискового пространства предоставляется производительность в 1 IOPS. В случае нехватки такого уровня производительности для конкретного сервиса, возможно увеличить производительность, заказав дополнительные IOPS без изменения объема дискового пространства. Такая возможность обеспечивается передовыми технологиями используемых компанией ИТ-ГРАД систем хранения данных.

Справочная информация по ориентировочной производительности различных типов жестких дисков представлена в таблицах :

Устройство Тип IOPS Интерфейс
7,200 об/мин SATA-диски HDD ~75-100 IOPS SATA 3 Гбит/с
10,000 об/мин SATA-диски HDD ~125-150 IOPS SATA 3 Гбит/с
10,000 об/мин SAS-диски HDD ~140 IOPS SAS
15,000 об/мин SAS-диски HDD ~175-210 IOPS SAS

Приблизительные значения производительности для SSD: 

Устройство Тип IOPS Интерфейс
Intel X25-M G2 MLC SSD ~8 600 IOPS SATA 3 Гбит/с
OCZ Vertex 3 SSD ~60 000 IOPS (Произвольная запись 4K) SATA 6 Гбит/с
OCZ Vertex 3 MAX IOPS SSD ~75 000 IOPS (Произвольная запись 4K) SATA 6 Гбит/с
OCZ Vertex 4 SSD ~120 000 IOPS (Произвольная запись 4K) SATA 6 Гбит/с
OCZ RevoDrive 3 X2 SSD ~200 000 IOPS (Произвольная запись 4K) PCIe
OCZ Z-Drive R4 CloudServ SSD ~500 000 IOPS PCIe

При продолжительной случайной нагрузке на запись скорость падает в 2-10 раз по сравнению с заявленными характеристиками.

Программы для измерения IOPS
IOmeter — тест IOPS
IOzone — тест IOPS
FIO — тест IOPS
CrystalDiskMark — тест IOPS
SQLIO — набор тестов для расчета производительности (IOPS, MB, Latency) под сервера БД
wmarow — калькулятор RAID групп по производительности IOPS

Назад к списку статей