Cистемы хранения данных

postimages/2/2322/full/544151.jpg

Что такое системы хранения данных (СХД) и для чего они нужны? В чём разница между iSCSI и FibreChannel? Почему данное словосочетание только в последние годы стало известно широкому кругу IT-специалистов и почему вопросы систем хранения данных всё больше и больше тревожат вдумчивые умы?
<p>Думаю, многие заметили тенденции развития в окружающем нас компьютерном мире – переход от экстенсивной модели развития к интенсивной. Наращивание мегагерц процессоров уже не даёт видимого результата, а развитие накопителей не поспевает за объёмом информации. Если в случае процессоров всё более или менее понятно – достаточно собирать многопроцессорные системы и/или использовать несколько ядер в одном процессоре, то в случае вопросов хранения и обработки информации так просто от проблем не избавиться. Существующая на данный момент панацея от информационной эпидемии – СХД. Название расшифровывается как Сеть Хранения Данных (Storage Area Network) или Система Хранения Данных. В любом случае – это спе
postimages/2/2322/full/185346.jpg


Основные проблемы, решаемые СХД

Итак, какие же задачи призвана решить СХД? Рассмотрим типичные проблемы, связанные с растущими объёмами информации в любой организации. Предположим, что это хотя бы несколько десятков компьютеров и несколько разнесённых территориально офисов.

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

2. Лавинообразный рост информации – зачастую количество жёстких дисков, которые вы можете установить в конкретный сервер, не может покрыть необходимую системе ёмкость. Как следствие:
Невозможность полноценно защитить хранимые данные – действительно, ведь довольно трудно произвести даже backup данных, которые находятся не только на разных серверах, но и разнесены территориально.
Недостаточная скорость обработки информации – каналы связи между удалёнными площадками пока оставляют желать лучшего, но даже при достаточно «толстом» канале не всегда возможно полноценное использование существующих сетей, например, IP, для работы.
Сложность резервного копирования – если данные читаются и записываются небольшими блоками, то произвести полное архивирование информации с удалённого сервера по существующим каналам может быть нереально – необходима передача всего объёма данных. Архивирование на местах зачастую нецелесообразно по финансовым соображениям – необходимы системы для резервного копирования (ленточные накопители, например), специальное ПО (которое может стоить немалых денег), обученный и квалифицированный персонал.

3. Сложно или невозможно предугадать требуемый объём дискового пространства при развертывании компьютерной системы. Как следствие:
Возникают проблемы расширения дисковых ёмкостей – довольно сложно получить в сервере ёмкости порядков терабайт, особенно если система уже работает на существующих дисках небольшой ёмкости – как минимум, требуется остановка системы и неэффективные финансовые вложения.
Неэффективная утилизация ресурсов – порой не угадать, в каком сервере данные будут расти быстрее. В сервере электронной почты может быть свободен критически малый объём дискового пространства, в то время как другое подразделение будет использовать всего лишь 20% объёма недешёвой дисковой подсистемы (например, SCSI).

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

5. Сложность управления распределёнными потоками информации – любые действия, которые направлены на изменения данных в каждом филиале, содержащем часть распределённых данных, создает определённые проблемы, начиная от сложности синхронизации различных баз данных, версий файлов разработчиков и заканчивая ненужным дублированием информации.

6. Низкий экономический эффект внедрения «классических» решений – по мере роста информационной сети, больших объёмов данных и всё более распределённой структуры предприятия финансовые вложения оказываются не столь эффективны и зачастую не могут решить возникающих проблем.

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

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

Мегабайты/транзакции?

Если раньше жёсткие диски находились внутри компьютера (сервера), то теперь им там стало тесно и не очень надёжно. Самое простое решение (разработанное достаточно давно и применяемое повсеместно) – технология RAID.

[img]images\RAID\01.jpg[/img]

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

