iSCSI, программный, вопрос производительности
Модераторы: Trinity admin`s, Free-lance moderator`s
iSCSI, программный, вопрос производительности
Тестирую технологию iSCSI на предмет целесообразности внедрения,
бюджет ограничен, поэтому хотелось бы обойтись программным решением.
Сравниваю скорость случайного доступа через iSCSI и локального диска (того же, который отдается target'ом).
Скорость через iSCSI в 5 раз ниже.
По данным iometer: использую паттерн database, получаю локально:
Total I/Os per Second: 311
Total MBs per Second(Decimal): 2.55
А диск, созданный на lun на том же массиве на хосте с инициатором выдает такие результаты:
Total I/Os per Second: 75
Total MBs per Second(Decimal): 0.62
В качестве таргета использую родной таргет от windows 2003 r2,
в качестве инициатора - vmware esxi 5.
Сеть - 4 гигабитных интерфейса, сетевые карты примерно одного уровня: HP NC370Fi, соединены в multipath в round-robin. 3 интерфейса из 4 соединены напрямую патч-кордами, минуя свитч. Сетевой трафик при работе с ISCSI есть на всех интерфейсах, последовательный доступ действительно быстрее в 4 раза, чем через 1 интерфейс, а вот с произвольным доступом прироста производительности нет.
Массив на target - 5 sata-дисков в RAID-5, RAID-контроллер - Smart Array P212
Собственно вопросы:
- насколько может отличаться скорость произвольного доступа вообще iSCSI от того же массива, подключенного напрямую через контроллер к тому же хосту? Много ли я потеряю в производительности, раздавая диск через сеть?
- насколько худшие результаты показывает программный iSCSI по сравнению с аппаратным? Допустим, если я все же приобрету аппаратное решение, оправдает ли оно себя?
- что я еще упускаю? Могу ли я добиться повышения производительности? Может быть, например, стоит попробовать другую реализацию таргета или другие сетевые карты, или что-то неверно сконфигурировано?
бюджет ограничен, поэтому хотелось бы обойтись программным решением.
Сравниваю скорость случайного доступа через iSCSI и локального диска (того же, который отдается target'ом).
Скорость через iSCSI в 5 раз ниже.
По данным iometer: использую паттерн database, получаю локально:
Total I/Os per Second: 311
Total MBs per Second(Decimal): 2.55
А диск, созданный на lun на том же массиве на хосте с инициатором выдает такие результаты:
Total I/Os per Second: 75
Total MBs per Second(Decimal): 0.62
В качестве таргета использую родной таргет от windows 2003 r2,
в качестве инициатора - vmware esxi 5.
Сеть - 4 гигабитных интерфейса, сетевые карты примерно одного уровня: HP NC370Fi, соединены в multipath в round-robin. 3 интерфейса из 4 соединены напрямую патч-кордами, минуя свитч. Сетевой трафик при работе с ISCSI есть на всех интерфейсах, последовательный доступ действительно быстрее в 4 раза, чем через 1 интерфейс, а вот с произвольным доступом прироста производительности нет.
Массив на target - 5 sata-дисков в RAID-5, RAID-контроллер - Smart Array P212
Собственно вопросы:
- насколько может отличаться скорость произвольного доступа вообще iSCSI от того же массива, подключенного напрямую через контроллер к тому же хосту? Много ли я потеряю в производительности, раздавая диск через сеть?
- насколько худшие результаты показывает программный iSCSI по сравнению с аппаратным? Допустим, если я все же приобрету аппаратное решение, оправдает ли оно себя?
- что я еще упускаю? Могу ли я добиться повышения производительности? Может быть, например, стоит попробовать другую реализацию таргета или другие сетевые карты, или что-то неверно сконфигурировано?
- exLH
- Сотрудник Тринити
- Сообщения: 5061
- Зарегистрирован: 11 фев 2004, 15:49
- Откуда: Москва
- Контактная информация:
Re: iSCSI, программный, вопрос производительности
Хочется Porsche, но так как бюджет ограничен, купил пока шильдик на капот жигулей и бейсболку. Машина тупит и не едет. Неужели все так плохо?!iltmpz писал(а):Тестирую технологию iSCSI на предмет целесообразности внедрения,
бюджет ограничен, поэтому хотелось бы обойтись программным решением.
Начните хотя бы с нормального iscsi таргета (к примеру StarWind) и сравнивайте его производительность с шарой через CIFS.
Почтовый адрес для связи: a.ivanov@trinitygroup.ru | ICQ: 112586598
Re: iSCSI, программный, вопрос производительности
Мысль понял, хотите сказать, что стандартный виндовый программный target от microsoft вообще не имеет права на существование для продакшена?exLH писал(а):Хочется Porsche, но так как бюджет ограничен, купил пока шильдик на капот жигулей и бейсболку.
И начинать поиски проблемы нужно именно с замены таргета, а не, например, инициатора или сети?
Понял, спасибо, тогда попробую со StarWind начать, благо для теста пока и бесплатной версии хватит.exLH писал(а):Начните хотя бы с нормального iscsi таргета (к примеру StarWind) и сравнивайте его производительность с шарой через CIFS.
Только с шарой cifs не совсем актуально - хотелось бы понять, насколько iSCSI сравним все же с локальным массивом. Или даже и пытаться смысла нет - от 5-кратной потери производительности избавиться не смогу?
- exLH
- Сотрудник Тринити
- Сообщения: 5061
- Зарегистрирован: 11 фев 2004, 15:49
- Откуда: Москва
- Контактная информация:
Re: iSCSI, программный, вопрос производительности
Ну смотря как важен продакшн для компании.iltmpz писал(а):что стандартный виндовый программный target от microsoft вообще не имеет права на существование для продакшена?
А право на существование конечно имеет. Если есть различие в производительности на случайном доступе, то различие это с очень высокой вероятностью обусловлено наличием (или отсутствием) кэширования в одном из тестов. Внимательнее к условиям.
Почтовый адрес для связи: a.ivanov@trinitygroup.ru | ICQ: 112586598
Re: iSCSI, программный, вопрос производительности
Поставил Starwind-таргет, настроил lun - теперь производительность произвольного доступа через iSCSI всего в полтора раза ниже, чем напрямую. Уже хороший результат. Интересно, можно ли достичь лучшего?
Re: iSCSI, программный, вопрос производительности
Можно еще пооптимизировать: http://www.starwindsoftware.com/forums/ ... t2293.html
Re: iSCSI, программный, вопрос производительности
доброго всем. возникло пара вопросов теоретического характера по производительности HA кластера Starwind (т.е вопрос скорее относиться к как таковой производительности SAN iSCSI, а starwind выбран как более или менее адекватного iscsi таргета на windows)
У нас не большая компания (на границе с малым предприятиям) в 60 PC (45 ПК с windows) и с 10 виндовых северов на 2003. Предполагается построить HA кластер ESX и виртуализировать имеющиеся сервера.
Среди серверов виндовый терминальник (15 юзеров в онлайн), БД Oracle 9i (БД небольшая, дамп в 300 Мб, одновременная работа порядка 30 человек), пара КД (AD+DNS+DHCP). Т.е в принципе тяжеловесных дисковых операций нет.
Дано (точнее будет приобретаться)
1. 2 ESX хоста с каналами по 4Гбит\с ( ЦП intel xeon E5620, 16 гб ОЗУ, ОС гипервизора на raid 1 на sata 10000 rpm)
2. 2 сервера под ноды Starwind - ЦП Xeon X3420 + 4Гб ОЗУ+ 8 Гбит\с канал (агрегация двух 4х портовых сетевых карт на гигабит)+ RAID 1 из 2х SATA HDD 7200 RPM 1 Tb под основные хранилища (займет весь объем). Сама ОС тоже на Sata hdd 7200 rpm
3. коммутатор на 24 порта по гигабиту
Надо : отказоустойчивый кластер хранения для HA кластера ESXi
Предполагается :
Воткнуть и агрегировать все патчкорды от ESX серверов и нод StarWind в коммутатор.
подобная схема жизнеспособна в продакшене? или будет феерично тупить?
PS если не хватает вводных данных- говорите- я выясню
У нас не большая компания (на границе с малым предприятиям) в 60 PC (45 ПК с windows) и с 10 виндовых северов на 2003. Предполагается построить HA кластер ESX и виртуализировать имеющиеся сервера.
Среди серверов виндовый терминальник (15 юзеров в онлайн), БД Oracle 9i (БД небольшая, дамп в 300 Мб, одновременная работа порядка 30 человек), пара КД (AD+DNS+DHCP). Т.е в принципе тяжеловесных дисковых операций нет.
Дано (точнее будет приобретаться)
1. 2 ESX хоста с каналами по 4Гбит\с ( ЦП intel xeon E5620, 16 гб ОЗУ, ОС гипервизора на raid 1 на sata 10000 rpm)
2. 2 сервера под ноды Starwind - ЦП Xeon X3420 + 4Гб ОЗУ+ 8 Гбит\с канал (агрегация двух 4х портовых сетевых карт на гигабит)+ RAID 1 из 2х SATA HDD 7200 RPM 1 Tb под основные хранилища (займет весь объем). Сама ОС тоже на Sata hdd 7200 rpm
3. коммутатор на 24 порта по гигабиту
Надо : отказоустойчивый кластер хранения для HA кластера ESXi
Предполагается :
Воткнуть и агрегировать все патчкорды от ESX серверов и нод StarWind в коммутатор.
подобная схема жизнеспособна в продакшене? или будет феерично тупить?
PS если не хватает вводных данных- говорите- я выясню
- gs
- Сотрудник Тринити
- Сообщения: 16650
- Зарегистрирован: 23 авг 2002, 17:34
- Откуда: Москва
- Контактная информация:
Re: iSCSI, программный, вопрос производительности
А что мешает просто купить обычный сторадж типа IBM DS3500? Два хоста можно прицепить на штатные сас порты.
Re: iSCSI, программный, вопрос производительности
gs писал(а):А что мешает просто купить обычный сторадж типа IBM DS3500? Два хоста можно прицепить на штатные сас порты.
- цена (вариант описанный мною- стоимостью в 200 тыс.р, предложенный обычный сторадж в минимальной конфигурации с 2мя hdd (пусть и sas) стоит от 5000 у.е.)
уже имеющиеся HDD (пусть и на sata)
отсутствие 2й ноды
- kim_aa
- Advanced member
- Сообщения: 118
- Зарегистрирован: 24 ноя 2011, 16:30
- Откуда: Санкт-Петербург
- Контактная информация:
Re: iSCSI, программный, вопрос производительности
Собственно вопросы:
- насколько может отличаться скорость произвольного доступа вообще iSCSI от того же массива, подключенного напрямую через контроллер к тому же хосту? Много ли я потеряю в производительности, раздавая диск через сеть?
1) Зависит от многих параметров. В вашем случае вопрос в Windows - у нее очень длинный стек ввода вывода и сетвой стек. Да и сервер у вас не специализированн
(т.е. это не чистая хранилка).
Если собирать iSCSI таргет, то лучше на Solaris, OpenSolaris, Linux
- насколько худшие результаты показывает программный iSCSI по сравнению с аппаратным? Допустим, если я все же приобрету аппаратное решение, оправдает ли оно себя?
2) Вобще задача iSCSI HBA (как всякого HBA) разгрузить процессор. Такую железяку имеет смысл втыкать на нагруженных клиентов и если она поддерживает 10G.
3) Чисто "аппаратных" решений сейчас нет, в любом случае внутри есть ОС.
Весь вопрос в правильной настройке акселерации.
- что я еще упускаю? Могу ли я добиться повышения производительности? Может быть, например, стоит попробовать другую реализацию таргета или другие сетевые карты, или что-то неверно сконфигурировано
см. пунк 1, но разница все равно будет.
Кстати, вы знаете, что у ESXi нет честного multipathinga?
Там делается по 1000 циклов на каждом канале с переключением на следующий.
Т.е. ни о каком одновременном чтении/записи речи не идет.
Так же словосочетание round-robin сразу же не подразумевает параллельное чтение по нескольким каналам.
Во-вторых само использование словосочетание "multipathing" в современных ОС - это гнусный обман, правильнее называть его "dual-pathing". Для реализации именно "multipathing" требуется покупка дополнительного ПО.
- насколько может отличаться скорость произвольного доступа вообще iSCSI от того же массива, подключенного напрямую через контроллер к тому же хосту? Много ли я потеряю в производительности, раздавая диск через сеть?
1) Зависит от многих параметров. В вашем случае вопрос в Windows - у нее очень длинный стек ввода вывода и сетвой стек. Да и сервер у вас не специализированн
(т.е. это не чистая хранилка).
Если собирать iSCSI таргет, то лучше на Solaris, OpenSolaris, Linux
- насколько худшие результаты показывает программный iSCSI по сравнению с аппаратным? Допустим, если я все же приобрету аппаратное решение, оправдает ли оно себя?
2) Вобще задача iSCSI HBA (как всякого HBA) разгрузить процессор. Такую железяку имеет смысл втыкать на нагруженных клиентов и если она поддерживает 10G.
3) Чисто "аппаратных" решений сейчас нет, в любом случае внутри есть ОС.
Весь вопрос в правильной настройке акселерации.
- что я еще упускаю? Могу ли я добиться повышения производительности? Может быть, например, стоит попробовать другую реализацию таргета или другие сетевые карты, или что-то неверно сконфигурировано
см. пунк 1, но разница все равно будет.
Кстати, вы знаете, что у ESXi нет честного multipathinga?
Там делается по 1000 циклов на каждом канале с переключением на следующий.
Т.е. ни о каком одновременном чтении/записи речи не идет.
Так же словосочетание round-robin сразу же не подразумевает параллельное чтение по нескольким каналам.
Во-вторых само использование словосочетание "multipathing" в современных ОС - это гнусный обман, правильнее называть его "dual-pathing". Для реализации именно "multipathing" требуется покупка дополнительного ПО.
Re: iSCSI, программный, вопрос производительности
поясните, пожалуйста, что это за "современные ОС" и в чем обман? а также - какое "дополнительное ПО" требуется?kim_aa писал(а): Во-вторых само использование словосочетание "multipathing" в современных ОС - это гнусный обман, правильнее называть его "dual-pathing". Для реализации именно "multipathing" требуется покупка дополнительного ПО.
Re: iSCSI, программный, вопрос производительности
У нас ценник на такое решение с двумя 300GB SAS 15K rpm дисками получается в районе 10 тыс долларов. Если вопрошателю хватает IOPS и capacity двух COTS серверов по $1500 с 1TB SATA raw capacity, с ПО получается вместе в районе $5 тыс, зачем инвестировать еще 5 тыс $ в IT индустрию? ОК, IBM расширяется до 192 дисков, но оно ему надо?
gs писал(а):А что мешает просто купить обычный сторадж типа IBM DS3500? Два хоста можно прицепить на штатные сас порты.
Re: iSCSI, программный, вопрос производительности
Это миф, который активно продвигают те, кто продает FC. Маржа на FC решениях существенно больше, поэтому просто сразу говорите, что денег на FC у вас нет, продвигатели тут же успокаиваются и продают вам iSCSI ))
10 GbE не будет сильно хуже, чем 8 Gb FC. NetApp верите? Вот почитайте:
https://communities.netapp.com/communit ... erformance
а обойдется существенно дешевле. За это "существенно дешевле" вы можете число 10 GbE портов удвоить и сделать свою 10 GbE конфигурацию сильно лучше удвоив еще избыточность и пропускную способность ))
10 GbE не будет сильно хуже, чем 8 Gb FC. NetApp верите? Вот почитайте:
https://communities.netapp.com/communit ... erformance
а обойдется существенно дешевле. За это "существенно дешевле" вы можете число 10 GbE портов удвоить и сделать свою 10 GbE конфигурацию сильно лучше удвоив еще избыточность и пропускную способность ))
dreamond писал(а):gs писал(а):А что мешает просто купить обычный сторадж типа IBM DS3500? Два хоста можно прицепить на штатные сас порты.PS не смотря на то, что мне не хватает практического опыта по SAN, тот опыт который есть говорит что FC лучше, чем предложенный мною вариант, однако "лучше" не значит "достаточный" . В общем вопрос остается актуальным.
- цена (вариант описанный мною- стоимостью в 200 тыс.р, предложенный обычный сторадж в минимальной конфигурации с 2мя hdd (пусть и sas) стоит от 5000 у.е.)
уже имеющиеся HDD (пусть и на sata)
отсутствие 2й ноды
Re: iSCSI, программный, вопрос производительности
Кстати, вы знаете, что у ESXi нет честного multipathinga?
* Я не знаю! Почему нету?
Там делается по 1000 циклов на каждом канале с переключением на следующий.
* IOPS параметр с дефолтового 1000 на 1, 2 или 5 менять не пробовали? С 4.1 AFAIK
Т.е. ни о каком одновременном чтении/записи речи не идет.
* Почему? VMFS блоками по 2 мегабайта работает - довольно сложно представить себе очередь из 1 запроса с сериализацией.
Так же словосочетание round-robin сразу же не подразумевает параллельное чтение по нескольким каналам.
* Подразумевает переход на другой канал после достижения трешхолд. Если IOPS = 2, а каналов два (А) и (В), то
будет на 4 запросах 1А, 2А, 3В, 4В. Все каналы задействованы. В чем проблема-то?
Во-вторых само использование словосочетание "multipathing" в современных ОС - это гнусный обман, правильнее называть его "dual-pathing". Для реализации именно "multipathing" требуется покупка дополнительного ПО.
* Странно... У нас вот и на 4 каналах все работает... Чего-то делаем не так? ))
* Я не знаю! Почему нету?
Там делается по 1000 циклов на каждом канале с переключением на следующий.
* IOPS параметр с дефолтового 1000 на 1, 2 или 5 менять не пробовали? С 4.1 AFAIK
Т.е. ни о каком одновременном чтении/записи речи не идет.
* Почему? VMFS блоками по 2 мегабайта работает - довольно сложно представить себе очередь из 1 запроса с сериализацией.
Так же словосочетание round-robin сразу же не подразумевает параллельное чтение по нескольким каналам.
* Подразумевает переход на другой канал после достижения трешхолд. Если IOPS = 2, а каналов два (А) и (В), то
будет на 4 запросах 1А, 2А, 3В, 4В. Все каналы задействованы. В чем проблема-то?
Во-вторых само использование словосочетание "multipathing" в современных ОС - это гнусный обман, правильнее называть его "dual-pathing". Для реализации именно "multipathing" требуется покупка дополнительного ПО.
* Странно... У нас вот и на 4 каналах все работает... Чего-то делаем не так? ))
kim_aa писал(а):Собственно вопросы:
- насколько может отличаться скорость произвольного доступа вообще iSCSI от того же массива, подключенного напрямую через контроллер к тому же хосту? Много ли я потеряю в производительности, раздавая диск через сеть?
1) Зависит от многих параметров. В вашем случае вопрос в Windows - у нее очень длинный стек ввода вывода и сетвой стек. Да и сервер у вас не специализированн
(т.е. это не чистая хранилка).
Если собирать iSCSI таргет, то лучше на Solaris, OpenSolaris, Linux
- насколько худшие результаты показывает программный iSCSI по сравнению с аппаратным? Допустим, если я все же приобрету аппаратное решение, оправдает ли оно себя?
2) Вобще задача iSCSI HBA (как всякого HBA) разгрузить процессор. Такую железяку имеет смысл втыкать на нагруженных клиентов и если она поддерживает 10G.
3) Чисто "аппаратных" решений сейчас нет, в любом случае внутри есть ОС.
Весь вопрос в правильной настройке акселерации.
- что я еще упускаю? Могу ли я добиться повышения производительности? Может быть, например, стоит попробовать другую реализацию таргета или другие сетевые карты, или что-то неверно сконфигурировано
см. пунк 1, но разница все равно будет.
Кстати, вы знаете, что у ESXi нет честного multipathinga?
Там делается по 1000 циклов на каждом канале с переключением на следующий.
Т.е. ни о каком одновременном чтении/записи речи не идет.
Так же словосочетание round-robin сразу же не подразумевает параллельное чтение по нескольким каналам.
Во-вторых само использование словосочетание "multipathing" в современных ОС - это гнусный обман, правильнее называть его "dual-pathing". Для реализации именно "multipathing" требуется покупка дополнительного ПО.
Re: iSCSI, программный, вопрос производительности
Проблем вижу "с ходу" две:
1) не надо аггрегировать гигабиты по 4 штуки - попробуйте взять 10 гигабит. Как минимум пару для построения бэкбона на старвинде (для хартбита и резервного канала можно гигабит взять). Никакие транки на бэкбон ставить не надо, с 5.8 уже MPIO идет собственный (MS медленный). Народ вот радуется:
http://www.starwindsoftware.com/forums/ ... t2691.html
2) у вас явно не хватит IOPS при миграции physical -> virtual. SATA диски у нас 50 IOPS, RAID1 добавит на чтении 20-30%, правильный мультипас на две ноды почти удвоит все. Я вижу 120 IOPS, а реально 100. IMHO у вас все встанет раком. SAS нужен (( Вот тут:
http://blogs.hds.com/claus/2011/09/putt ... -view.html
не самая лучшая статья про расчет производительности систем, но математика объяснена верно.
Вообще собирайте тестовый стенд и пробуйте (присейлз все равно бесплатный). Не понравится - разберете и поставите OpenIndiana + ZFS )
1) не надо аггрегировать гигабиты по 4 штуки - попробуйте взять 10 гигабит. Как минимум пару для построения бэкбона на старвинде (для хартбита и резервного канала можно гигабит взять). Никакие транки на бэкбон ставить не надо, с 5.8 уже MPIO идет собственный (MS медленный). Народ вот радуется:
http://www.starwindsoftware.com/forums/ ... t2691.html
2) у вас явно не хватит IOPS при миграции physical -> virtual. SATA диски у нас 50 IOPS, RAID1 добавит на чтении 20-30%, правильный мультипас на две ноды почти удвоит все. Я вижу 120 IOPS, а реально 100. IMHO у вас все встанет раком. SAS нужен (( Вот тут:
http://blogs.hds.com/claus/2011/09/putt ... -view.html
не самая лучшая статья про расчет производительности систем, но математика объяснена верно.
Вообще собирайте тестовый стенд и пробуйте (присейлз все равно бесплатный). Не понравится - разберете и поставите OpenIndiana + ZFS )
dreamond писал(а):доброго всем. возникло пара вопросов теоретического характера по производительности HA кластера Starwind (т.е вопрос скорее относиться к как таковой производительности SAN iSCSI, а starwind выбран как более или менее адекватного iscsi таргета на windows)
У нас не большая компания (на границе с малым предприятиям) в 60 PC (45 ПК с windows) и с 10 виндовых северов на 2003. Предполагается построить HA кластер ESX и виртуализировать имеющиеся сервера.
Среди серверов виндовый терминальник (15 юзеров в онлайн), БД Oracle 9i (БД небольшая, дамп в 300 Мб, одновременная работа порядка 30 человек), пара КД (AD+DNS+DHCP). Т.е в принципе тяжеловесных дисковых операций нет.
Дано (точнее будет приобретаться)
1. 2 ESX хоста с каналами по 4Гбит\с ( ЦП intel xeon E5620, 16 гб ОЗУ, ОС гипервизора на raid 1 на sata 10000 rpm)
2. 2 сервера под ноды Starwind - ЦП Xeon X3420 + 4Гб ОЗУ+ 8 Гбит\с канал (агрегация двух 4х портовых сетевых карт на гигабит)+ RAID 1 из 2х SATA HDD 7200 RPM 1 Tb под основные хранилища (займет весь объем). Сама ОС тоже на Sata hdd 7200 rpm
3. коммутатор на 24 порта по гигабиту
Надо : отказоустойчивый кластер хранения для HA кластера ESXi
Предполагается :
Воткнуть и агрегировать все патчкорды от ESX серверов и нод StarWind в коммутатор.
подобная схема жизнеспособна в продакшене? или будет феерично тупить?
PS если не хватает вводных данных- говорите- я выясню
Кто сейчас на конференции
Сейчас этот форум просматривают: Google [Bot] и 30 гостей