ИТ-технологии для профессионалов

Показаны сообщения с ярлыком DS4000. Показать все сообщения
Показаны сообщения с ярлыком DS4000. Показать все сообщения

вторник, 30 октября 2012 г.

IBM: очередная эпоха СХД подходит к концу

Век систем хранения, использующих Fibre Channel диски в качестве бэкенда, неумолимо подходит к концу. Один из немногих оставшихся оплотов практически пал - IBM с 29го января 2013 года снимает с продаж долго служившие верой и правдой системы хранения серии DS5100 и DS5300. Линейка DS5000 долгое время являлась “топовым” решением для MidRange СХД – расширенный функционал, высокая производительность и хорошая масштабируемость давали на это полное право. Однако, все меняется и сейчас, используя кластеризованную систему Storwize V7000 можно получить не только 960 дисков, но и заметно более интересные программные возможности. Владельцам DS5000 расстраиваться не стоит – системы действительно очень приличные, а дисковые полки для апгрейда с продаж не снимаются и остаются доступными к заказу.

Но кому нужно беспокоится, так это владельцам систем DS4000 (а такие еще есть и СХД эти встречаются у заказчиков часто) – дисковые полки для них (EXP810) снимаются с продаж уже в декабре этого года. Так что, если стоит задача продлить жизнь системе – пора принимать решение и быстрее делать заказ.

Если нужно увеличить емкость или продлить сервисную поддержку на СХД серии DS4700/DS4800 или IBM DS5100/DS5300 – обращайтесь к нам сейчас, не дожидаясь окончания гарантии!

Читать дальше ...

вторник, 26 апреля 2011 г.

IBM Storage Partitioning

Все, кто хотя бы раз сталкивался с системами хранения IBM, наверняка знает (или хоты бы хоть раз встречал) термин "Storage Partitions". Но зачастую даже те, кто с системой уже работал, не всегда правильно понимают его смысл. Поэтому сегодня несколько слов про эти самые "партиции".
Для всех систем DS3000/4000/5000 всегда при заказе присутствует некоторое количество Storage Partitions (от двух и более). Даже если явно в спецификации такой позиции нет, значит есть некоторое их количество, которое включено в системе по умолчанию. Я буду использовать термин лицензия (как и в англоязычном варианте, хотя правильнее наверное говорить про "активируемая кодом опция", так как это не право пользования, а именно активация).

image
Самая распространенная ошибка - мнение, что эта лицензия ограничивает каким-то образом число массивов или LUNов, которые можно создать. Это конечно же не так! Но давайте по порядку.
Обычно система хранения используется для подключения сразу нескольких серверов. Если это различные серверы, например Windows с MS SQL и Linux c Oracle, то каждый сервер должен иметь доступ только к своим дискам (LUN) на системе хранения. Можно конечно не монтировать "чужие" диски на серверах, можно в настройках FC адаптеров серверов отключать доступ к "чужим" дискам, некоторые коммутаторы также позволяют "фильтровать" LUNы для серверов. Все эти методы имеют существенный недостаток - любая ошибка в настройках или любое неосторожное действие с "чужим" LUN может полностью уничтожить данные на этом томе. Кроме того, "своими" для одного сервера будут нужны например LUN 0 и 3, для другого 1, 7 и 2, а для третьего - 4, 5 и 6. В некоторых операционных системах из-за этого (номера LUN идут не подряд и начинаются не с нуля) могут возникнуть проблемы.
Напрашивается логичное и правильное решение - использовать так называемый LUN mapping (с данными термином путаницы меньше и его практически всегда трактуют правильно). Суть состоит в том, что для каждого сервера создается список wwn портов HBA и ему сопоставляется список LUN, которые будут доступны для данного сервера. Для каждого сервера теперь LUN могут начинаться с 0 и идти подряд. Более того, теперь никакие настройки на сервере не нужны - сервер всегда видит свои и только свои LUN.
Так что же такое Storage Partitions? А это и есть то количество сопоставлений, которые можно сделать на данной системе хранения. Т.е. если мы будем подключать к системе хранения 3 независимых сервера, то нам достаточно 3х Storage partitions:

image

Почему именно независимых серверов? Очень просто: если нужно подключить два (или 3, или  10) сервера в кластер, так чтобы они имели доступ к одним и тем же дискам на СХД, то задействована будет только одна Storage Partition. Таким образом, говорить что на 10 серверов нужно именно 10 Storage Partitions не всегда правильно. На снимке – настройки Mapping для кластера из двух серверов, которые имеют доступ к одним и тем же дискам:

imageКак видим, для этого требуется только одна Storage partition:

imageНемного сложнее ситуация когда есть кластер из нескольких серверов и они должны не только иметь доступ к идентичному набору дисков, но каждый из этих серверов должен еще и иметь загрузочный диск на системе хранения (т.е. LUN0 должен быть у каждого сервера "свой", а все остальные - общие).

image

В этом случае для кластера из N серверов потребуется уже N+1 Storage Partitions. N активаций задействуется для предоставления загрузочного диска каждому из серверов и еще одна требуется для доступа к "общим" дискам.

image

