Андрей Борзенко

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

Как правило, в информационных системах резервное копирование/восстановление данных выполняют один или несколько серверов, собирающих информацию через локальную сеть. Управление процессом резервного копирования информации целого предприятия - задача весьма ответственная, трудоемкая, требующая существенных затрат времени высококвалифицированного администратора. В числе прочего администратор обязан следить за своевременным копированием важных данных, выбирая оптимальные стратегии резервирования для различных типов хранимой информации.

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

Соответственно архитектура современных систем резервирования предполагает наличие сервера системы резервного копирования (часто называемого backup- или медиа-сервером), на который по локальной сети копируются данные с остальных серверов и, возможно, с ПК предприятия (рис. 1). Как правило, для хранения используются устройства с параллельными интерфейсами, например, SCSI. С ростом объема данных, подлежащих резервному копированию, такая архитектура теряет свою эффективность, поскольку очень сильно загружает сетевой трафик и вычислительные ресурсы серверов (процессоры, каналы ввода-вывода). Считается, что подобная технология оправдывает себя в тех случаях, когда объемы всей копируемой информации находятся в пределах 1 Тбайт. При больших объемах локальная сеть Ethernet на 10/100 Мбит/с становится узким местом, не позволяющим передавать необходимый объем данных в пределах заданного временного окна. Кроме того, пропускной способности локальной сети и SCSI-интерфейса становится недостаточно для проведения резервного копирования даже в отведенный период времени, когда сеть и серверы практически не загружены (обычно это нерабочие часы, ночное время). Следовательно, резкое возрастание объема хранимых данных усугубляет проблему их резервного копирования, особенно если учесть, что эта процедура должна оказывать минимальное влияние на функционирующие системы.

Fig.1
Рис.1. Традиционная модель резервного копирования.

Решить острую проблему нехватки пропускной способности можно путем подключения библиотек магнитных лент к каждому из крупных серверов. В этом случае они могут выполнять резервное копирование на свои собственные, локально подключенные ленточные накопители, вместо того чтобы пересылать данные по сети. Однако такое решение часто оказывается неэффективным и дорогим. Для создания полной резервной копии некоторым серверам требуется библиотека магнитных лент, причем достаточно большая, а такие устройства стоят десятки и сотни тысяч долларов (в зависимости от емкости). Кроме того, для многих серверов вовсе не требуется проводить резервное копирование каждые сутки. Если, например, ПО базы данных позволяет создавать инкрементальные резервные копии, то полную копию можно делать раз в неделю или даже раз в месяц. Это значит, что в течение остального времени большая часть ленточных накопителей в библиотеке просто не используется. Следует учесть и еще один момент - размер библиотеки (в первую очередь число входящих в нее накопителей) часто определяется требованиями к операции восстановления данных, а не к резервному копированию.

Вместе с тем при создании мощной инфраструктуры хранения данных желательно, чтобы она в числе прочего брала на себя значительную часть нагрузки, особенно в части рутинных и утилитарных операций, в частности, связанных с выполнением централизованного корпоративного резервного копирования с локальной сети. Однако в любом случае для совместного использования ресурсов необходима сеть. Речь идет уже о сети хранения данных.

Преимущества SAN

Архитектура SAN (Storage Area Network) привлекает открывающейся возможностью более гибко решать проблемы масштабирования различных устройств хранения и оптимизации емкости хранения. Как известно, SAN - это выделенная сеть, предназначенная для высокоскоростного соединения серверов с устройствами хранения данных (дисковыми массивами, ленточными и оптическими библиотеками). Данная технология позволяет серверу получить доступ к любому накопителю, не загружая при этом ни другие серверы, ни локальную вычислительную сеть. Кроме того, возможен обмен данными между накопителями без участия серверов. SAN способна работать с несколькими протоколами и ОС, ею можно управлять как разнородными сетями. Она также сравнительно легко масштабируема, что способствует ее применению в крупных проектах. Высокая производительность и надежность SAN расширяет возможности подключения к кластерам, создания приложений защиты данных, а также централизованного управления системами хранения данных.