С точки зрения пользователя или ПО, скорость определяется не только пропускной способностью системы (Мбайт/с), но и числом транзакций – то есть числом операций ввода-вывода в единицу времени (IOPS). Увеличению IOPS способствует, что вполне логично, большее число дисков и те методики повышения производительности, которые предоставляет контроллер RAID (к примеру, кэширование).

Если для просмотра потокового видео или организации файл-сервера больше важна общая пропускная способность, то для СУБД, любых OLTP (online transaction processing) приложений критично именно число транзакций, которые способна обрабатывать система. А с этим параметром у современных жёстких дисков всё не так радужно, как с растущими объёмами и, частично, скоростями. Все эти проблемы призвана решить сама система хранения данных.

Уровни защиты

Нужно понимать, что в основе всех систем хранения данных лежит практика защиты информации на базе технологии RAID – без этого любая технически продвинутая СХД будет бесполезна, потому что жёсткие диски в этой системе являются самым ненадёжным компонентом. Организация дисков в RAID – это «нижнее звено», первый эшелон защиты информации и повышения скорости обработки.

Однако, кроме схем RAID, существует и более низкоуровневая защита данных, реализованная «поверх» технологий и решений, внедрённых в сам жёсткий диск его производителем. К примеру, у одного из ведущих производителей СХД – компании EMC – существует методика дополнительного анализа целостности данных на уровне секторов накопителя.

Разобравшись с RAID, перейдём к структуре самих СХД. Прежде всего, СХД разделяются по типу используемых интерфейсов подключения хостов (серверов). Внешние интерфейсы подключения – это, в основном SCSI или FibreChannel, а также довольно молодой стандарт iSCSI. Также не стоит сбрасывать со счетов небольшие интеллектуальные хранилища, которые могут подключаться даже по USB или FireWire. Мы не станем рассматривать более редкие (порой просто неудачные в том или ином плане) интерфейсы, как SSA от IBM или интерфейсы, разработанные для мейнфреймов – к примеру, FICON/ESCON. Особняком стоят хранилища NAS, подключаемые в сеть Ethernet. Под словом «интерфейс» в основном понимается внешний разъём, но не стоит забывать, что разъём не определяет протокол связи двух устройств. На этих особенностях мы остановимся чуть ниже.

Интерфейс SCSI

[img]images\RAID\02.gif[/img]

Расшифровывается как Small Computer System Interface (читается «скази») – полудуплексный параллельный интерфейс. В современных системах хранения данных чаще всего представлен разъёмом SCSI:

[img]images\RAID\03.gif[/img]

[img]images\RAID\04.gif[/img]

...и группой протоколов SCSI, а конкретнее – SCSI-3 Parallel Interface. Отличие SCSI от знакомого нам IDE – бОльшее число устройств на канал, бОльшая длина кабеля, бОльшая скорость передачи данных, а также «эксклюзивные» особенности типа high voltage differential signaling, command quequing и некоторые другие – углубляться в этот вопрос мы не станем.
Если говорить об основных производителях компонент SCSI, например SCSI-адаптеров, RAID-контроллеров с интерфейсом SCSI, то любой специалист сразу вспомнит два названия – Аdaptec и LSI Logic. Думаю, этого достаточно, революций на этом рынке не было уже давно и, вероятно, не предвидится.

Интерфейс FibreChannel

Полнодуплексный последовательный интерфейс. Чаще всего в современном оборудовании представлен внешними оптическими разъёмами типа LC или SC (LC – меньше по размерам):

[img]images\RAID\05.jpg[/img]

[img]images\RAID\06.jpg[/img]

…и протоколами FibreChannel Protocols (FCP). Существует несколько схем коммутации устройств FibreChannel:

Point-to-Point – точка-точка, прямое соединение устройств между собой:

[img]images\RAID\07.gif[/img]

Crosspoint Switched – подключение устройств в коммутатор FibreChannel (аналогичное реализации сети Ethernet на коммутаторах):

[img]images\RAID\08.gif[/img]