В нашем примере мы задействовали 3 Storage Partitions на кластер из двух серверов. Количество задействованных в нашей конфигурации Storage Partitions легко определить визуально в Storage Manager на закладке Mapping - для каждой задействованной лицензии на экране в закладке Mapping радом с сервером или группой серверов будет вот такой значок image.
Ограничение на использование SP жесткое, т.е. задействовать больше лицензий, чем было куплено, нельзя и необходимо при планировании учитывать этот параметр, заказывая по мере необходимости дополнительные лицензии.
Максимальное число Storage Partitions для разных систем различно, более того, иногда максимум увеличивается с очередной новой прошивкой, но оно достаточно большое, чтобы вероятность его достижения была весьма мала – например для DS5300 можно активировать 512 partitions, а для DS3500 – 64 (и уже совсем скоро будет еще больше).
Если система была изначально заказана с 4мя Storage Partitions, а скоро нужно будет 6, ничего страшного - достаточно просто заказать активацию дополнительных SP. Правда есть одна тонкость: активация поставляется в бумажном виде и в большинстве случаев придется ждать эту бумагу два месяца, поэтому озаботится желательно заранее, а не за два дня до установки новых серверов. На СХД могут быть активированы только 2, 4, 8, 16, 32, 64, 128… Storage Partitions, поэтому если для реализации проекта необходимо будет 11 Storage Partitions, то заказать нужно 16 или больше.

Читать дальше ...

среда, 19 мая 2010 г.

Управлять СХД – просто!

Если используется одна система хранения, то управлять ей конечно несложно! 

А вот если их три или и того побольше? — Как осуществлять мониторинг систем, чтобы не допускать ситуации, когда нагрузка становится фактически предельной, а жизнь пользователей становиться безрадостной? 

Если у вас используются системы IBM, то существует такой замечательный продукт как Tivoli Storage Productivity Center (TPC)

Tivoli Storage Productivity Center (TPC)

По сути это даже не один продукт, а несколько разных: TPC Basic Edition, TPC for Data, TPC for Disk, TPC for Replication, TPC Standard Edition. 

TPC for Disk как раз позволяет следить за состоянием СХД и их производительностью, а также получать алерты и всевозможные отчеты. 

Проблема в том, что для СХД начального и среднего уровня цена TPC for Disk была до недавнего момента явно высокая (учитывая тот факт, что лицензируется весь объем дискового пространства). 

И вот, совсем недавно (14-го мая) была анонсирована еще одна версия: TPC for Disk MidRange Edition (TPC for Disk MRE). 

Отличие ее от “старшего” брата состоит в том, что, во-первых, поддерживаются только системы DS3000/4000/5000, а во-вторых, (и это, на мой взгляд, основное) лицензирование осуществляется по устройствам. Т.е. фактически нужно просто сложить количество контроллерных и дисковых полок и умножить результат на стоимость лицензии. 

Цена лицензии

В большинстве случаев цена получается ниже примерно в два раза (а если используются SATA диски большого объема, то разница в цене может быть и в несколько раз). В результате, можно централизованно (с интервалом до 5-ти минут) получать следующие данные:

  • производительность контроллеров (число операций ввода-ввывода)
  • производительность контроллеров (скорость передачи данных)
  • процент попадания в кэш
  • производительность отдельных портов контроллеров

Качество предоставления сервисов

Проактивный мониторинг состояния и производительности позволяет существенно упростить управление инфраструктурой, а главное – дает возможность повысить качество предоставления сервисов.



Читать дальше ...

понедельник, 18 января 2010 г.

Полезное чтиво про IBM DS4000/DS5000

IBM опубликовал сразу 4 драфта новых книжек про системы хранения среднего уровня (DS4000/DS5000), которые должны занять достойное место в подборке документации администраторов СХД:

По сравнению с тем, что уже можно было найти в “редбуках” ранее, собрана вместе информация по новым системам в линейке DS4000/DS5000 и подробно описаны все нововведения. Две последние работы довольно узко специализированы: в одной подробнейшим образом изложен механизм работы мгновенных снимков и клонирования (в т.ч. и между системами), а вторая посвящена виртуализации на базе VMware ESX/ESXi. В принципе, обе книги не содержат радикально новой информации (по крайней мере, я не увидел ничего, что не встречалось бы в выпущенной ранее документации), однако прочитать и держать под рукой эти материалы полезно. Тем же, кто впервые развертывает VMware на системах IBM DS4000/5000 читать просто необходимо – в соответствующей книге собран вместе обширный материал, который позволит гораздо лучше понять что и как делать. Не оставлен в стороне и вопрос выбора (и оптимизации) настроек дисковой системы для повышения производительности.

Наибольший же интерес, на мой взгляд, должны представлять первые две книги – изложенный материал позволяет гораздо лучше понять, как именно устроены дисковые системы IBM и как с ними нужно работать. Тем, кто впервые сталкивается с системами IBM, очень поможет описание термина “Storage Partitions”, который часто вызывает проблемы в понимании. Объясняется множество вопросов, которые могут возникнуть в процессе подбора конфигурации. Поэтому эти две книги полезны не только пользователям систем, но и пресейлам – правильно подобрать конфигурацию тоже бывает непросто. Отдельная глава посвящена RSM (Remote Support Manager), продукту который пока не слишком популярен на наших просторах, но ситуация должна постепенно меняться.