SAN не зависит от среды передачи, но на данный момент фактический стандарт - технология Fibre Channel, обеспечивающая скорость передачи данных 1-2 Гбит/с. В отличие от традиционных сред передачи на базе SCSI, обеспечивающих подключение на расстояние не более 25 м, Fibre Channel позволяет работать на удалении до 10 км. Передавать данные в сети Fibre Channel можно как по медному кабелю, так и по оптоволокну.

 
Среда передачи Максимальная дальность
Медный кабель 10-30 м
Многомодовый оптический кабель 180-500 м
Одномодовый оптический кабель 10 км

При построении сети хранения могут использоваться все допустимые топологии Fibre Channel: "точка-точка" (прямое подключение сервера к дисковому массиву); арбитражная петля (Arbitrated Loop, FC-AL); коммутируемое подключение (switched, FC-SW). Технология Fibre Channel поддерживает блочный ввод-вывод по протоколу SCSI, при котором операции чтения-записи идентифицируют определенное устройство хранения (диск или ленту) и определенный блок на диске. Доступ к данным на уровне блоков, обеспечивающий возможность получать по запросу отдельные записи, а не целые файлы, а также оптимизация технологии Fibre Channel для высокопроизводительной и надежной передачи больших блоков с минимальными затратами делают сети хранения на базе Fibre Channel подходящей платформой для ответственных транзакционных приложений (серверов баз данных, хранилищ, ERP). Несомненно, такие многопользовательские системы в данном случае выигрывают и от консолидации всех корпоративных ресурсов памяти в одном месте.

В сеть хранения могут подключаться дисковые массивы RAID, простые массивы дисков (так называемые Just a Bunch of Disks, JBOD), ленточные или магнитооптические библиотеки для резервирования и архивирования данных.

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

Основные компоненты для организации сети SAN, помимо самих устройств хранения, - это адаптеры для подключения серверов к сети Fibre Channel (Host Bus Adapter, НВА), сетевые устройства для поддержки той или иной топологии FC-сети и специализированный программный инструментарий для управления сетью хранения. Эти программные системы могут функционировать как на сервере общего назначения, так и на самих устройствах хранения, хотя иногда часть функций выносится на специализированный тонкий сервер для управления сетью хранения (SAN appliance).

Главная задача ПО для SAN - централизованное управление сетью хранения, включая конфигурирование, мониторинг, контроль и анализ компонентов сети. Одна из наиболее важных - функция управления доступом к дисковым массивам, если в SAN хранятся данные разнородных серверов. Сети хранения обеспечивают одновременный доступ множества серверов к множеству дисковых подсистем, привязывая каждый хост к определенным дискам на определенном дисковом массиве. Для разных ОС необходимо расслоение дискового массива на "логические области" (Logical Unit, LUN), которыми они будут пользоваться, не вызывая конфликтов. Выделение логических областей может понадобиться и для организации доступа к одним и тем же данным для некоторого пула серверов, например, серверов одной рабочей группы. За поддержку всех этих операций отвечают специальные программные модули.

ПО для SAN предлагает и такие возможности, как удаленное зеркалирование данных в катастрофоустойчивых решениях, создание копий ("клонов") и мгновенных виртуальных образов логических томов (snapshot). Клонирование позволяет независимо от основных использовать дополнительные копии логических томов, например, для резервного копирования. С этой же целью могут применяться создаваемые практически мгновенно и без физического копирования данных виртуальные образы логических томов, которые облегчают распараллеливание работы нескольких серверов с одной и той же информацией.

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

Два варианта реализации резервного копирования

Как уже отмечалось, в традиционных сетях резервное копирование приводит к перегрузке локальной сети, файловых серверов и серверов приложений. Если резервное копирование приходится выполнять в рабочее время, это может существенно понизить продуктивность работы пользователей. Кроме того, традиционные системы резервного копирования уже не обеспечивают достаточной производительности для обработки постоянно растущих объемов данных. SAN позволяет полностью перенести трафик резервного копирования с локальной сети на сеть хранения. Это можно осуществить двумя способами - без загрузки локальной сети (LAN-free backup - внесетевое копирование) и без участия сервера (Server-free backup - внесерверное копирование).

 

