Один из сложных вопросов – сайзинг сервера, и с проникновением виртуализации во все области он проще не стал.
Вопрос “какой сервер мне надо под <список задач>” – один из популярных.
А самая сложная, как мне видится, подсистема – дисковая. Сложность в том, что много факторов оказывает влияние, и не все очевидно. Самые, наверное, главные из простых:
1) в простом случае, когда мы говорим про сферический RAID массив в вакууме или близко к тому – мы можем довольно точно предсказать его производительность (ну или сконфигурировать RAID массив нужной нам производительности). Простые конфигурации, типа массивов на внутренних дисках серверов или простеньких систем хранения попадают в эту группу довольно хорошо.
2) в случаях посложнее, когда речь идет про СХД классом повыше, вмешиваются такие факторы как эффективность работы кэш памяти и всякие механизмы оптимизации (характерный пример – SSD кэш, на который помещаются часто используемые данные). Эти вещи могут оказать заметное влияние на производительность, и из общих соображений их учесть сложно.
Поэтому для случаев 2) следует обращаться к специализированным калькуляторам IOPS, предоставляемых поставщиком соответствующих СХД, и к опыту людей, в данной области работающих.
А вот про случай 1) оставлю памятку:
Немаловажным моментом является тестирование. Штука специфическая, из тематического приведу пару ссылок, без претензий на полноту описания вопроса:
Вопрос “какой сервер мне надо под <список задач>” – один из популярных.
А самая сложная, как мне видится, подсистема – дисковая. Сложность в том, что много факторов оказывает влияние, и не все очевидно. Самые, наверное, главные из простых:
- конфигурация RAID и количество дисков;
- тип дисков (их производительность);
- характер доступа (случайный или последовательный, какой процент операций – чтение, какой - записи).
1) в простом случае, когда мы говорим про сферический RAID массив в вакууме или близко к тому – мы можем довольно точно предсказать его производительность (ну или сконфигурировать RAID массив нужной нам производительности). Простые конфигурации, типа массивов на внутренних дисках серверов или простеньких систем хранения попадают в эту группу довольно хорошо.
2) в случаях посложнее, когда речь идет про СХД классом повыше, вмешиваются такие факторы как эффективность работы кэш памяти и всякие механизмы оптимизации (характерный пример – SSD кэш, на который помещаются часто используемые данные). Эти вещи могут оказать заметное влияние на производительность, и из общих соображений их учесть сложно.
Поэтому для случаев 2) следует обращаться к специализированным калькуляторам IOPS, предоставляемых поставщиком соответствующих СХД, и к опыту людей, в данной области работающих.
А вот про случай 1) оставлю памятку:
Сначала конкретика – утилита для расчетов
- wmarow iops & capacity - онлайн.
- Онлайн калькулятор IOPS / расчет IOPS – тот же онлайн калькулятор, но на русском.
- RAID_spindle_calculator – оффлайн.
теория про производительность
Теория про расчет IOPS
- UPD. Storage Performance.
- Storage IOPS Calculation - подсчёт IOPS, с учетом RAID пенальти.
Для расчетов нужна справочная информация по производительности одного диска-шпинделя
- Показатели IOPS отдельных дисков SATA/FC/SAS – отсюда картинка внизу
- HP Storageworks Enterprise Virtual Array (EVA) - Relative Performance of Disks Used in the EVA - в коментах на vmind.ru углядел ссылку на данные от HP для EVA. Я не могу утверждать наверняка, но сдается мне что скорость одного диска одинакова или близка к тому для любой СХД.
Немаловажным моментом является тестирование. Штука специфическая, из тематического приведу пару ссылок, без претензий на полноту описания вопроса:
- Тестирование производительности: инструменты – перечисление некоторых инструментов для нагрузочного тестирования;
- IOBlazer – экспериментальная утилита для нагрузочного тестирования дисковой подсистемы от VMware;
- Тестирование с помощью программы IOmeter – обзор главной утилиты для этого дела;
- IOmeter file access patterns- чтобы эффективно что-то измерять, нужно знать что именно. Оценивать производительность дисковой для работы на ней базы данных IOmeter’ом с настройкаи по умолчанию – плохая идея. Тут приводятся нужные настройки;
- IOmeter – параметр Align I/Os – еще один маленький нюанс использования IOmeter.
"и с проникновением виртуализации во все области он проще не стал"
ОтветитьУдалитьЯ бы добавил что с приходом виртуализации это стало сложнее !
я бы сказал что в чем то сложнее, в чем то проще - все же цена ошибки часто не так высока, как при сайзинге сервера для одной задачи.
ОтветитьУдалитьоднозначно, тем более что ошибки можно исправить с минимальным импактом
ОтветитьУдалитьЯ бы так не сказал :)
ОтветитьУдалитьВ том что касается процессоров/памяти, может и так (если вы не закладывались в 50% экономию памяти по технологиям MO, например).
А вот в том, что касается дисков, на лету (без вложений) что-то исправить сложно.
соглашусь в целом.
ОтветитьУдалить