Администраторам будет интересно прочитать про процедуру обновления прошивок, конфигурацию коммутаторов и настройку СХД в связке с различными операционными системами (в т.ч. есть и пример настройки кластера Windows 2008 при загрузке с SAN). До недавнего момента в многочисленных книжках IBM встречалась рекомендация подключать контроллер A к одному коммутатору, а контроллер B – ко второму. Мне такая схема всегда казалась не очень правильной (хотя она и обеспечивала отказоустойчивость) так как при этой настройке, выход из строя коммутатора, обрыв кабеля от сервера к коммутатору или выход из строя адаптера в сервере гарантированно приводит к переносу LUN’а между контроллерами, что может вызвать проблемы производительности. Поэтому я всегда рекомендовал подключать каждый контроллер к каждому коммутатору и терпеливо объяснял свою позицию внимательным читателям документации. Сейчас же был приятно удивлен – теперь везде приводится рисунок с “правильным” подключением:

imageТакже очень полезной будет и глава по определению неисправностей и их устранению. Не секрет, что зачастую вопрос обслуживания ложится на хрупкие плечи системного администратора – либо по каким-то причинам не был куплен сервисный пакет, либо система находится далеко и времени на ожидание ответа от сервиса нет, да и много других причин может быть.

Можно найти и очень много подробных описаний по оптимизации настроек СХД для тех или иных приложений. Но отдельного упоминания заслуживает вопрос сайзинга, т.е. подбора конфигурации под имеющуюся (планируемую) нагрузку. Здесь и работа с монитором производительности в Storage Manager (Performance Monitor), и IBM Tivoli Storage Producivity Center for Disk. Детально объясняется работа с такой полезной утилитой для сайзинга как Disk Magic (впрочем, я не уверен что она доступна пользователям, но имеющие доступ на IBM Partnerworld могут ее оттуда скачать). Даже если доступа к утилите у Вас и нет, Вы можете собрать необходимые данные и отправить их интегратору, чтобы он провел для необходимый расчет и подобрал нужную конфигурацию, которая обеспечит должный “запас прочности”.

Так как упомянутые книги это пока только драфты, то читать их конечно нужно, но и следить за обновлениями тоже не помешает!

Читать дальше ...

вторник, 18 августа 2009 г.

IBM DS4700-70 проверка скорости работы КЭШа системы

Понятно что в любой дисковой системе, скорость работы КЭШа системы намного выше чем скорость работы дисков в этой системе. Обычно характеристик производительности дисковой системы в IOPS указываемые изготовителем в маркетинговых документов соответствуют скорости работы системы при максимально выгодной для неё нагрузке, чаще всего это последовательное чтение при удобном размере блока, близкого к размеру блока КЭШ памяти.

В информации по IBM DS 4700-70 заявленная производительность 112 000 IOPS, это я и попробую проверить в тестах. Также я буду смотреть на общее поведение системы при работе только на КЭШе.

Для такой задачи сперва было необходимо найти способ заставить систему работать только из КЭШ памяти. Как это было сделано я опишу ниже. Сначала несколько слов про схему кэш памяти в контроллере: в системе на каждый контроллер приходится по 1ГБ КЭШ памяти. По умолчанию используется полное зеркалирование КЭШ памяти контроллеров между собой, это необходимо для того чтобы в случае отказа одного контроллера система смогла переключить нагрузку на второй при этом не потеряв данные из КЭШа потерянного контроллера. У КЭШа есть две глобальные характеристики задающиеся на уровне всей системы: размер блока КЭШа и политика сброса содержимого КЭШа на диск.

Размер блока КЭШ памяти

Может выставляться значениями 4, 8, 16 кб. По умолчанию стоит по-моему 8кб. Я делал тест около полугода назад, проверяя отличия в производительности при разных значениях, у меня получилось что наилучшая скорость получается на блоке 16кб, независимо от типа нагрузки на систему. Посему в этот раз я тоже выставлю блок 16кб. Вполне вероятно, что в перспективе стоит попробовать уменьшить размер блока КЭШ и повторить тоже самое на 8кб.

Политика сброса КЭШа на диск

Когда размер данных в КЭШе превышает определенный порог он автоматически начинает скидываться на диск, пока не освободиться достаточно места в КЭШе. Эти два порога задаются в настройках системы. Если применить эти настройки к тестовой системе то это выглядит так: в ней 1ГБ КЭШ в каждом контроллере, 512МБ доступно для данных после вычета половины для зеркала.

Политика сброса КЭШ в тестовом случае выглядит так: начать сброс на диск – 95%; окончить сброс КЭШа на диск – 90%. Получается, что при заполнении 486МБ (95% от 512МБ) система начнет переписывать содержимое КЭШ на диск пока не останется заполненным 460МБ (90% от 512МБ) после этого система остановит переписывание и будет ждать того когда КЭШ опять заполнится до 486МБ.

В тестовой системе политика сброса КЭШ выбрана как описано выше, чтобы при маленьком LUN (для тестов делался LUN размером 200МБ) он мог быть полностью размещен в КЭШ и верхний порог для сброса КЭШ на диск был бы не достижим.