Ленточные библиотеки

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

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

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

Для библиотечного устройства в архитектуре SAN характерно предоставление множественного доступа к нему со стороны нескольких серверов, входящих в одну зону. В результате ленточное устройство библиотеки сервера поступает в распоряжение того, кто первым подал запрос.

LAN-free backup

При внесетевом копировании данные с диска на ленту и обратно передаются внутри SAN (рис. 2). Исключение сетевого сегмента из пути резервного копирования данных позволяет избежать излишних задержек на передачу трафика через сеть IP и платы ввода-вывода. Загрузка локальной сети сокращается, и резервное копирование можно проводить практически в любое время суток. Однако пересылку данных выполняет сервер, подключенный к SAN, что увеличивает нагрузку на него. Благодаря протоколу Fibre Channel несколько каналов передачи данных можно организовать с помощью одного оптического кабеля. При этом весь объем резервируемых данных с backup-серверов хранения направляется на ленточное устройство, минуя локальную сеть. В этом случае локальная сеть необходима лишь для контроля работы самих серверов резервирования со стороны главных серверов. Таким образом, по локальной сети передаются только метаданные небольшого объема, содержащие информацию о резервируемых данных. Главные серверы отвечают в целом за политику резервного копирования данных в своем сегменте или зоне ответственности. Все серверы резервирования выступают как клиенты по отношению к главному серверу. Считается, что рассматриваемый метод резервного копирования позволяет максимально задействовать пиковую полосу пропускания Fibre Channel - 100 Мбайт/с.

Fig.2
Рис. 2. Внесетевое резервное копирование (LAN-free backup).

В качестве протокола, применяемого для передачи данных между серверами и библиотеками, могут использоваться как SCSI поверх Fibre Channel, так и IP поверх Fibre Channel, тем более что большинство FC-адаптеров и FC-концентраторов поддерживают одновременно и IP, и SCSI на одном канале Fibre Channel. Считается, что протокол SCSI, изначально разработанный для эффективной передачи больших блоков данных между серверами и накопителями, лучше подходит для применения в сетях SAN.

Server-free backup

Этот тип резервного копирования (рис. 3) представляет собой дальнейшее развитие метода LAN-free - он позволяет уменьшить количество процессоров, памяти, устройств ввода-вывода, задействованных в резервировании. Внесерверное копирование, иногда называемое "ненавязчивым копированием образа" (non-intrusive image backup), предусматривает архивацию разделов целиком (в противоположность пофайловому архивированию), но при этом позволяет восстанавливать отдельные файлы. По определению при внесерверном копировании данные копируются с диска на ленту и обратно без прямого участия сервера. Существует несколько способов внесерверного резервного копирования, например, с помощью специального ПО или команд расширенного копирования SCSI-3 Extended-Copy, либо путем добавления запасного узла или выделенного сервера для архивирования сервера приложений. Поскольку для резервного копирования требуется наличие некоторого дополнительного третьего узла, полностью отвечающего за процесс копирования, отсюда происходит и другое название этого подхода - копирование с участием третьей стороны (Third-Party Copy, 3PC). Это может быть, к примеру, маршрутизатор хранилищ данных, который берет на себя функции, ранее выполняемые сервером.

Fig.3
Рис. 3. Внесерверное резервное копирование (server-free backup).

Как известно, одно из преимуществ архитектуры SAN заключается в отсутствии жесткой привязки составляющих ее систем к каким-либо устройствам хранения данных. Это свойство и заложено в основу технологии резервного копирования без участия сервера. В данном случае к дисковому массиву могут иметь прямой доступ как сервер данных, так и устройства, принимающие участие в копировании информации с дисковых массивов. Резервному копированию блоков, относящихся к какому-либо файлу, предшествует создание некоего индекса или списка номеров принадлежащих ему блоков. Это и позволяет в дальнейшем привлечь внешние устройства для резервного копирования.

