Те вопросы, которые возникли, хотя и не столь уникальны, но если ими не задаться на этапе создания дискового пула и виртуальных дисков, то в последствии, при увеличении емкости пула и в частности виртуальных дисков, возможно столкнуться с определенными трудностями.
четверг, 16 января 2014 г.
Storage Spaces - вопросы масштабирования
Те вопросы, которые возникли, хотя и не столь уникальны, но если ими не задаться на этапе создания дискового пула и виртуальных дисков, то в последствии, при увеличении емкости пула и в частности виртуальных дисков, возможно столкнуться с определенными трудностями.
среда, 2 октября 2013 г.
LSI Syncro - новая масштабируемая архитектура хранения данных высокой доступности.
В июне 2013 года компания LSI анонсировала новый продукт с кодовым названием Syncro CS, но пока о наличие абсолютно нового решения для кластеризации знают лишь крупные производители серверов. Решение очень интересное и во многом инновационное, поэтому мы предлагаем вашему вниманию этот обзор.
Для начала давайте разберемся, что такое кластер и какие решения сейчас есть на рынке для организации отказоустойчивых кластеров.
В информационных технологиях слово кластер (сluster) встречается в двух значениях. Первое, единица хранения на жестких дисках, относится к разбиению магнитных носителей. Второе значение - группа компьютеров, объединённых высокоскоростными каналами связи и представляющая с точки зрения пользователя единый аппаратный ресурс.
В современном мире понятие кластер используется в основном для обозначения двух различных типов конфигураций. Это вычислительный кластер и отказоустойчивый кластер (кластер высокой доступности). Вычислительные кластера используются для научных и инженерных расчетов. Каждый год публикуется список TOP500 самых производительных вычислительных кластеров. Современные вычислительные кластера состоят из десятков тысяч узлов (серверов) нескольких типов.
В этой статье речь пойдет о технологиях отказоустойчивых серверов. Основная задача отказоустойчивого кластера – обеспечение высокой доступности (HA, High Availability) сервиса. В качестве сервиса могут выступать многие популярные приложения. Это WEB-серверы, серверы электронной почты, системы управления базами данных (MS SQL, Oracle, MySQL), SRP и CRM-системы и другие приложения. Особая роль отводится при кластеризации службам файлового обмена (например, кластеризация служб File Server в Windows) и виртуализации (Hyper-V и VMWare как самые распространенные) ввиду их критичности для работы многих других приложений. Итак, основная задача кластеризации – взять критичную для деятельности компании службу и настроить ее работу на нескольких (2 или более) узлах отказоустойчивого кластера. В случае падения одного из узлов, остальные могут перезапустить службу кластеризации автоматически, минимизировав, или в некоторых случаях, даже исключив время простоя.
понедельник, 18 января 2010 г.
Полезное чтиво про IBM DS4000/DS5000
IBM опубликовал сразу 4 драфта новых книжек про системы хранения среднего уровня (DS4000/DS5000), которые должны занять достойное место в подборке документации администраторов СХД:
- IBM Midrange System Storage Hardware Guide
- IBM Midrange System Storage Implementation and Best Practices Guide
- IBM Midrange System Storage Copy Services Guide
- VMware Implementation with IBM Midrange System Storage
По сравнению с тем, что уже можно было найти в “редбуках” ранее, собрана вместе информация по новым системам в линейке DS4000/DS5000 и подробно описаны все нововведения. Две последние работы довольно узко специализированы: в одной подробнейшим образом изложен механизм работы мгновенных снимков и клонирования (в т.ч. и между системами), а вторая посвящена виртуализации на базе VMware ESX/ESXi. В принципе, обе книги не содержат радикально новой информации (по крайней мере, я не увидел ничего, что не встречалось бы в выпущенной ранее документации), однако прочитать и держать под рукой эти материалы полезно. Тем же, кто впервые развертывает VMware на системах IBM DS4000/5000 читать просто необходимо – в соответствующей книге собран вместе обширный материал, который позволит гораздо лучше понять что и как делать. Не оставлен в стороне и вопрос выбора (и оптимизации) настроек дисковой системы для повышения производительности.
Наибольший же интерес, на мой взгляд, должны представлять первые две книги – изложенный материал позволяет гораздо лучше понять, как именно устроены дисковые системы IBM и как с ними нужно работать. Тем, кто впервые сталкивается с системами IBM, очень поможет описание термина “Storage Partitions”, который часто вызывает проблемы в понимании. Объясняется множество вопросов, которые могут возникнуть в процессе подбора конфигурации. Поэтому эти две книги полезны не только пользователям систем, но и пресейлам – правильно подобрать конфигурацию тоже бывает непросто. Отдельная глава посвящена RSM (Remote Support Manager), продукту который пока не слишком популярен на наших просторах, но ситуация должна постепенно меняться.
Администраторам будет интересно прочитать про процедуру обновления прошивок, конфигурацию коммутаторов и настройку СХД в связке с различными операционными системами (в т.ч. есть и пример настройки кластера Windows 2008 при загрузке с SAN). До недавнего момента в многочисленных книжках IBM встречалась рекомендация подключать контроллер A к одному коммутатору, а контроллер B – ко второму. Мне такая схема всегда казалась не очень правильной (хотя она и обеспечивала отказоустойчивость) так как при этой настройке, выход из строя коммутатора, обрыв кабеля от сервера к коммутатору или выход из строя адаптера в сервере гарантированно приводит к переносу LUN’а между контроллерами, что может вызвать проблемы производительности. Поэтому я всегда рекомендовал подключать каждый контроллер к каждому коммутатору и терпеливо объяснял свою позицию внимательным читателям документации. Сейчас же был приятно удивлен – теперь везде приводится рисунок с “правильным” подключением:
Также очень полезной будет и глава по определению неисправностей и их устранению. Не секрет, что зачастую вопрос обслуживания ложится на хрупкие плечи системного администратора – либо по каким-то причинам не был куплен сервисный пакет, либо система находится далеко и времени на ожидание ответа от сервиса нет, да и много других причин может быть.
Можно найти и очень много подробных описаний по оптимизации настроек СХД для тех или иных приложений. Но отдельного упоминания заслуживает вопрос сайзинга, т.е. подбора конфигурации под имеющуюся (планируемую) нагрузку. Здесь и работа с монитором производительности в Storage Manager (Performance Monitor), и IBM Tivoli Storage Producivity Center for Disk. Детально объясняется работа с такой полезной утилитой для сайзинга как Disk Magic (впрочем, я не уверен что она доступна пользователям, но имеющие доступ на IBM Partnerworld могут ее оттуда скачать). Даже если доступа к утилите у Вас и нет, Вы можете собрать необходимые данные и отправить их интегратору, чтобы он провел для необходимый расчет и подобрал нужную конфигурацию, которая обеспечит должный “запас прочности”.
Так как упомянутые книги это пока только драфты, то читать их конечно нужно, но и следить за обновлениями тоже не помешает!
Читать дальше ...среда, 13 января 2010 г.
Общий доступ к дискам (Sanbolic Melio FS и другие)
С завидным постоянством вижу вот такого плана вопрос:
“Мы установили дисковую систему, создали один LUN, все настроили, подключили два сервера. На одном сервере файлы записываем, а на другом никаких изменений не видно. Да еще и ошибки какие-то странные. Что надо еще настраивать?”.
Причем, как это ни странно, технический уровень спрашивающих может быть очень разным, а вопрос один и тот же. А ведь, казалось бы, все очевидно: файловые системы (большинство), которые мы привыкли использовать (NTFS, EXT3, …) просто не умеют работать в таком “распределенном” режиме. Представьте, что на сервер А мы записали на диск файл, но каким образом об этом станет известно серверу B? Без специальной кластерной файловой системы, которая сообщит ему об этом – никак. И наиболее вероятным результатом (даже сравнительно короткого) такого “испытания” на обычной файловой системе будет полный ее крах. Поэтому даже и эксперименты проводить не стоит – работать не будет! А что тогда делать и нужно ли это вообще? В большинстве случаев (особенно если очень пристально посмотреть на задачу или заказчика :) ) такой функционал действительно оказывается ненужным и для совместного доступа к файлам достаточно использовать CIFS (в Windows) или NFS (в Linux). Но, тем не менее, существует и довольно много задач, где общий доступ к дисковому устройству если и не необходим, то очень важен. Как для более простой реализации, так и для лучшей производительности системы. Для того чтобы такой доступ обеспечить нам и нужна будет кластерная файловая система. Существует их довольно много, подавляющее большинство ориентировано на Linux/Unix (RedHat GFS, IBM GPFS, Lustre, HP Plyserve и т.п.), но и Windows не остался в стороне (Sanbolic MelioFS, HP Polyserve, IBM GPFS). Исторически решения под Linux использовались для HPC кластеров (и ряда других приложений), а под Windows в основном для обработки медиа-контента. Сейчас дисбаланс уже не так заметен – Windows работает на всех фронтах. Кроме того, все активнее внедряются системы виртуализации на базе Hyper-V в Windows Server 2008 и 2008 R2. И, если у основного конкурента (VMware) кластерная файловая система уже есть (VMFS), то в случае с Hyper-V нужно либо обходиться без нее, либо использовать сторонние продукты. Но даже и в случае с VMware разделяемая файловая система может очень пригодиться – например при использовании совместно с бесплатным VMware Server можно размещать образы виртуальных машин на общем дисковом ресурсе, что значительно упрощает миграцию и в разы снижает время простоя при сбоях.
Сегодня более подробно я остановлюсь на решениях компании Sanbolic. Помимо кластерной файловой системы MelioFS, в портфель продуктов постепенно добавлялись и другие решения – это и система управления томами LaScala, и SILM, и AppCluster (о них немного ниже), а выбрать что же именно нужно купить, чтобы получить искомый результат, становилось все сложнее. И, если представители интегратора в большинстве случаев хорошо понимают что и для чего нужно, то объяснить клиенту, что ему нужна не одна лицензия за 2000$, но к ней еще нужно докупить две лицензии по 1500$, было в некоторых случаях сложно. В настоящее время ситуация существенно упростилась и предлагается всего 4 лицензии: Melio Virtualization, Melio Professional, Melio Enterprise и Melio Data Center. Благодаря этому выбор оптимального решения стал гораздо проще.
Все четыре продукта включают в себя (помимо кластерной файловой системы) систему управления томами (volume manager) LaScala. Поддержка страйпинга и конкатенации позволяет получить высокопроизводительный том необходимого объема. Также во все бандлы входит система SILM (Simple Information Lifecycle Manager), которая, на основе заданных пользователем политик, может перемещать файлы между различными системами хранения. Например, файлы, к которым не было обращения более 10 дней, будут перенесены на более медленную дисковую систему. Важно отметить, что поддерживается “смешанный” режим работы – данные могут располагаться не только на томах MelioFS, но и на любых других дисках (в том числе и локальных).
Melio Virtualization ориентирован на заказчиков, которые внедряют у себя Hyper-V или VMware Server, и позволяет получить всем серверам доступ к общей дисковой подсистеме (iSCSI или FC) для размещения на ней образов виртуальных машин. Благодаря поддержке технологий Quick и Live Migration, а также отсутствию ограничения на число серверов в кластере, актуальность данного решения фактически прямо пропорциональна числу физических серверов Hyper-V.
Второй, ориентированный на виртуализацию продукт - Melio Professional. Он предназначен для развертывания отказоустойчивого высокопроизводительного кластера системы динамической загрузки образов операционных систем на базе Citrix Provisioning Services. На общей файловой системе хранится как база данных, так и сами vDisk вместе с файлами кэшей записи. Нужно помнить, что данный бандл имеет ограничение на включение максимум двух узлов в кластер (а использовать меньше и смысла не имеет).
Два оставшиеся варианта лицензий уже не являются такими узкоспециализированными и предназначены для широкого круга заказчиков, чьи задачи не ограничиваются только виртуализацией. Melio Enterprise поддерживает совместную работу до 4х узлов в одном кластере и имеет ряд ограничений по сравнению с “топовой” версией Melio Data Center. В частности, нет поддержки зеркалирования (RAID1) и Quality of Service. Обе версии позволяют создавать высокопроизводительные кластеры файловых серверов, в том числе и с поддержкой балансировки нагрузки (NLB). Разумеется поддерживается DFS и ACL. Возможность динамического расширения файловой системы и томов позволяет избежать лишних остановок сервиса для обслуживания системы. По мере роста требований к файловым серверам можно добавлять как серверы, так и системы хранения в существующий кластер, увеличивая тем самым как суммарную емкость, так и производительность системы в целом:
Также в состав обоих пакетов входит AppCluster Manager – средство управления active-active кластерами MS SQL, когда соответствующие базы данных размещены на разделяемой файловой системе. Конечно, это решение не позволяет (в силу архитектуры MS SQL) построить аналог Oracle RAC, но дает возможность обеспечить минимальное время переключения между серверами в кластере в случае сбоя, а также балансировать нагрузку между физическими машинами:В варианте Data Center AppCluster работает совместно с QoS, чтобы позволяя критичным базам иметь приоритет при работе с дисковыми ресурсами.
Для тех же кто использует Hyper-V есть еще зачастую весьма веская причина использования Enterprise или Datacenter версий – технология Pass-through I/O увеличивает производительность дисковой подсистемы так как не требуется оповещение остальных машин в Windows Failover кластере об операциях записи в виртуальных машинах.
Триальную двухнедельную версию можно получить, зарегистрировавшись на сайте Sanbolic. А купить и/или получить более подробную информацию, как обычно, можно у нас. :)
Читать дальше ...понедельник, 9 ноября 2009 г.
Объединяй и властвуй!
Очень часто, говоря про блейд-серверы или про виртуализацию, я сталкиваюсь с тем что собеседники ошибочно воспринимают эти технологии как средство объединения ресурсов нескольких физических серверов в один большой. Тогда как на самом деле, блейд-серверы это всего лишь удобным образом упакованные в один корпус совершенно независимые машины. Виртуализация же серверов, в свою очередь, предназначена для консолидации нескольких задач (виртуальных машин) на одном физическом сервере:
А все дополнительные возможности (с красивыми названиями Live Migration, VMotion, DRS, HA и т.п.) служат для управления виртуальными машинами и их перемещением между серверами, но никак не для того, чтобы объединить ресурсы нескольких серверов для распределения между ними одной “тяжелой” задачи.
Хорошо, скажете Вы, а что делать, если стоит задача именно увеличить процессорную мощность системы по сравнению с имеющимся сервером? В большинстве случаев решением является приобретение сервера с большим числом процессоров. Но если задача реализована на x86 архитектуре и работала на двухпроцессорном сервере, то приобрести 4х процессорную машину можно без проблем. 8-ми процессорные системы тоже есть, но выбор гораздо меньше, а цена заметно выше. Ну а дальше? 32 процессора в одном сервере x86 уже фактически неразрешимая проблема – нужно переходить на другую архитектуру, что тоже не всегда возможно (да и требует более серьезных финансовых вложений). Для целого ряда задач решение есть – построение кластеров, где задача “распараллеливается” между серверами. Наиболее на слуху наверное Oracle Real Application Clusters (RAC) – несколько серверов объединяются для параллельной обработки запросов к СУБД, тем самым, увеличивается производительность системы. Другой, не менее часто встречающийся пример, – HPC (High-performance Computing), где вычислительная задача также разделяется на несколько подзадач, которые выполняются параллельно на нескольких вычислительных узлах. Оба эти примера объединяет одно – для работы требуется специальным образом оптимизированное приложение. В тех же случаях, когда такая оптимизация не была сделана, приложение работать либо вообще не будет (наиболее вероятный вариант), либо эффект от его запуска на кластере будет в лучшем случае нулевым. Кроме того, для успешной работы приложения необходимо приложить немало усилий к настройке самого кластера (например, в ряде случаев требуется наличие кластерной файловой системы, обеспечивающей параллельный доступ к данным с нескольких узлов).
Однако уже давно существуют способы объединить серверы через интерфейсы с низкой латентностью и высокой пропускной способностью (например Infiniband), а это, в свою очередь, открывает двери для протокола RMDA (Remote Direct Memory Access). RDMA позволяет приложению, исполняющемуся на одном сервере, получать доступ к оперативной памяти другого сервера, как если бы эта память была его собственная. Казалось бы, стоит сделать небольшой шаг и можно будет именно объединить ресурсы нескольких машин вместе, без необходимости в модернизации приложений и прочих сложностей, но до недавнего времени таких решений не было.
Но на днях мне попалась заметка со ссылкой сразу на двух производителей, которые “взяли быка за рога”: Scale MP и 3leaf Systems. Оба решения позволяют объединить несколько обычных серверов в один большой виртуальный SMP сервер, выполнение на котором приложений не требует их модификации для работы на кластере. Фактическая реализация очень похожа – для создания “объединительной” среды используется высокоскоростной интерфейс. 3leaf Systems используют свой собственный ASIC, который на текущий момент устанавливается в кастомизированные платы Supermicro для процессоров AMD, но в ближайшее время планируется решение и на процессорах Intel Xeon с поддержкой QPI. Dynamic Data Center Software позволяет выделять приложению ресурсы с гранулярностью на уровне отдельных узлов, либо на уровне процессорного ядра, а в скором времени обещают и динамическое выделение ресурсов без перезагрузки виртуальной машины. Уже сейчас можно использовать вместе до 16ти серверов (до 192 ядер) и суммарно до 1ТБ памяти.
Решение же от Scale MP может работать на самых разных системах, а для связи узлов друг с другом используется Infiniband. Серверы в рамках даже одного кластера могут отличаться друг от друга, наверное в т.ч. и из-за этого технология называется vSMP (v – versatile, универсальный).
Основной продукт – vSMP Foundation for SMP является наиболее "продвинутым” вариантам и позволяет объединить до 255 ядер и 4ТБ памяти в один SMP сервер, поддерживается деление общего процессорного пула между виртуальными машинами (одна VM должна включать минимум два узла), для небольших конфигураций можно обойтись и без Infiniband коммутатора – узлы можно соединять друг с другом напрямую. Более бюджетный вариант vSMP Foundation for Cluster отличается от “старшего” брата ограничением памяти в 512ГБ и использованием процессоров не старше 2.4ГГц. vSMP Foundation for Cloud позволяет динамически вводить машины в общий пул –загрузка производится по сети (а не с флэшки, как в остальных вариантах). Очень интересной возможностью является использование различных конфигураций в рамках одного кластера: для приложений, крайне требовательных к объему памяти, но не столь требовательных к числу процессорных ядер, можно строить систему, в которой часть узлов с быстрыми процессорами предназначена непосредственно для исполнения приложения, а другая часть – со сравнительно медленными процессорами, но большим объемом памяти, используется только для увеличения общей оперативной памяти, выделяемой приложению (процессоры этих узлов не будут использоваться для работы пользовательского ПО):
Конечно же, такое “объединение” ресурсов не является заменой failover кластеру – любая аппаратная проблема внутри такой системы приведет к полной остановке приложения и потребуется перезапуск системы. Возможность изоляции сбойного узла предотвращает длительный простой, но если требуется высокая доступность приложения, то помимо объединения ресурсов в “большой” SMP сервер, необходимо предусмотреть и такие способы резервирования как кластер высокой доступности.
С учетом того, что цены на Infiniband снижаются все сильнее и построение инфраструктуры уже практически эквивалентно стоимости FC SAN, описанные решения по построению больших SMP систем имеют довольно много шансов занять вполне заметную нишу. Причем, от чисто вычислительных задач интерес постепенно будет смещаться в сторону бизнес-приложений (СУБД и т.п.).
Читать дальше ...