Arbitrated loop – FC-AL, петля с арбитражным доступом – все устройства связаны друг с другом в кольцо, схема чем-то напоминает Token Ring. Также может использоваться коммутатор – тогда физическая топология будет реализована по схеме «звезда», а логическая – по схеме «петля» (или «кольцо»):

[img]images\RAID\09.gif[/img]

Подключение по схеме FibreChannel Switched является самой распространённой схемой, в терминах FibreChannel такое подключение называется Fabric – в русском языке существует калька с него – «фабрика». Следует учесть, что коммутаторы FibreChannel – это довольно продвинутые устройства, по сложности наполнения близкие к IP-коммутаторам уровня 3. Если коммутаторы соединены между собой, то они функционируют в единой фабрике, имея пул настроек, действующих для всей фабрики сразу. Изменение каких-то опций на одном из коммутаторов может приводить к перекоммутации всей фабрики, не говоря уже о настройках авторизации доступа, к примеру. С другой стороны, существуют схемы SAN, которые подразумевают несколько фабрик внутри единой сети SAN. Таким образом, фабрикой можно называть только группу объединённых между собой коммутаторов – два или более не объединённых между собой устройства, введённые в SAN для повышения отказоустойчивости, образуют две или более различные фабрики.

Компоненты, позволяющие объединять хосты и системы хранения данных в единую сеть, принято обозначать термином «connectivity». Connectivity – это, конечно же, дуплексные соединительные кабели (обычно с интерфейсом LC), коммутаторы (switches) и адаптеры FibreChannel (HBA, Host Base Adapters) – то есть те платы расширения, которые, будучи установленными в хосты, позволяют подключить хост в сеть SAN. HBA обычно реализованы в виде плат стандарта PCI-X или PCI-Express.

[img]images\RAID\10.jpg[/img]

Не стоит путать fibre и fiber – среда распространения сигнала может быть различной. FibreChannel может работать по «меди». Например, все жёсткие диски FibreChannel имеют металлические контакты, да и обычная коммутация устройств по «меди» – не редкость, просто постепенно все переходят на оптические каналы как наиболее перспективную технологию и функциональную замену «меди».

Интерфейс iSCSI

Обычно представлен внешним разъёмом RJ-45 для подключения в сеть Ethernet и собственно самим протоколом iSCSI (Internet Small Computer System Interface). По определению SNIA: «iSCSI — это протокол, который базируется на TCP/IP и разработан для установления взаимодействия и управления системами хранения данных, серверами и клиентами». На этом интерфейсе остановимся немножко подробней, хотя бы в силу того, что каждый пользователь способен использовать iSCSI даже в обычной «домашней» сети.

Необходимо знать, что протокол iSCSI определяет, как минимум, транспортный протокол для SCSI, который работает поверх TCP, и технологию инкапсуляции SCSI-команд в сеть на базе IP. Проще говоря, iSCSI – это протокол, позволяющий получить блочный доступ к данным с помощью команд SCSI, пересылаемых через сеть со стеком TCP/IP. iSCSI появился как замена FibreChannel и в современных СХД имеет перед ним несколько преимуществ – способность объединять устройства на огромных расстояниях (используя существующие сети IP), возможность обеспечивать заданный уровень QoS (Quality of Service, качество обслуживания), более низкую стоимость connectivity. Однако основная проблема использования iSCSI как замены FibreChannel – большое время задержек, возникающих в сети из-за особенностей реализации стека TCP/IP, что сводит на нет одно из важных преимуществ использования СХД – скорость доступа к информации и низкую латентность. Это серьёзный минус.

Маленькое замечание по поводу хостов – они могут использовать как обычные сетевые карты (тогда обработка стека iSCSI и инкапсуляция команд будет осуществляться программными средствами), так и специализированные карты с поддержкой технологий аналогичных TOE (TCP/IP Offload Engines). Такая технология обеспечивает аппаратную обработку соответствующей части стека протокола iSCSI. Программный метод дешевле, однако больше загружает центральный процессор сервера и в теории может приводить к бОльшим задержкам, чем аппаратный обработчик. При современной скорости сетей Ethernet в 1 Гбит/с можно предположить, что iSCSI будет работать ровно в два раза медленнее FibreChannel со скоростью 2 Гбит, однако в реальном применении разница будет ещё заметнее.