И еще надо уточнить один момент, в системе на политику сброса описанную выше накладывается еще политика сброса содержимого КЭШа по расписанию, с заданной частотой. Поскольку в тестовом случае это только мешает (мне было нужно свести влияние дисков к нулю) я отключил сброс КЭШа на диск по расписанию. Это делается через CLI следующей командой:

set logicalDrive ["lun2"] cacheFlushModifier= infinite ;

Такую процедуру я выполнил на обоих тестовых LUN.

Условия теста

На системе был создан массив из одного диска FC 15k 146GB, один диск выбрался специально, чтобы увидеть резкое понижение производительности если вдруг система начнет работать не через КЭШ а через диск. По большому счету тест планируется диского независимый поэтому количество значения не имеет. На массиве делалось два LUN по 200МБ, на них включался весь КЭШ, отключалось скидывание КЭШа на диск (см выше) и они назначались на разные контроллеры дисковой системы. Затем брался IOmeter и ставилась нагрузка, резульаты которой и записывались.

image 
Настройки LUN.

 

image 
Подключение дисковой системы к серверу.

 

Результаты

Чтение

image 
Последовательное

imageСлучайное

В обоих случаях на маленьком блоке цифры колеблются в районе 100 000 IOPS, случайность чтения оказывает минимальное влияние. Спад IOPS в районе 4кб блока вызван тем что сервер с нагрузкой подключен через один порт HBA, скорость у него 4ГБ. В данном случае меня это не напрягает, поскольку все цифры выше 4кб, превышают 400МБ/сек а это очень много. Поскольку график не падает, видно что система ведет себя отлично.

Надо отметить, что здесь показаны средние цифры за 5 минут работы, после проведения тестов внутренний монитор дисковой системы показал что максимальная скорость в IOPS составляла около 116 000 IOPS, то есть обещанная производителем скорость в 112 000 достигнута.

Запись

image 
Последовательная запись на одном диске

  image
Последовательная запись на двух дисках

При последовательной записи картина похожая на ожидаемую, с той лишь оговоркой, что скорость снижается на большом блоке. Я стал думать почему так и пришел к выводу, что это связанно с количеством дисков в массиве. Все же скорость около 100МБ/сек очень напоминает скорость одного диска.

Специально для того чтобы можно было понять влияние дисков на запись в кэш, был проведен второй тест, в котором в массив был добавлен еще один диск (то есть массив стал состоять из двух дисков) и проведена такая же нагрузка. На нижнем графике видно, что динамика полностью прежняя, тогда как скорость на большом блоке поднялась примерно в два раза. Поскольку в системе изменилось только количество дисков, из этого прямо следует, что алгоритмы кэширования последовательной записи связаны с физическими дисками в системе и даже имея тестовый лун объемом меньше чем доступный КЭШ и отключив сброс на диск, система все равно будет писать IO в диски, при последовательной записи.

Очень интересно что порог перехода записи в диск разный в массивах из одного и из двух дисков. Видимо система имеет заложенный алгоритм который определяет когда начинать писать КЭШ в диск исходя из критериев: какие диски включены в массив и какого объема, какой размер блока, какова последовательность нагрузки.

Логика прослеживается абсолютно четкая – если мы пишем последовательно и блоком большого объема, то диск не будет здесь узким местом, он себя должен показать лучше, чем КЭШ. Это дает максимальные результаты в нормальных средах на реальной нагрузке, все же LUN объемом 200МБ на который последовательно пишут 45ГБ за 5 минут в реальности не будет существовать.

 

После этого было проведено еще два теста: в одном проводилась последовательная запись на массив расширенный до 16 дисков, а во втором случайная запись в тех же условиях. Конфигурация LUN оставалась прежней.

image 
Последовательная запись на 16 дисков

image 
Случайная запись на 16 дисков

Динамика последовательной записи несколько сгладилась, что еще раз показало что система работает тем лучше, чем больше дисков в массиве. Системы кэширования не могут работать полностью независимо от дисков.

Поведение случайной записи получается существенно ниже чем последовательной, таким образом можно сказать что система кэширования при случайной записи наибольшим образом зависит от дисков, независимо от реального объема данных. Это сказывается даже на том, что при последовательной записи система больше ориентируется на КЭШ и в результате не достигает возможного потолка (в нашем случае 400 мб/сек), а при случайной записи система независимо от реального объема данных активно пишет их на диск и даже при полностью случайном характере нагрузки достигает потолка в 400мб/сек.

Выводы

1. Ну и собственно идеи о том, что было бы круто разместить все данные в КЭШ памяти и писать/читать из неё меня покинули, абсолютно очевидно что для последовательной записи объем КЭШа не будет играть большой роли и для достижения максимальных результатов не будет требоваться. Для случайной записи он играет еще меньшую роль.

Нужно добавить, что в ходе тестов было сделано несколько прицельных прогонов в которых я отключал зеркалирование КЭШ чтобы сориентироваться насколько это будет сильно влиять на производительность. Так вот влияние было порядка 2-3%, таким образом ответ на вопрос “снижает ли зеркалирование производительность?” – отрицательный. По результатам же этого теста можно сказать, что при нагрузках преимущественно записи длительное время, размер КЭШ не будет выполнять ключевую роль для общей производительности. Также нужно не забывать, что отключая зераклирование КЭШа мы теряем отказоустойчивость системы.