Стоит еще раз подчеркнуть, что физическая пересылка данных выполняется внутри быстрой сети SAN. Диски и стримеры только получают или выдают команды SCSI-3 Extended Copy. Тем самым удается высвободить не только сеть, но и серверы приложений. Вообще говоря, внесерверное копирование часто определяется как операция, при которой диски и ленточные накопители самостоятельно координируют и выполняют все необходимые операции ввода-вывода, и в этом процессе не участвуют никакие другие устройства. Данная технология позволяет напрямую перемещать информацию между подключенными к сети SAN дисковыми массивами и библиотеками. Данные перемещаются по сети SAN и не загружают ни локальную сеть, ни серверы.

Вообще говоря, внесерверное резервирование считается идеальным решением для корпоративных сетей, которые должны функционировать в непрерывном режиме (24x7) и для которых временной период, в течение которого можно выполнять резервное копирование без существенного влияния на работу пользователей и приложений, становится предельно малым.

Данная технология резервного копирования работает в трехуровневой архитектуре. На верхнем уровне находится центральный сервер резервного копирования, который управляет всем этим процессом (отслеживает расписание резервного копирования, формирует индексы скопированных файлов, образов, задействованных носителей и т. д.). На промежуточном уровне находятся программные агенты, устанавливаемые на серверы, информация с которых подлежит резервному копированию. Эти агенты отвечают за правильную работу с файловой системой и приложениями (например, СУБД), данные которых подлежат резервному копированию; за формирование "мгновенных снимков" (snapshot) файловой системы или ее части, подлежащей резервному копированию. Агенты формируют список данных, которые требуется копировать. Список обычно формируется в виде адресов блоков данных жестких дисков и передается агентом на нижний уровень архитектуры.

Нижний уровень представляет собой некий "переместитель данных" (data mover), встроенный в устройства SAN и ПО, которые выполняют непосредственное перемещение данных между дисковыми массивами и библиотеками на основе списка блоков данных, переданных со второго уровня.

Для обеспечения взаимодействия между тремя уровнями используются коммуникационные протоколы. Взаимодействие между верхним и средним уровнями обеспечивается посредством протокола Network Data Management Protocol (NDMP), разработанного компаниями Legato Systems и Network Appliance. Вместо NDMP могут использоваться и частные протоколы, разработанные производителями ПО для резервного копирования. Между нижним и средним уровнями взаимодействие обеспечивается при помощи протокола SCSI-3 Extended Copy, первые спецификации которого были разработаны компаниями Legato Systems, Crossroads и Pathlight Communications. Он представляет собой расширение команд протокола SCSI. Ведущие производители SCSI-накопителей уже включают в свои изделия расширенный набор SCSI-3 команд, который обеспечивает непосредственное перемещение данных между SCSI-устройствами.

Внесерверное резервное копирование происходит следующим образом. Сервер резервного копирования (верхний уровень) в соответствии с заданным расписанием инициирует программные агенты второго уровня. На избранный для резервного копирования том сбрасываются все дисковые буферы. Затем изготавливается так называемый "моментальный снимок" или виртуальная копия (snapshot) данных. Запись в блоки, вошедшие в snapshot, на время копирования временно перехватывается для сохранения целостности копируемых данных. Агент внесерверного копирования составляет список блоков, на которых физически расположен "снимок", и, пока идет копирование, автоматически обновляет его в случае реорганизации файловой системы, переконфигурирования RAID и т. п. Заметим, что создание мгновенной копии занимает намного меньше времени, чем резервное копирование, таким образом время простоя будет меньше, чем при создании фактического архива. На основе созданного списка программные агенты дают устройствам SAN указания выполнить непосредственное перемещение данных между дисковыми массивами и библиотекой, при этом перемещение данных не затрагивает ни локальной сети, ни серверов. Программа резервного копирования последовательно выдает команды SCSI-3 Extended Copy, передавая поддерживающему их маршрутизатору Fibre Channel или другому устройству адреса физических блоков диска, нуждающихся в копировании. Примерно так работает ПО компаний Veritas, Legato, Computer Associates, Tivoli.

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

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

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