Помимо уже рассмотренных, кратко упомянем ещё пару протоколов, которые встречаются более редко и предназначены для предоставления дополнительных сервисов уже существующим сетям хранения данных (SAN):

FCIP (Fibre Channel over IP) – туннельный протокол, построенный на TCP/IP и предназначенный для соединения географически разнесённых сетей SAN через стандартную среду IP. Например, можно объединить две сети SAN в одну через Интернет. Достигается это использованием FCIP-шлюза, который прозрачен для всех устройств в SAN.
iFCP (Internet Fibre Channel Protocol) – протокол, позволяющий объединять устройства с интерфейсами FC через IP-сети. Важное отличие от FCIP в том, что возможно объединять именно FC-устройства через IP-сеть, что позволяет для разной пары соединений иметь разный уровень QoS, что невозможно при туннелировании через FCIP.

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

Основные аппаратные параметры СХД

Некоторые из них были перечислены выше – это тип внешних интерфейсов подключения и типы внутренних накопителей (жёстких дисков). Следующий параметр, который есть смысл рассматривать после двух вышеперечисленных при выборе дисковой системы хранения, – её надёжность. Надёжность можно оценить не по банальному времени наработки на отказ каких-то отдельных компонент (факт, что это время примерно равно у всех производителей), а по внутренней архитектуре. «Обычная» система хранения часто «внешне» представляет собой дисковую полку (для монтажа в 19-дюймовый шкаф) с жёсткими дисками, внешними интерфейсами для подключения хостов, несколькими блоками питания. Внутри обычно установлено всё то, что обеспечивает работу системы хранения – процессорные блоки, контроллеры дисков, портов ввода-вывода, кэш-память и так далее. Обычно управление стойкой осуществляется из командной строки или по web-интерфейсу, начальная конфигурация часто требует подключения по последовательному интерфейсу. Пользователь может «разбить» имеющиеся в системе диски на группы и объединить их в RAID (различных уровней), получившееся дисковое пространство разделяется на один или несколько логических блоков (LUN), к которым и имеют доступ хосты (серверы) и «видят» их как локальные жёсткие диски. Количество RAID-групп, LUN-ов, логика работы кэша, доступность LUN-ов конкретным серверам и всё остальное настраивается администратором системы. Обычно СХД предназначены для подключения к ним не одного, а нескольких (вплоть до сотен, в теории) серверов – посему такая система должна обладать высокой производительностью, гибкой системой управления и мониторинга, продуманными средствами защиты данных. Защита данных обеспечивается многими способами, самый простой из которых вы уже знаете – объединение дисков в RAID. Однако данные должны быть ещё и постоянно доступны – ведь остановка одной системы хранения данных, центральной на предприятии, способна нанести ощутимые убытки. Чем больше систем хранит данные на СХД, тем более надёжный доступ к системе должен быть обеспечен – потому что при аварии СХД останавливается работа сразу всех серверов, хранящих там данные. Высокая доступность стойки обеспечивается полным внутренним дублированием всех компонент системы – путей доступа к стойке (портов FibreChannel), процессорных модулей, кэш-памяти, блоков питания и т.д. Попытаемся принцип 100%-го резервирования (дублирования) объяснить следующим рисунком:

[img]images\RAID\11.gif[/img]

1. Контроллер (процессорный модуль) СХД, включающий в себя:
*центральный процессор (или процессоры) – обычно на системе работает специальное ПО, выполняющее роль «операционной системы»;
*интерфейсы для коммутации с жёсткими дисками – в нашем случае это платы, обеспечивающие подключение дисков FibreChannel по схеме петли с арбитражным доступом (FC-AL);
*кэш-память;
*контроллеры внешних портов FibreChannel
2. Внешний интерфейс FC; как мы видим, тут их по 2 штуки на каждый процессорный модуль;
3. Жёсткие диски – ёмкость расширяется дополнительными дисковыми полками;
4. Кэш-память в такой схеме обычно зеркалируется, чтобы не потерять сохранённые там данные при выходе любого модуля из строя.

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