2. Система показала свою полную адекватность с точки зрения максимальной производительности работы из КЭШа, цифры заявлены в маркетинге – получены, остальные результаты выглядят реалистично.

 

Ну и в результате интересно посмотреть в подобном тесте влияние настроек блока КЭШа системы, в максимально нагружающей его конфигурации – 2 LUN по 200МБ на 16 дисках.

Читать дальше ...

пятница, 14 августа 2009 г.

Описание конструктива IBM DS4700-70

Дисковая система IBM DS4700 – представитель линейки mid-range дисковых систем IBM. Представляет из себя один модуль “управляющий”, с двумя контроллерами и позволяет подключать к нему до шести полок расширения с дисками (полка называется IBM DS4000 EXP810). В итоге получается максимальная емкость системы - 112 дисков (16 в основном модуле + 16Х6 в полках).

_MG_2539

Собственно внешний вид системы с лицевой стороны. Диски устанавливаются вертикально. Полки расширения внешне выглядят точно также как и управляющий модуль. Габариты системы: высота - 130,3 мм (5,13 дюйма); ширина - 447,0 мм (17,6 дюйма); глубина - 563,8 мм (22,2 дюйма).

_MG_2546

Внешний вид системы сзади, в системе два блока питания и два контролера. В блоки питания включаются шнуры питания, в контроллеры включаются сервера(свитчи) и полки расширения. И блоки питания и контроллеры – подлежат горячей замене, так в случае поломки одного контроллера система сможет продолжить работу на втором контроллере, без остановки обслуживания.

_MG_2548

Вынутые из системы оба блока питания. Система питания полностью отказоустойчива, каждый блок питания скоммутирован с каждым контроллером, поэтому если переключать электрические провода по очереди система не только не остановится, но и не отключит ни одного контроллера. Нормальная ситуация, когда каждый блок питания подключен к своему УПС, в результате электропитание полностью резервируется.

_MG_2550

На блоках питания находятся тумблеры включения/выключения системы. Именно этими тумблерами и выключается система, после выключения тумблеров следует подождать пока все индикаторы погаснут. Выдергивать шнуры питания следует только после этого.

_MG_2553

Блоки питания с задней части. По большому счету блоки одинаковые. Заявленная потребляемая мощность системы 600 ватт на одну полку.

_MG_2555 

Собственно вычислительные контроллеры дисковой системы. Каждый контроллер независим от другого, в случае поломки первого, второй берет на себя все его функции.

В модели DS4700-70 в каждом контроллере по 1ГБ собственного КЭШа для работы с данными. Также в системе присутствует КЭШ для работы самой системы и 1ГБ КЭШа выступающий в качестве зеркала для КЭШа данных второго контроллера. Это зеркало необходимо чтобы в случае поломки одного контроллера данные которые не успели записаться на диск, а были в его КЭШе, не потерялись а были бы “подхвачены” контроллером продолжающим работу.

Вторая модель в линейке IBM 4700 -  DS4700-72 отличается в том числе тем, что в ней по 2ГБ КЭШа для данных в каждом контроллере.

image

По порядку что есть на контроллере.
Разъем для доступа к батарее питания КЭШ памяти (желтая рамка), батарея имеет ограниченный ресурс и её приходится заменять если ресурс выработался. Она нужна для того чтобы информация в КЭШе не пропала в случае отключения энергии на обоих контроллерах.
Разъемы для подключения полок расширения (красная рамка). Полки включаются в каждый контроллер петлей, для полной отказоустойчивости путей. Интерфейс – FC.
Под портами для полок расширения находится индикатор состояния системы (голубая рамка). Он отображает общий статус системы, номер полки, номер сервисной ошибки (если что-то не так).
Порт RS232 для подключения к системе напрямую (зеленая рамка), нужен для сервисных процедур.
Порты Ethernet для управления системой (темно синяя рамка). На каждом контроллере по два таких порта, всего система управляется через 4 IP адреса (можно и через два, но обязательно с разных контроллеров, один с первого, второй со второго).
Порты для подключения серверов или FС свитчей (фиолетовая рамка). Интерфейс – FC. Модель DS4700-72 отличается тем что у неё не по два таких порта на каждом контроллере, а по четыре.

_MG_2556

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

_MG_2558

Так выглядит задняя часть контроллеров, которой они вставляются в шасси.

_MG_2564

А вот собственно и пустое шасси, вид сзади. Сверху слот для контроллера “А”, снизу для блока питания “А”. Справа тоже самое только для “Б”. Еще раз повторюсь, что оба контроллера одновременно работают с обоими блоками питания и всеми дисками в системе.

_MG_2568

Система вид спереди, первые 8 дисков я вынул чтобы было видно, что там внутри. Диски естественно подлежат горячей замене. Диски используются FC, с прошивками для конкретной системы, как следствие диски подходят только IBM. Диски двух портовые и с ними одновременно работают оба контроллера. Опять же, в случае какой-то поломки одного контроллера диски переключатся на второй контроллер и система продолжит работу без перебоя в обслуживании.

_MG_2574

Видно, что фактически шасси представляет собой просто железную коробку, никакой логики оно не несет. Ломаться в нем фактически просто нечему.

