Идея создания сетей хранения возникла не сразу. До появления первых работающих образцов SAN прошло немало времени, однако этап совершенствования до уровня промышленной эксплуатации эти сети прошли достаточно быстро. Если первые устройства требовали тщательной настройки, то сейчас для их работы почти не нужно вмешательства человека и на сегодняшний день все большее число систем хранения данных в вычислительных центрах строится именно на основе SAN.
SAN (Storage Area Network) — высокоскоростная сеть передачи данных, предназначенная для подключения серверов к устройствам хранения информации. В основе концепции SAN лежит возможность соединения любого из серверов с любым устройством хранения данных, работающим по протоколу Fibre Channel. Разнообразные топологии SAN — точка-точка, петля с арбитражной логикой (Arbitrated Loop) и коммутация замещают традиционные шинные соединения «сервер - устройства хранения», предоставляя большую гибкость, производительность и надежность.
Архитектура SAN
Транспортную основу SAN составляет протокол Fibre Channel, использующий как медные (до 25 м), так и волоконно-оптические соединения устройств (до 10 км) и обеспечивающий сегодня скорость передачи данных 400 Мбайт/с в дуплексном режиме. Разрабатываются новые редакции стандарта для скоростей 800 Мбайт/с и 2 Гбайт/с (с учетом двунаправленной передачи данных). Волоконно-оптические линии используются значительно чаще, поэтому для построения большой полноценной сети хранения нужно проектировать кабельную сеть как для Gigabit Ethernet, иначе подключение устройств к SAN становится очень трудоемкой задачей.
Компоненты SAN
SAN состоит из следующих компонентов (рис. 1): Host Bus Adapters (HBA); ресурсов хранения данных (например, дисковые массивы); устройств, реализующих инфраструктуру SAN (например, коммутаторы — FC-switch); программных обеспечений (например, драйверы устройств, менеджер томов — Volume Manager).
Рис. 1. Компоненты SAN
НВА устанавливаются в серверы и осуществляют их взаимодействие с SAN по протоколу Fibre Channel. Наиболее известные производители НВА — Emulex, JNI, Qlogic и Agilent. Поставщики серверов часто используют под собственным именем НВА от этих компаний.
К ресурсам хранения данных относятся дисковые массивы, ленточные приводы и библиотеки с интерфейсом Fibre Channel, причем многие свои возможности ресурсы хранения реализуют, только при включении в SAN. Так, дисковые массивы старшего класса могут осуществлять репликацию данных между массивами по сетям Fibre Channel, а ленточные библиотеки могут переносить данные на ленту прямо с дисковых массивов с интерфейсом Fibre Channel, минуя сеть и серверы (serverless backup). Наибольшую популярность на рынке приобрели дисковые массивы компаний EMC, Hitachi, IBM, HP/Compaq; из производителей ленточных библиотек следует упомянуть StorageTek, Quantum/ATL, IBM.
Устройствами, реализующими инфраструктуру SAN, являются коммутаторы Fibre Channel (Fibre Channel switch), концентраторы (Fibre Channel Hub) и маршрутизаторы (Fibre Channel-SCSI router). Концентраторы объединяют устройства, работающие в режиме Fibre Channel Arbitrated Loop (FC-AL), позволяя подключать и отключать устройства без остановки системы, поскольку концентратор автоматически замыкает петлю в случае отключения устройства и автоматически размыкает петлю, если к нему было подключено новое устройство. Дело в том, что в сети хранения с топологией Arbitrated Loop передача данных осуществляется последовательно от узла к узлу — для того чтобы начать передачу данных, передающее устройство инициализирует арбитраж за право использования среды передачи данных; отсюда и название топологии. Каждое изменение петли сопровождается многоступенчатым процессом инициализации, до окончания которого обмен данными невозможен. Топология FC-AL имеет и другие ограничения. Так, петля может содержать не более 126 устройств и производительность петли уменьшается с увеличением числа устройств. Из-за этого топология FC-AL и концентраторы применяются редко; концентраторы иногда можно встретить на периферии SAN. Все современные SAN построены на коммутаторах, позволяющих реализовать полноценное сетевое соединение. Коммутаторы могут не только соединять устройства Fibre Channel, но и разграничивать доступ между устройствами, для чего на коммутаторах создаются так называемые зоны (Zone). Устройства, помещенные в разные зоны, не могут обмениваться информацией друг с другом.
Количество портов в SAN можно увеличивать, соединяя коммутаторы. Группа связанных коммутаторов носит название Fibre Channel Fabric. Связь между коммутаторами называют Interswitch Link (ISL). Коммутаторы, которые не обладают возможностью составлять FC-Fabric или имеющие ограниченные возможности (например, только c одной ISL-связью), называют коммутаторами начального уровня. Коммутаторы следующего класса Director — это модульные коммутаторы с числом портов больше 64 и с продублированными компонентами (блоки питания, вентиляторы, управляющие процессоры и модули коммутации). Наиболее известные на рынке производители коммутаторов Fibre Channel: компании Brocade, Qlogic, Mcdata и InRange.
Маршрутизаторы Fibre Channel-SCSI предназначены для подключения к сети хранения устройств, не оборудованных интерфейсами Fibre Channel, таких как старые дисковые массивы и ленточные библиотеки. Для выполнения процедур резервного копирования в маршрутизаторы Fibre Channel-SCSI встроены механизмы переноса на уровне блоков данных с дисков на ленту. Маршрутизаторы Fibre Channel-SCSI представлены на рынке моделями компаний Crossroads и ADIC.
Программное обеспечение позволяет реализовать резервирование путей доступа серверов к дисковым массивам и динамическое распределение нагрузки между путями. Для большинства дисковых массивов существует простой способ определить, что порты, доступные через разные контроллеры, относятся к одному диску. Специализированное программное обеспечение поддерживает таблицу путей доступа к устройствам и обеспечивает отключение путей в случае аварии, динамическое подключение новых путей и распределение нагрузки между ними. Как правило, изготовители дисковых массивов предлагают специализированное программное обеспечение такого типа для своих массивов. Например, компания Veritas Software предлагает систему Volume Manager для организации логических дисковых томов из физических дисков, резервирования путей доступа к дискам для большинства известных массивов и распределения нагрузки.
Программное обеспечение играет весьма значительную роль в резервном копировании через сеть хранения. Взять хотя бы процедуру Serverless backup, когда непосредственный перенос данных с дисковых массивов на ленту производится на уровне физических дисковых блоков. При выполнении этой операции ПО формирует таблицу дисковых блоков и таблицу соответствия физических блоков и логических структур, необходимую для получения целостного непротиворечивого образа данных на ленте. Наиболее известными средствами резервного копирования, работающими в сетях хранения, являются Veritas NetBackup, Legato NetWorker, Tivoli Storage Manager и HP Omniback II.
Программное обеспечение используется также для управления — отображение топологии, управление зонами на коммутаторах, обнаружение отказов, сбор статистики производительности и т.д. Наибольшее распространение получили программы Veritas SANPoint Control, ВМС Patrol Storage Management, Mcdata SANavigator и Tivoli Storage Network Manager.
Все большую популярность получают средства виртуализации дисковых ресурсов SAN. Идея виртуализации состоит в том, чтобы обеспечить представление серверам ресурсов хранения в виде, независимом от используемых дисков или дисковых массивов. В идеале серверы должны «видеть» не устройства хранения данных, а ресурсы. Технически эта идея реализуется следующим образом: между серверами и дисковыми устройствами помещается специальное устройство виртуализации, к нему с одной стороны подключаются дисковые устройства, а с другой — серверы. На устройстве содержатся правила преобразования физических ресурсов хранения данных в логические, которыми оперируют серверы. Недостатком такого решения является то, что серверы взаимодействуют с устройствами хранения только через устройство виртуализации и в случае выхода его из строя все ресурсы хранения становятся недоступны. Помимо этого, сложно использовать внутренние процедуры дисковых массивов (создание копии данных внутри массива, удаленная репликация), поскольку истинная структура данных скрыта от серверов. Ожидается появление нового поколения средств виртуализации, которые будут встраиваться внутрь НВА и коммутаторов, став его внутренней службой. НВА будут получать от службы виртуализации правила трансляции логических устройств хранения в физические, а затем непосредственно работать с физическими устройствами. Среди производителей устройств виртуализации следует упомянуть компании Datacore, Vicom и Veritas Software.
Примеры решений на основе SAN
SAN начального уровня
Рассмотрим ситуацию, когда в организации имеется система из одного Unix-сервера и нескольких NT-серверов. Все серверы хранят свои данные на локальных дисках. Ёмкости и производительности дисковой подсистемы Unix-сервера перестало хватать для выполнения производственных задач. Выбранный из соображений производительности и надежности дисковый массив имел емкость 600 Гбайт, тогда как для задач Unix-сервера требовалось только 80-100 Гбайт. Но в то же время и NT-серверам будут вскоре нужны дополнительные дисковые ресурсы.
Подходящим решением будет создание небольшой сети хранения, построенной на двух 8-портовых FC-коммутаторах начального уровня, для доступа всех серверов к дисковому массиву. Это позволит расширить дисковое пространство сразу для всех серверов. В результате небольших вложений (коммутаторы и НВА) создана сетевая инфраструктура, которая при дальнейшем расширении дает возможность увеличивать количество подключаемых серверов и дисковых массивов без остановки системы (рис. 2).
Рис. 2. Пример развития до SAN начального уровня
Резервное копирование через SAN
В компании среднего масштаба эксплуатировалась система из нескольких серверов, каждый из которых хранил свои данные на локальных дисках. Резервное копирование производилось по локальной сети на ленточную библиотеку, подключенную напрямую к одному из серверов с наибольшим объемом данных. При росте объема обрабатываемых данных резервное копирование перестало укладываться в отведенное время. Трафик резервного копирования мешал выполнению производственных задач.
Рис. 3. Резервное копирование через SAN
Проблема была решена путем создания SAN резервного копирования (рис. 3). Для этого установили один FC-коммутатор и подключили к нему ленточную библиотеку и серверы. Данные резервного копирования передаются с серверов непосредственно на ленточную библиотеку через SAN. Сократилось время резервного копирования, трафик резервного копирования перестал мешать выполнению производственных задач. Если в комплексе до внедрения SAN выходил из строя сервер, к которому была подключена ленточная библиотека, то ее приходилось перетаскивать, подключая к другому серверу. С внедрением SAN необходимость в этом отпала: все серверы имеют доступ к ленточной библиотеке.
При дальнейшем росте объемов обрабатываемых данных возможна установка дополнительных ленточных приводов в библиотеку или приобретение новой с подключением ее в SAN. При этом новые приводы будут доступны всем серверам комплекса. SAN резервного копирования может быть преобразована в полномасштабную сеть хранения, которая позволит подключать новые дисковые массивы и серверы без остановки системы.
SAN между основным и резервным центром
В крупной компании построены основной и резервный центры, соединенные по IP-сети. Резервное копирование данных производилось в каждом из центров независимо. Из-за больших накладных расходов IP-сети репликация выполнялась с промежутком в асинхронном режиме. Развитие бизнеса вызвало повышение требований к надежности вычислительного центра компании, однако актуальность копий данных в резервном центре, получаемых с помощью асинхронной репликации по локальной сети, уже не соответствовала изменившимся требованиям бизнеса. Помимо этого, наличие двух независимых систем резервного копирования значительно усложняло процесс эксплуатации, процедуры резервного копирования и восстановления данных.
Fibre Channel дает возможность работать на больших расстояниях, что позволяет применить технологию SAN для объединения основного и резервного центров (рис. 4), что позволило увеличить скорость и объемы передачи данных между центрами. Это дало возможность применить синхронный метод репликации и добиться того, чтобы информация на основной площадке и в резервном центре была одинаково актуальной. Основной и резервный центры имеют прямой доступ к дисковым массивам и ленточным библиотекам друг друга, образуя единое пространство, что существенно упростило эксплуатацию комплекса.
Рис. 4. Объединение основного и резервного центров
Практические советы
Построение SAN
В небольших SAN рекомендуется использовать коммутаторы начального уровня вместо концентраторов: цена на коммутаторы начального уровня сравнима с ценой управляемых концентраторов. При использовании топологии FC-AL ошибки одного из устройств в петле сказываются на работе всех остальных, вплоть до полной неработоспособности. Найти и изолировать источник ошибок в сети Fibre Channel, построенной на концентраторах, очень сложно (как правило, производится последовательное отключение устройств, пока не будет найден источник). У коммутаторов ошибки на одном из портов не сказываются на работе остальных; кроме того, на каждом порту всегда есть статистика ошибок. Производительность коммутируемой сети Fibre Channel выше, чем у сети, построенной на концентраторах, поскольку все устройства в Arbitrated Loop для обмена данными используют одну линию с пропускной способностью 100 Мбайт/с, а у коммутатора каждый порт работает независимо.
При построении SAN на коммутаторах (за исключением коммутаторов класса Director) рекомендуется создавать две независимые группы коммутаторов; такая конструкция называется dual fabric. Это позволяет избежать единой точки отказа в SAN. Кроме того, изменения конфигурации, регламентные работы (например, установка новых программно-аппаратных средств) на одной из групп не сказываются на работе другой. Применение dual fabric совместно с программным обеспечением поддержки альтернативных путей доступа и распределение нагрузки для соединения серверов и устройств хранения (пути, разумеется, должны быть распределены между разными группами коммутаторов) позволяют создать надежную сеть хранения. В качестве такого программного инструментария можно рекомендовать Veritas Volume Manager.
В случае создания группы из нескольких коммутаторов важно подобрать правильное количество соединений между коммутаторами. Из практических соображений количество соединений выбирается в зависимости от числа активных одновременных обменов, происходящих между устройствами, включенными в разные коммутаторы. Так, если имеются две пары активно работающих устройств, то создавать три связи между коммутаторами бессмысленно: одна связь будет всегда незагружена (это связано с особенностью алгоритма маршрутизации пакетов между коммутаторами). Желательно, чтобы число активных одновременных обменов было кратно числу связей между коммутаторами. Обычно из соображений надежности число связей между коммутаторами рекомендуется делать равным 2 (или более).
На рис. 5 и 6 для иллюстрации применения рекомендаций на практике изображены схемы SAN, реализованные у двух крупных заказчиков нашей компании».
Рис. 5. Пример реализации Dual fabric SAN на основе центральных и периферийных коммутаторов
Центральные коммутаторы основной и резервной площадок объединены двумя ISL-соединениями (рис. 5), а все серверы и дисковые массивы подключены в каждую из групп. С целью экономии портов на центральных коммутаторах и в связи с особенностями ленточной FC-библиотеки для ее подключения к серверам были использованы периферийные коммутаторы. Ленточные устройства библиотеки подключены в два периферийных коммутатора.
Рис. 6. Пример реализации SAN на основе коммутатора класса Director
В сети (рис. 6) в качестве центрального коммутатора используется FC-Director. Все серверы и дисковые массивы подключены двумя соединениями в центральный коммутатор. В целях экономии портов на центральном коммутаторе для подключения ленточных устройств библиотеки в SAN были использованы два периферийных коммутатора.
Заключение
Технология SAN продолжает развиваться с нарастающей скоростью. Сегодня все большее число систем хранения данных строится на основе SAN. Однако при создании SAN, как и при создании «обычной» локальной сети, необходимо проводить проектирование, задаваясь вопросом: стоит ли при модернизации или создании новой системы хранения данных вкладывать средства в устаревшие технологии или уже сегодня начать внедрять SAN?
Денис Голубев (dlg@jet.msk.su) — ведущий инженер-проектировщик вычислительных комплексов, компания «Инфосистемы Джет» (Москва)
Микропрограммные средства Fibre Channel
Под микропрограммными средствами (firmware) Fibre Channel понимают код, интегрированный с аппаратным обеспечением Fibre Channel. Если аппаратное обеспечение физически объединяет компоненты fabric-сети, то микропрограммные средства управляют и контролируют fabric-сеть, которая подразделяется на логические объекты, такие как порты, узлы и платформы, причем каждый из этих объектов имеет множество атрибутов. Когда какой-либо порт входит в fabric-сеть, он регистрирует набор своих атрибутов. Управляющие приложения могут впоследствии направить запрос, чтобы определить атрибуты, характеристики и топологию fabric-сети.
Микропрограммные средства Fibre Channel позволяют нескольким протоколам одновременно функционировать, используя несколько коммутаторов. Администратор сети создает зоны, что делает возможным работу в гетерогенном окружении. Fibre Channel рационально маршрутизирует трафик между коммутаторами, что улучшает масштабируемость и взаимодействие сетей. Обеспечена инкапсуляция различных протоколов верхнего уровня (Upper Layer Protocol — ULP) в пакеты Fibre Channel. Главные преимущества этих средств — соответствие стандарту ANSI и передача данные и управление по одному соединению с высокой скоростью, обеспечиваемой протоколом Fibre Channel.
Логические объекты и атрибуты
Порты Fibre Channel - это базисные объекты, соединяющие все устройства Fibre Channel. Адрес Fibre Channel присваивается каждому порту, так что обеспечивается маршрутизация пакетов на каждое конечное устройство. Порты группируются в узлы, а узлы — в платформы (рис. A). Каждый объект регистрирует свои атрибуты в fabric-сети, когда он входит в эту сеть. Протоколы верхнего уровня могут также определить атрибуты, связанные с конкретными приложениями.
Рис. A. Устройство Fibre Channel может иметь набор атрибутов, а управляющее приложение может запросить и получить эти атрибуты. Платформы содержат хотя бы один узел, а каждый узел — хотя бы один порт
Устройства или управляющие приложения могут запросить и получить атрибуты Fibre Channel. Службы каталогов, а именно Name Server (сервер доменных имен) и IP Address Server (сервер IP-адресов), обеспечивают доступ к атрибутам логических объектов. Стандартизованные команды позволяют найти эти атрибуты.
Инициализация и мониторинг
Когда fabric-сеть Fibre Channel инициализируется или когда к ней подключаются новые устройства, выполняется ряд процедур с целью информирования коммутаторов fabric-сети обо всех доступных ресурсах. Если какое-либо устройство становится недоступным, SAN оповещает зарегистрированные устройства о том, что данный порт теперь недоступен. Более того, fabric-сеть достаточно интеллектуальна, чтобы оповестить зарегистрированные порты о наличии незначительных неисправностей сети, таких как высокая частота появления ошибочных битов в каком-либо канале связи.
Коммутаторы fabric-сети предоставляют службы управления, такие как управление конфигурацией и определение топологии. Служба конфигурации fabric-сети (Fabric Configuration Server) позволяет управляющему приложению динамически определять топологию fabric-сети. Можно запросить у fabric-сети информацию о топологии, которая позволит управляющим приложениям сформировать динамическую топологическую карту сети. Fabric-сеть — интересный случай распределенной обработки данных: каждый коммутатор должен хранить и распространять информацию о подключенных к нему устройствах. Fibre Channel обеспечивает управление fabric-сетью по тому же соединению, через которое осуществляется передача данных.
Зонирование
Поскольку сети хранения на основе Fibre Channel консолидируют данные различных серверов и операционных систем, через fabric-сеть пересылаются многие типы трафика и данных. Для обеспечения безопасности и выделения ресурсов администратор создает зоны и группы зон, чтобы ограничить доступ к определенным областям. Зоны разделяют fabric-сеть на группы устройств (рис. Б). Группы зон - это их совокупности. Каждая группа зон представляет отдельные конфигурации, которые оптимизируют fabric-сеть для выполнения определенных функций. Например, когда осуществляется резервное копирование NT-серверов (рис. Б), можно активировать группу зон 1, чтобы обеспечить более эффективное резервное копирование, чем в случае, когда активна группа зон 2. Зонирование дает возможность работы в гетерогенных средах и позволяет динамически настраивать fabric-сеть для конкретных приложений.
Рис. Б. Группы зон — это совокупности зон, ограничивающие поток трафика между различными устройствами. Группа зон 1 используется при резервном копировании NT-серверов и включает в себя накопитель на магнитной ленте. Группа зон 2 используется при резервном копировании Unix-серверов и включает в себя тот же накопитель на магнитной ленте
Маршрутизация между коммутаторами
Важной вехой в индустрии Fibre Channel стала стандартизация протокола маршрутизации. Протокол маршрутизации Fabric Shortest Path First (FSPF), обеспечивает связь между коммутаторами различных фирм-производителей. Маршрутизация при помощи протокола FSPF работает аналогично маршрутизации в сетях TCP/IP. Основное преимущество FSPF перед другими протоколами маршрутизации состоит в том, что маршрут динамически вычисляется программно-аппаратными средствами Fibre Channel. Всякий раз, когда в fabric-сеть добавляется новый коммутатор, маршрутизация автоматически модернизируется для новой конфигурации. FSPF обеспечивает автоматическое обновление маршрутизации при подключении или отключении устройств.
Fibre Channel и протоколы верхнего уровня
Fibre Channel обеспечивает транспортный уровень для протоколов верхнего уровня (Upper Layer Protocol — ULP), которые содержат данные приложений. Инкапсуляция ULP в FC-пакеты определяется стандартами, разработанными ANSI и Internet Engineering Task Force. Список инкапсулируемых протоколов ULP приведен в таблице.
Таблица. Стандарты для инкапсуляции ULP в FC-пакеты
В сущности, для любой технологии можно обеспечить возможность работы через Fibre Channel. Так, для мэйнфреймов реализована инкапсуляция протоколов Enterprise Systems Connection (ESCON) и Fiber Connection (FICON), а для цифровых аудио- и видеофайлов разработан протокол Fibre Channel Audio Visual (FC-AV).