Программное обеспечение СХД

Естественно, аппаратная мощь систем хранения должна как-то управляться, а сами СХД просто обязаны предоставлять уровень сервиса и функциональность, недоступную в обычных схемах «сервер-клиент». Если рассмотреть рисунок «Структурная схема системы хранения данных», становится понятно, что при прямом подключении сервера к стойке двумя путями они должны быть подключены к FC-портам различных процессорных модулей, для того чтобы сервер продолжал работать при выходе из строя сразу всего процессорного модуля. Естественно, для использования multipathing должна быть обеспечена поддержка этой функциональности аппаратными и программными средствами всех уровней, участвующих в передаче данных. Конечно же, полное резервирование без средств мониторинга и оповещения не имеет смысла – поэтому все серьёзные системы хранения имеют такие возможности. К примеру, оповещение о каких-либо критических событиях может происходить различными средствами – это оповещение по e-mail, автоматический модемный звонок в центр техподдержки, сообщение на пейджер (сейчас актуальнее SMS), SNMP-механизмы и прочее.

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

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

Следующее по популярности решение – ПО для создания мгновенных и полных копий данных. Различные производители по-разному называют свои программные продукты и механизмы создания этих копий. Мы для обобщения можем манипулировать словами снапшот (snapshot) и клон (clone). Клон делается средствами дисковой стойки внутри самой стойки – это полная внутренняя копия данных. Сфера применения довольно широка – от бэкапа (backup) до создания «тестовой версии» исходных данных, к примеру, для рискованных модернизаций, в которых нет уверенности и применять которые на актуальных данных небезопасно. Тот, кто внимательно следил за всеми прелестями СХД, которые мы тут разбирали, спросит – для чего же нужен бэкап данных внутри стойки, если она обладает такой высокой надёжностью? Ответ на этот вопрос на поверхности – никто не застрахован от человеческих ошибок. Данные сохранены надёжно, но если сам оператор сделал что-то не так, к примеру, удалил нужную таблицу в базе данных, от этого не спасут никакие аппаратные ухищрения. Клонирование данных обычно выполняется на уровне LUN. Более интересная функциональность обеспечивается механизмом снапшотов. В какой-то мере мы получаем все прелести полной внутренней копии данных (клона), при этом не занимая 100% объёма копируемых данных внутри самой стойки, ведь такой объём нам не всегда доступен. По сути снапшот – мгновенный «снимок» данных, который не занимает времени и процессорных ресурсов СХД.

Конечно нельзя не упомянуть ПО для репликации (replication) данных, которое часто называют зеркалированием (mirroring). Это механизм синхронного или асинхронного реплицирования (дублирования) информации с одной системы хранения на одну или несколько удалённых систем хранения. Репликация возможна по различных каналам – к примеру, стойки с интерфейсами FibreChannel могут асинхронно, через Интернет и на большие расстояния, реплицироваться на другую СХД. Такое решение обеспечивает надёжность хранения информации и защиту от катастроф.

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

DAS & NAS & SAN

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

Устройства DAS (Direct Attached Storage) – системы хранения, подключаемые напрямую к серверу. Сюда относятся как самые простые SCSI-системы, подключаемые к SCSI/RAID-контроллеру сервера, так и устройства FibreChannel, подключенные прямо к серверу, хотя и предназначены они для сетей SAN. В этом случае топология DAS является вырожденной SAN (сетью хранения данных):

[img]images\RAID\12.gif[/img]