_MG_2575

Диски в системе вынимая можно путать местами, система хранит на каждом диске информацию о конкретном диске, своей конфигурации и массивах которые находятся в системе. Таким образом потеря ни одного диска не является критичной, а в случае необходимости можно включить все диски одного массива в другую систему DS4700, она увидит что появился сторонний массив данных, покажет его статус и предложит импортировать его для дальнейшей работы. Я рассчитываю написать коротенькую отдельную заметку про то, что система умеет, сейчас же укажу только уровни RAID: 0,1,3,5,6,10. В системе могут одновременно использоваться диски FC и SATA. Разные типы дисков могут совмещаться в одной полке.

_MG_2585

Система в стойке, в комплекте идут рельсы для 19” шкафа. Индикаторы на передней панели также отображают состояние всей системы. Занимает система 3U.

image 
Тоже самое крупно.

Приблизительная схема коммутации системы. Нарисована конфигурация из 4 полок расширения, двух оптических свитчей и пары серверов подключенных ко всему этому. При такой схеме коммутации может сломаться любой контроллер системы, или полки, любой свитч и все продолжит работать дальше. Видно что полки расширения коммутируются петлями и каждая петля начинается в одном контроллере, а заканчивается в другом. Каждый контроллер самой системы подключен одновременно к обоим свитчам.

Все соединительные кабели – FC. Красным отражена петля №1, голубым петля №2, оранжевым – подключение конечных серверов и самой системы.

Чуть позже я коротко опишу функциональные и лицензионные особенности системы.

Читать дальше ...

четверг, 16 июля 2009 г.

Как перешивать DS4000/5000

Периодически случаются ситуации, когда в DS по тем или иным причинам повреждается прошивка, чаще всего причина – некорректно проведенное обновление этой самой прошивки. В такой ситуации система может быть восстановлена, например, обновлением прошивки через rs232 порт. Надо сказать что сервис IBM может предложить сделать эту процедуру пользователю, как крайнюю меру по восстановлению системы. Единственный недостаток в ней то, что руководство которое присылает сервис-мен абсолютно универсальное рассчитанное на все дисковые системы IBM поэтому там много не описанных мест и деталей которые, предполагается, пользователь должен знать сам. Поскольку я не знаю пользователей которые бы легко делали данную процедуру (ну может быть кроме этих самых сервис-менов IBM) я переписал своими словами эту инструкцию, в первую очередь для себя. Вполне вероятно что она может пригодиться еще кому-то. Еще раз хочу отметить, что процедура эта крайняя, а инструкция ниже скорее дополняет то что присылает IBM.

Итак, сперва что нам понадобиться:

  1. Убедиться, что с системой ничего не взаимодействует. Т.е. на контроллерах нет рабочей IO.
  2. Запастись спец переходником для конкретной системы (DS) который будет конечным «хвостиком».
  3. Лучше использовать встроенный COM порт компьютера, а не USB переходник.
  4. Обратить внимание, что на некоторых ноутбуках некорректно работает “Break”. Использовать экранную клавиатуру либо внешнюю USB, если это так.
  5. Убедиться, что в системе есть нормальный клиент терминала с возможностью передачи данных Xmodem.

Теперь сама процедура:

  1. Выключить питание на БП системы тумблерами, убедиться, что все лампочки погасли. Если есть полки отключить питание на них. Подождать 20 секунд.
  2. Изъять исправно работающий контроллер (если оба плохие, то изымаем контроллер B, поскольку сначала придется восстановить один контроллер из двух).
  3. Изъять все внешние полки расширения. Достаточно отключить их от контроллеров на головном модуле.
  4. Изъять все диски из 0 полки (для 4700 или другой системы со встроенными в контроллер дисками).
  5. Скоммутировать кабель RS232, настроить подключение как написано ниже (настройки терминала). Могут быть сложности с высокой скоростью, но имеет смысл выставить хотя бы 54 600 т.к. на 9600 прошивка будет литься очень долго.
  6. Теперь когда в системе нет дисков и включен 1 контроллер из двух, включить питание в обоих БП тумблерами.
  7. Ждем когда начнут появляться какие либо знаки в консоли, либо не дожидаясь, интенсивно жмем BREAK в терминале (для hyperterm – комбинация ctrl+break).
  8. В итоге система должна перестать выводить “крокозябы” и на англ языке предложит нажать BREAK для установки baud rate. Жмем BREAK.
  9. Когда система попросит нажать пробел в течении 5 сек, не тормозим и жмем пробел.
  10. Начинаем жать ESC. Фича в том, что по доке IBM, ESC надо жать после спец приглашения, в актуальных прошивках этого приглашения нету!! ESC нужно жать, когда система предлагает что то вроде «press S for service menu …» или наподобие. Если не получается поймать момент когда нужно нажать ESC, нужно повторять нажатия space и BREAK до того состояния чтобы появилось сообщение «press S for service menu …» . Ну а уже тогда – ESC.
  11. Система должна вывести приглашение для ввода пароля куда вписываем “******”. После этого система любезно предложит шелл с приглашением #. Если пароль не подходит с вероятностью 99% мы логинемся не туда – решение перезагрузиться либо см п.10 выше.
  12. Пишем в шелле – sysReboot и далее два раза пробел. Если не открылось системное меню - жмем Ctrl+B.
  13. В меню выбираем пункт 2 (что-то там про transfer file). Затем с помощью X-Modem отправляем файл прошивки скаченный с сайта IBM. Процесс займет минимум 30 минут.
  14. В конце терминал должен явно написать, что все передано успешно и показать 5-6 разных строк состояния по очереди приходящих к 100%.
  15. После окончания инициализации прошивки - система напишет, что все «completed sucsesfully» и выйдет в загрузочное меню. Перезагружаемся. Контроллер успешно перешит, если поломаны оба – делаем туже процедуру и на втором и смотрим п.16; если был поломан только один контроллер смотрим п. 17.
  16. После того как на обоих контроллерах одинаковые прошивки, которые корректно работают, выключаем систему и собираем её в штатном режиме с дисками и полками.
  17. Если в системе тока 1 контроллер был дохлый – изымаем его после успешной зашивки, вставляем в систему диски и второй контроллер и стартуем (подаем питание) всю систему. После успешной загрузки системы с дисками на одном контроллере (который был ОК) вставляем прошитый только что из консоли и убеждаемся, что все работает нормально.

 