В этой схеме один из серверов имеет доступ к данным, хранящимся на СХД. Клиенты получают доступ к данным, обращаясь к этому серверу через сеть. То есть сервер имеет блочный доступ к данным на СХД, а уже клиенты пользуются файловым доступом – эта концепция очень важна для понимания. Минусы такой топологии очевидны:
*Низкая надежность – при проблемах сети или аварии сервера данные становятся недоступны всем сразу.
*Высокая латентность, обусловленная обработкой всех запросов одним сервером и использующимся транспортом (чаще всего – IP).
*Высокая загрузка сети, часто определяющая пределы масштабируемости путём добавления клиентов.
*Плохая управляемость – вся ёмкость доступна одному серверу, что снижает гибкость распределения данных.
*Низкая утилизация ресурсов – трудно предсказать требуемые объёмы данных, у одних устройств DAS в организации может быть избыток ёмкости (дисков), у других её может не хватать – перераспределение часто невозможно или трудоёмко.

Устройства NAS (Network Attached Storage) – устройства хранения, подключённые напрямую в сеть. В отличие от других систем NAS обеспечивает файловый доступ к данным и никак иначе. NAS-устройства представляют из себя комбинацию системы хранения данных и сервера, к которому она подключена. В простейшем варианте обычный сетевой сервер, предоставляющий файловые ресурсы, является устройством NAS:

[img]images\RAID\13.gif[/img]

Все минусы такой схемы аналогичны DAS-топологии, за некоторым исключением. Из добавившихся минусов отметим возросшую, и часто значительно, стоимость – правда, стоимость пропорциональна функциональности, а тут уже часто «есть за что платить». NAS-устройства могут быть простейшими «коробочками» с одним портом ethernet и двумя жёсткими дисками в RAID1, позволяющими доступ к файлам по лишь одному протоколу CIFS (Common Internet File System) до огромных систем в которых могут быть установлены сотни жёстких дисков, а файловый доступ обеспечивается десятком специализированных серверов внутри NAS-системы. Число внешних Ethernet-портов может достигать многих десятков, а ёмкость хранимых данных – несколько сотен терабайт (например EMC Celerra CNS). Такие модели по надёжности и производительности могут далеко обходить многие midrange-устройства SAN. Что интересно, NAS-устройства могут быть частью SAN-сети и не иметь собственных накопителей, а лишь предоставлять файловый доступ к данным, находящимся на блочных устройствах хранения. В таком случае NAS берёт на себя функцию мощного специализированного сервера, а SAN – устройства хранения данных, то есть мы получаем топологию DAS, скомпонованную из NAS- и SAN-компонентов.

NAS-устройства очень хороши в гетерогенной среде, где необходим быстрый файловый доступ к данным для многих клиентов одновременно. Также обеспечивается отличная надёжность хранения и гибкость управления системой вкупе с простотой обслуживания. На надёжности особо останавливаться не будем – этот аспект СХД рассмотрен выше. Что касается гетерогенной среды, доступ к файлам в рамках единой NAS-системы может быть получен по протоколам TCP/IP, CIFS, NFS, FTP, TFTP и другим, включая возможность работы NAS, как iSCSI-target, что обеспечивает функционирование с различным ОС, установленными на хостах. Что касается лёгкости обслуживания и гибкости управления, то эти возможности обеспечиваются специализированной ОС, которую трудно вывести из строя и не нужно обслуживать, а также простотой разграничения прав доступа к файлам. К примеру, возможна работа в среде Windows Active Directory с поддержкой требуемой функциональности – это может быть LDAP, Kerberos Authentication, Dynamic DNS, ACLs, назначение квот (quotas), Group Policy Objects и SID-истории. Так как доступ обеспечивается к файлам, а их имена могут содержать символы различных языков, многие NAS обеспечивают поддержку кодировок UTF-8, Unicode. К выбору NAS стоит подходить даже тщательнее, чем к DAS-устройствам, ведь такое оборудование может не поддерживать необходимые вам сервисы, например, Encrypting File Systems (EFS) от Microsoft и IPSec. К слову можно заметить, что NAS распространены намного меньше, чем устройства SAN, но процент таких систем всё же постоянно, хотя и медленно, растёт – в основном за счёт вытеснения DAS.

Устройства для подключения в SAN (Storage Area Network) – устройства для подключения в сеть хранения данных. Сеть хранения данных (SAN) не стОит путать с локальной сетью – это различные сети. Чаще всего SAN основывается на стеке протоколов FibreChannel и в простейшем случае состоит из СХД, коммутаторов и серверов, объединённых оптическими каналами связи. На рисунке мы видим высоконадёжную инфраструктуру, в которой серверы включены одновременно в локальную сеть (слева) и в сеть хранения данных (справа):

[img]images\RAID\14.gif[/img]

После довольно детального рассмотрения устройств и принципов их функционирования нам будет довольно легко понять топологию SAN. На рисунке мы видим единую для всей инфраструктуры СХД, к которой подключены два сервера. Серверы имеют резервированные пути доступа – в каждом установлено по два HBA (или один двухпортовый, что снижает отказоустойчивость). Устройство хранения имеет 4 порта, которыми оно подключено в 2 коммутатора. Предполагая, что внутри имеется два резервируемых процессорных модуля, легко догадаться, что лучшая схема подключения – когда каждый коммутатор подключён и в первый, и во второй процессорный модуль. Такая схема обеспечивает доступ к любым данным, находящимся на СХД, при выходе из строя любого процессорного модуля, коммутатора или пути доступа. Надёжность СХД нами уже изучена, два коммутатора и две фабрики ещё более увеличивают доступность топологии, так что если из-за сбоя или ошибки администратора один из коммутационных блоков вдруг отказал, второй будет функционировать нормально, ведь эти два устройства не связаны между собой.

Показанное подключение серверов называется подключением с высокой доступностью (high availability), хотя в сервере при необходимости может быть установлено ещё большее число HBA. Физически каждый сервер имеет только два подключения в SAN, однако логически система хранения доступна через четыре пути – каждая HBA предоставляет доступ к двум точкам подключения на СХД, к каждому процессорному модулю раздельно (эту возможность обеспечивает двойное подключение коммутатора к СХД). На данной схеме самое ненадежной устройство – это сервер. Два коммутатора обеспечивают надежность порядка 99,99%, а вот сервер может отказать по разным причинам. Если необходима высоконадёжная работа всей системы, серверы объединяются в кластер, приведённая схема не требует никакого аппаратного дополнения для организации такой работы и считается эталонной схемой организации SAN. Простейший же случай – серверы, подключённые единственным путем через один свитч к системе хранения. Однако система хранения при наличии двух процессорных модулей должна подключаться в коммутатор как минимум одним каналом на каждый модуль – остальные порты могут быть использованы для прямого подключения серверов к СХД, что иногда необходимо. И не стоит забывать, что SAN возможно построить не только на базе FibreChannel, но и на базе протокола iSCSI – при этом можно использовать только стандартные ethernet-устройства для коммутации, что удешевляет систему, но имеет ряд дополнительных минусов (оговоренных в разделе, рассматривающем iSCSI). Также интересна возможность загрузки серверов с системы хранения – не обязательно даже наличие внутренних жёстких дисков в сервере. Таким образом, с серверов окончательно снимается задача хранения каких-либо данных. В теории специализированный сервер может быть превращён в обычную числодробилку без каких-либо накопителей, определяющими блоками которого являются центральные процессоры, память, а так же интерфейсы взаимодействия с внешним миром, например порты Ethernet и FibreChannel. Какое-то подобие таких устройств являют собой современные blade-серверы.