УВАГА !!

Если загрузиться с дисками 6-ой версии прошивки контроллера и контроллерами 7-ой версии информация скорее всего потеряется.
Если загрузиться с дисками 7-ой версии прошивки контроллера и контроллерами 6-ой версии информация скорее всего потеряется.

 

Настройки терминала

Скорость 9600 – 115 200
Биты –8
Четность – нет
Стоповые – 1
Управление потоком – аппаратное либо Xor/Xoff

 

Пароль на Shell
Я его не стал публиковать, инженеры IBM Вам его легко подскажут в случае необходимости.

Читать дальше ...

среда, 15 июля 2009 г.

Как обойтись меньшим количеством IBM DS Storage Partition в Windows

Каждая группа устройств которая получает дисковую емкость от IBM DS требует одну лицензию, так называемую Storage Partition. Их количество в системах по умолчанию не велико, к примеру в 3400 их 4 штуки, в 4700 тоже 4. Это позволяет использовать дисковую для, к примеру, 4-х кластеров поскольку у каждого кластера одинаковый набор LUN’ов и поэтому это 1 Storage Partition. Ситуация ухудшается если мы хотим использовать дисковую для загрузки по SAN серверов, либо просто раздавать LUN’ы серверам индивидуально, тогда требуется по одной дополнительной Storage Partition на каждый такой сервер. Примерная стоимость лицензий на расширение составляет для ds4700 – 4400USD увеличение с 2 до 8 партиций (т.е. за 6 партиции, примерно 700USD за партицию), для ds3400 - 1700USD увеличение с 4 до 8 партиций (т.е. за 4 партиции, примерно 400USD за партицию).

Но можно несколько облегчить себе жизнь и сэкономить эти самые Storage Partition вот каким путем. Можно организовать Failover Cluster на который требуется одна Storage Partition и распределять LUN’ы через консоль failover cluster. Общая процедура выглядит так:

1. Выдаем все LUN’ы с дисковой системы на группу серверов.

2. Заходим на один из серверов и переводим все диски в on-line, инициализируем их, создаем на них партиции как требуется.

3. Создаем кластер из серверов которые у нас будут пользоваться этими LUN’ами и заводим эти самые LUN’ы как Storage Resources кластера. По умолчанию они все будут находиться на этом самом сервере с которого мы их только-что заводили, а нам нужно их перемещать по разным серверам. Просто так дисковые ресурсы переключать нельзя, можно переключать только кластерные группы, поэтому нужно сделать кластерные группы.

4. Создаем через раздел “Services and applications” пустую кластерную группу (там есть такой пункт), называем её “сервер1” и добавляем в неё все LUN’ы которые относятся к Серверу1. Теперь переключаем её на Сервер1. Чтобы в случае перезагрузки эта самая группа не переходила на другие сервера нужно в консоли оставить этот сервер единственным для её размещения и отключить переходы на другие сервера.

5. Результат получен.

Надо сказать, что данный путь требует включения Failover Cluster на всех серверах которым мы раздаем Storage Partition, что требует Windows Server версии Enterprise или Datacenter, поскольку разница в цене со Standart у них больше чем соимость одной IBM DS Storage Partition, то наворачивать такую структуру только ради этого – бессмысленно. НО если у вас уже есть кластер, например из 4 узлов и понадобилось одному из узлов выдать свою емкость для индивидуального использования, а Storage Partition не хватает то это абсолютно рабочий вариант.

Более интересный вопрос можно ли сэкономить Storage Partition для загрузки этих самых серверов в кластере. По этому поводу есть мысль сделать это используя динамические диски, но сначала надо проверить эту процедуру. Я думаю что попробую проверить это на днях.

Если я правильно понимаю, аналог IBM DS Storage Partition есть и у других вендоров, там это тоже должно работать.

Также нужно понимать,что это конфигурации не суппортные и нужно хорошо отдавая себе отчет о возможных последствиях, особенно на случай работы системы в аварийном режиме.

Читать дальше ...

понедельник, 13 июля 2009 г.

Результат тестирования контроллера Adaptec 5805, IBM DS3400, IBM DS4700

Вот такая вот странная компания, сравнивать результаты которой позволяет только одинаковое количество дисков в системах (12 штук).

Итак что мы имеем:

1. Adaptec 5805. 8 внутренних портов (подключено 12 дисков с помощью корзины), ЦП - двухъядерный RAID on Chip (ROC), 1.2ГГц, PCI-Express X8, cache: 512МБ DDR2. К нему подключено 12 дисков SAS Hitachi 146GB 15k, в кузове Supermicro SC826. Stripe – 64 kb, все кэши включены. Прошивка версии – 16 501. http://www.adaptec.com/ru-RU/products/Controllers/Hardware/sas/performance/SAS-5805/ – описание на сайте производителя.

2. IBM DS3400 Dual controller. Одна полка, без экспаншенов. В ней 12 дисков SAS146GB 15k. На каждый контроллер приходится 512 MB кэш памяти. Stripe – 128 kb, все кэши системы включены. Прошивка версии – 07.35.41. http://www-03.ibm.com/systems/ru/storage/disk/ds/ds3400/index.html – описание на сайте производителя. В тесте использовался только один контроллер.

3. IBM DS4700-70. Одна полка, без экспаншенов. В ней используются для теста 12 дисков FC 146GB 15k. На каждый контроллер приходится 1024 MB кэш памяти. Stripe – 128 kb, все кэши системы включены. Прошивка версии – 07.15.01.10. http://www-03.ibm.com/systems/ru/storage/disk/ds4000/ds4700/ – описание на сайте производителя. В тесте использовался только один контроллер.

 

100% потоковое 100% чтение

Adaptec 5805

image image

 

IBM DS3400

image image

 

IBM DS4700-70

image image

Вывод

По большому счету этот тест полностью уходит в кэш контроллера. Его результаты не говорят по большому счету ни о чем. Результаты у всех систем высокие, динамика здесь не принципиальна. Скачки производительности на маленьком блоке у IBM может объяснить разве что IBM, в реальной жизни с ними столкнуться невозможно. Нужно отметить, что в 3400 системе размер блока кэша – 4кб, в этом месте система резко повышает производительность. У 4700 -

 

100% потоковая 100% запись

Adaptec 5805

 image image

 

IBM DS3400

 image image

 

IBM DS4700-70

image image

Вывод

Также как и чтение – полностью уходит в кэш. Также как в чтении видно что у всех систем – все хорошо.

100% случайное 100% чтение

Adaptec 5805

 image image

 

IBM DS3400

 image image

 

IBM DS4700-70

 image image

Вывод

По этим результатам видно адекватную картину производительности чтения по причине того, что IBM DS включены через FC к серверу с нагрузкой у них потолок производительности – 4 GB. Почему они упираются в 3,5GB я объяснить не могу, но могу предположить что контроллеры просто не умеют забивать полные 4 GB в одиночку. Предположу что если загрузить 2 контроллера либо 2 порта на одном контроллере скорость подключения будет использована полностью.

Adaptec выжимает из дисков за счет шины PCI express все, что может и производительность получается высокая.

100% случайная 100% запись

Adaptec 5805

 image image

 

IBM DS3400

 image image

 

IBM DS4700-70

image image

Вывод

По этим результатам видно адекватную картину производительности записи. По результатам видно, что Adaptec – быстрее, тогда как обе внешние дисковые системы работают примерно в одном уровне.

100% случайная 67% запись

Adaptec 5805

image image

 

IBM DS3400

image image

 

IBM DS4700

image image

Выводы

Очень важно помнить, что все дисковые системы принципиально отличаются от одиночного контроллера тем, что им требуется зеркалировать свои кэши между двумя контроллерами для обеспечения полной отказоустойчивости системы. Именно поэтому и получается, что заведомо более дорогие дисковые системы проигрывают, в производительности на синтетике, контроллеру при соизмеримом количестве дисков.

Также не стоит забывать, что это сравнение сугубо производительности, тогда как дисковые системы предлагают ряд дополнительных функций которые контроллер не может предоставить по определению. Дополнительно к этому масштаб расширения дисковых систем на порядок выше чем у контроллера. И на большем количестве дисков результат конечно будет несоизмеримо выше. Я постараюсь посмотреть аналогичный тест на конфигурации с 24 дисками, будет любопытно посмотреть как себя поведет Adaptec в такой системе, хватит ли ему считалки чтобы работать с таким количеством дисков.

Теперь по результатам. В смешанных тестах видно что на маленьком блоке результаты и у DS и у контроллера – близки, хотя выигрывает отдельный контроллер. На большом блоке Adaptec серьезно выходит вперед, что связанно с тем что он работает по внутренней шине а не через внешнюю HBA со скоростным ограничением.

Можно резюмировать, что в ситуации когда система планируется из 12 дисков и её отказоустойчивость с функциональностью не играют роли – однозначно следует выбирать решение на PCIe контроллере, именно оно даст максимальную производительность при этом при минимальной цене.

На самом деле графики интересные и я постараюсь дописать позже данный материал, сейчас к сожалению недостаточно времени на детальное описание …

Читать дальше ...