Хочется отметить, что устройства, которые возможно подключить в SAN, не ограничены только дисковыми СХД – это могут быть дисковые библиотеки, ленточные библиотеки (стримеры), устройства для хранения данных на оптических дисках (CD/DVD и прочие) и многие другие.
Из минусов SAN отметим лишь высокую стоимость её компонент, однако плюсы неоспоримы:
* Высокая надёжность доступа к данным, находящимся на внешних системах хранения. Независимость топологии SAN от используемых СХД и серверов.
* Централизованное хранение данных (надёжность, безопасность).
* Удобное централизованное управление коммутацией и данными.
* Перенос интенсивного трафика ввода-вывода в отдельную сеть, разгружая LAN.
* Высокое быстродействие и низкая латентность.
* Масштабируемость и гибкость логической структуры SAN
* Географически размеры SAN, в отличие от классических DAS, практически не ограничены.
* Возможность оперативно распределять ресурсы между серверами.
* Возможность строить отказоустойчивые кластерные решения без дополнительных затрат на базе имеющейся SAN.
* Простая схема резервного копирования – все данные находятся в одном месте.
* Наличие дополнительных возможностей и сервисов (снапшоты, удаленная репликация).
* Высокая степень безопасности SAN.

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

В заключение можно сказать, что NAS и SAN-решения в данный момент переживают настоящий бум. Число производителей и разнообразие решений увеличивается, техническая грамотность потребителей растёт. Смело можно предполагать, что в ближайшем будущем практически в каждой вычислительной среде появятся те или иные системы хранения данных.

Любые данные предстают перед нами в виде информации. Смысл работы любых вычислительных устройств – обработка информации. В последнее время объёмы её роста порой пугают, поэтому системы хранения данных и специализированное программное обеспечение, несомненно, будут самым востребованными продуктами IT-рыка в ближайшие годы.
  • 13 ноября 2006, 10:09
  • Ferret
  • просмотров: ~6102
  • рейтинг: ?

Комментарии (4)

Вы - anonymous, войти ?

можно использовать bbcode-теги
[b]жирный текст[/b]
[i]курсив[/i]
[u]underline[/u]
[s]зачеркнутый текст[/s]
[size=20px]размер шрифта[/size]
всякие изменения текста
[left][/left]
[right][/right]
[center][/center]
позиционирование элементов: картинки, текст и т.д
[url][/url]
[email][/email]
внутри тега [url] помещайте ссылки, а внутри [email] адрес электронной почты;
так же [url] можно использовать в виде:
[url=http://example.com]пример[/url],
[url=http://test.ru][img]http://flickr.com/givemeimg.png[/img][/url]
[code][/code]
[quote][/quote]
внутри тега [code] можно помещать программный код (подстветка попытается включиться автоматически); для выделения цитат используйте [quote]
также можно напрямую указать язык [code=cpp]int i;[/code]
[list][/list]
создаем списки, каждый элемент пишется после [*].

Можно указывать маркер - [list=marker].
возможные маркеры 1(decimal), i(lower-roman), I(upper-roman), a(lower-alpha), A(upper-alpha). Примеры:

[list][*]1 элемент[*]2 элемент[*]3 элемент[/list]
[list=1][*]1 элемент[*]2 элемент[*]3 элемент[/list]
[list=A][*]1 элемент[*]2 элемент[*]3 элемент[/list]
[table][/table]
оформляем таблицу, используя внутренние теги [tr] и [td].
[tr] - строка, [td] - поле в строке,
[table=100%] - можно задавать ширину в процентах, по-умолчанию ширина 100%
[td=2] - можно задавать сколько столбцов входит в это поле. Пример:

[table=50%][tr][td]столбец 1[/td][td]столбец 2[/td][/tr][tr][td]значение 1[/td][td]значение 2[/td][/tr][tr][td=2]сразу 2 столбца[/td][/tr][/table]
[img][/img]
тег для вставки фото или картинок, мы любим картинки. Примеры использования:

[img]http://ya.ru/logo.png[/img],
[img=100x100px]http://ya.ru/logo.png[/img]
[img=fullimg.url]thumbimg.url[/img],
Пожалуйста загружайте картинки на наш сайт, либо вставляйте с бекбоновских ресурсов.
[video][/video]
Проигрывает видео, внутрь вставляем ссылки на видео, поддерживается Play.Ykt.Ru(нужно вставить ссылку на страницу с видео) и tv.ykt.ru(нужно вставить ссылку на адрес файла)