Сеть хранения данных ( SAN ) или сеть хранения данных — это компьютерная сеть , которая обеспечивает доступ к консолидированному хранилищу данных на уровне блоков . SAN в основном используются для доступа к устройствам хранения данных , таким как дисковые массивы и ленточные библиотеки с серверов , так что устройства отображаются в операционной системе как напрямую подключенные хранилища . SAN обычно представляет собой выделенную сеть устройств хранения данных, недоступных через локальную сеть (LAN).
Хотя SAN обеспечивает только доступ на уровне блоков, файловые системы, созданные на основе SAN, обеспечивают доступ на уровне файлов и известны как файловые системы с общими дисками .
Более новые конфигурации SAN поддерживают гибридную SAN [1] и позволяют использовать традиционное блочное хранилище, которое выглядит как локальное хранилище, а также хранилище объектов для веб-сервисов через API.
Сети хранения данных (SAN) иногда называют сетями за серверами [2] : 11 и исторически развивались из централизованной модели хранения данных, но со своей собственной сетью передачи данных . SAN, в простейшем случае, является выделенной сетью для хранения данных. Помимо хранения данных, SAN позволяют выполнять автоматическое резервное копирование данных, а также мониторинг хранилища и процесса резервного копирования. [3] : 16–17 SAN представляет собой комбинацию аппаратного и программного обеспечения. [3] : 9 Она выросла из архитектур мэйнфреймов , ориентированных на данные , где клиенты в сети могут подключаться к нескольким серверам , хранящим различные типы данных. [3] : 11 Для масштабирования емкости хранилища по мере роста объемов данных было разработано хранилище с прямым подключением (DAS), в котором дисковые массивы или просто группа дисков (JBOD) были подключены к серверам. В этой архитектуре устройства хранения могут быть добавлены для увеличения емкости хранилища. Однако сервер, через который осуществляется доступ к устройствам хранения, является единой точкой отказа , и большая часть пропускной способности локальной сети используется для доступа, хранения и резервного копирования данных. Для решения проблемы единой точки отказа была реализована архитектура общего хранилища с прямым подключением , в которой несколько серверов могли получать доступ к одному и тому же устройству хранения. [3] : 16–17
DAS была первой сетевой системой хранения данных и до сих пор широко используется там, где требования к хранению данных не очень высоки. Из нее развилась архитектура сетевого хранилища (NAS), где один или несколько выделенных файловых серверов или устройств хранения данных доступны в локальной сети. [3] : 18 Поэтому передача данных, особенно для резервного копирования, по-прежнему происходит по существующей локальной сети. Если одновременно хранилось более терабайта данных, пропускная способность локальной сети становилась узким местом. [3] : 21–22 Поэтому были разработаны сети хранения данных (SAN), где выделенная сеть хранения данных была подключена к локальной сети, и терабайты данных передавались по выделенной высокоскоростной и пропускной сети. В сети SAN устройства хранения данных соединены между собой. Передача данных между устройствами хранения данных, например, для резервного копирования, происходит за серверами и должна быть прозрачной. [3] : 22 В архитектуре NAS данные передаются с использованием протоколов TCP и IP через Ethernet . Для SAN были разработаны отдельные протоколы, такие как Fibre Channel , iSCSI , Infiniband . Поэтому SAN часто имеют собственные сетевые и запоминающие устройства, которые необходимо покупать, устанавливать и настраивать. Это делает SAN по своей сути более дорогими, чем архитектуры NAS. [3] : 29
SAN имеют свои собственные сетевые устройства, такие как коммутаторы SAN. Для доступа к SAN используются так называемые серверы SAN, которые в свою очередь подключаются к хост-адаптерам SAN . В SAN может быть соединен ряд устройств хранения данных, таких как дисковые массивы с поддержкой SAN, JBODS и ленточные библиотеки . [3] : 32, 35–36
Серверы, которые обеспечивают доступ к SAN и ее устройствам хранения, называются хост-уровнем SAN. Такие серверы имеют хост-адаптеры, которые представляют собой карты, которые подключаются к слотам на материнской плате сервера (обычно слотам PCI) и работают с соответствующей прошивкой и драйвером устройства . Через хост-адаптеры операционная система сервера может взаимодействовать с устройствами хранения в SAN. [4] : 26
В развертываниях Fibre Channel кабель подключается к хост-адаптеру через гигабитный интерфейсный преобразователь (GBIC). GBIC также используются на коммутаторах и устройствах хранения в SAN, и они преобразуют цифровые биты в световые импульсы, которые затем могут передаваться по кабелям Fibre Channel. И наоборот, GBIC преобразует входящие световые импульсы обратно в цифровые биты. Предшественник GBIC назывался гигабитным модулем связи (GLM). [4] : 27
Уровень структуры состоит из сетевых устройств SAN, которые включают коммутаторы SAN , маршрутизаторы, мосты протоколов, шлюзовые устройства и кабели. Сетевые устройства SAN перемещают данные в пределах SAN или между инициатором , таким как порт HBA сервера, и целью , таким как порт устройства хранения.
Когда впервые были построены SAN, концентраторы были единственными устройствами, которые были совместимы с Fibre Channel, но были разработаны коммутаторы Fibre Channel, и теперь концентраторы редко встречаются в SAN. Коммутаторы имеют преимущество перед концентраторами, поскольку они позволяют всем подключенным устройствам обмениваться данными одновременно, поскольку коммутатор обеспечивает выделенную связь для соединения всех своих портов друг с другом. [4] : 34 Когда впервые были построены SAN, Fibre Channel приходилось реализовывать по медным кабелям, в настоящее время в SAN используются многомодовые оптоволоконные кабели . [4] : 40
SAN обычно строятся с избыточностью, поэтому коммутаторы SAN подключаются с помощью избыточных каналов. Коммутаторы SAN соединяют серверы с устройствами хранения данных и, как правило, неблокируемые, что позволяет передавать данные по всем подключенным проводам одновременно. [4] : 29 Коммутаторы SAN для целей избыточности настраиваются в сетчатой топологии . Один коммутатор SAN может иметь всего 8 портов и до 32 портов с модульными расширениями. [4] : 35 Так называемые коммутаторы класса директора могут иметь до 128 портов. [4] : 36
В коммутируемых SAN используется протокол коммутируемой матрицы Fibre Channel FC-SW-6, в соответствии с которым каждое устройство в SAN имеет жестко закодированный адрес World Wide Name (WWN) в адаптере главной шины (HBA). Если устройство подключено к SAN, его WWN регистрируется на сервере имен коммутатора SAN. [4] : 47 Вместо WWN или всемирного имени порта (WWPN) поставщики устройств хранения SAN Fibre Channel могут также жестко закодировать всемирное имя узла (WWNN). Порты устройств хранения часто имеют WWN, начинающийся с 5, в то время как адаптеры шины серверов начинаются с 10 или 21. [4] : 47
Протокол SCSI ( Serialized Small Computer Systems Interface ) часто используется поверх протокола коммутируемой матрицы Fibre Channel в серверах и устройствах хранения SAN. Протоколы iSCSI ( Internet Small Computer Systems Interface ) через Ethernet и Infiniband также могут быть реализованы в SAN, но часто подключаются к Fibre Channel SAN. Однако доступны устройства хранения Infiniband и iSCSI, в частности, дисковые массивы. [4] : 47–48
Говорят, что различные устройства хранения в SAN образуют уровень хранения . Он может включать в себя различные жесткие диски и устройства магнитной ленты , которые хранят данные. В SAN дисковые массивы объединяются через RAID , что делает множество жестких дисков похожими и работающими как одно большое устройство хранения. [4] : 48 Каждому устройству хранения или даже разделу на этом устройстве хранения назначен логический номер устройства (LUN). Это уникальный номер в SAN. Каждый узел в SAN, будь то сервер или другое устройство хранения, может получить доступ к хранилищу, ссылаясь на LUN. LUN позволяют сегментировать емкость хранилища SAN и осуществлять контроль доступа. Например, определенному серверу или группе серверов может быть предоставлен доступ только к определенной части уровня хранения SAN в форме LUN. Когда устройство хранения получает запрос на чтение или запись данных, оно проверяет свой список доступа, чтобы установить, разрешен ли узлу, идентифицированному его LUN, доступ к области хранения, также идентифицированной LUN. [4] : 148–149 Маскировка LUN — это метод, при котором адаптер шины хоста и программное обеспечение SAN сервера ограничивают LUN, для которых принимаются команды. При этом LUN, к которым сервер никогда не должен получать доступ, маскируются. [4] : 354 Другим методом ограничения доступа сервера к определенным устройствам хранения SAN является управление доступом на основе структуры или зонирование, которое обеспечивается сетевыми устройствами и серверами SAN. При зонировании доступ сервера ограничивается устройствами хранения, которые находятся в определенной зоне SAN. [5]
Для формирования сети используется уровень сопоставления с другими протоколами:
Сети хранения данных также могут быть построены с использованием технологий Serial Attached SCSI (SAS) и Serial ATA (SATA). SAS произошел от SCSI-накопителя с прямым подключением. SATA произошел от Parallel ATA- накопителя с прямым подключением. Устройства SAS и SATA могут быть объединены в сеть с помощью SAS Expanders .
Ассоциация производителей сетей хранения данных (SNIA) определяет SAN как «сеть, основной целью которой является передача данных между компьютерными системами и элементами хранения». Но SAN состоит не только из коммуникационной инфраструктуры, она также имеет уровень управления программным обеспечением . Это программное обеспечение организует серверы, устройства хранения и сеть таким образом, чтобы данные могли передаваться и храниться. Поскольку SAN не использует хранилище с прямым подключением (DAS), устройства хранения в SAN не принадлежат серверу и не управляются им. [2] : 11 SAN позволяет серверу получать доступ к большой емкости хранилища данных, и эта емкость хранилища также может быть доступна другим серверам. [2] : 12 Более того, программное обеспечение SAN должно гарантировать, что данные напрямую перемещаются между устройствами хранения в пределах SAN с минимальным вмешательством сервера. [2] : 13
Программное обеспечение для управления SAN устанавливается на одном или нескольких серверах и клиентах управления на устройствах хранения. В программном обеспечении для управления SAN разработаны два подхода: внутриполосное и внеполосное управление. Внутриполосное означает, что данные управления между сервером и устройствами хранения передаются по той же сети, что и данные хранения. В то время как внеполосное означает, что данные управления передаются по выделенным каналам. [2] : 174 Программное обеспечение для управления SAN будет собирать данные управления со всех устройств хранения на уровне хранения. Это включает информацию об ошибках чтения и записи, узких местах емкости хранилища и отказах устройств хранения. Программное обеспечение для управления SAN может интегрироваться с простым протоколом сетевого управления (SNMP). [2] : 176
В 1999 году был представлен открытый стандарт Common Information Model (CIM) для управления устройствами хранения данных и обеспечения взаимодействия. Веб-версия CIM называется Web-Based Enterprise Management (WBEM) и определяет объекты устройств хранения данных SAN и транзакции процессов. Использование этих протоколов включает диспетчер объектов CIM (CIMOM) для управления объектами и взаимодействиями и позволяет осуществлять централизованное управление устройствами хранения данных SAN. Базовое управление устройствами для SAN также может быть достигнуто с помощью спецификации интерфейса управления хранилищем (SMI-S), где объекты и процессы CIM регистрируются в каталоге. Затем программные приложения и подсистемы могут использовать этот каталог. [2] : 177 Управляющие программные приложения также доступны для настройки устройств хранения данных SAN, позволяя, например, настраивать зоны и LUN. [2] : 178
В конечном счете, сетевые устройства и устройства хранения SAN доступны от многих поставщиков, и каждый поставщик SAN имеет свое собственное программное обеспечение для управления и настройки. Общее управление в SAN, которые включают устройства от разных поставщиков, возможно только в том случае, если поставщики делают интерфейс прикладного программирования (API) для своих устройств доступным для других поставщиков. В таких случаях программное обеспечение для управления SAN верхнего уровня может управлять устройствами SAN от других поставщиков. [2] : 180
В SAN данные передаются, хранятся и к ним осуществляется доступ на уровне блоков. Таким образом, SAN не обеспечивает абстракцию файлов данных , а только хранение и операции на уровне блоков . Серверные операционные системы поддерживают свои собственные файловые системы на собственных выделенных, неразделяемых LUN в SAN, как если бы они были локальными для себя. Если бы несколько систем просто попытались совместно использовать LUN, они бы мешали друг другу и быстро испортили данные. Любое запланированное совместное использование данных на разных компьютерах в пределах LUN требует программного обеспечения. Файловые системы были разработаны для работы с программным обеспечением SAN для предоставления доступа на уровне файлов. Они известны как файловая система с общим диском .
Системы видеомонтажа требуют очень высоких скоростей передачи данных и очень низкой задержки. SAN в медиа и развлечениях часто называют бессерверными из-за характера конфигурации, которая помещает рабочие процессы видео (захват, редактирование, воспроизведение) настольных клиентов непосредственно в SAN, а не подключает их к серверам. Управление потоком данных осуществляется распределенной файловой системой. Управление использованием полосы пропускания на уровне узла, иногда называемое качеством обслуживания (QoS), особенно важно при видеомонтаже, поскольку оно обеспечивает справедливое и приоритетное использование полосы пропускания по всей сети.
SAN Storage QoS позволяет рассчитать и поддерживать желаемую производительность хранилища для сетевых клиентов, получающих доступ к устройству. Некоторые факторы, влияющие на SAN QoS:
В качестве альтернативы избыточное выделение ресурсов может использоваться для предоставления дополнительной емкости для компенсации пиковых нагрузок сетевого трафика. Однако, если сетевые нагрузки непредсказуемы, избыточное выделение ресурсов может в конечном итоге привести к полному потреблению всей полосы пропускания и значительному увеличению задержки, что приведет к снижению производительности SAN.
Виртуализация хранилища — это процесс абстрагирования логического хранилища от физического хранилища. Физические ресурсы хранилища объединяются в пулы хранения, из которых создается логическое хранилище. Оно предоставляет пользователю логическое пространство для хранения данных и прозрачно обрабатывает процесс его сопоставления с физическим местоположением, концепция, называемая прозрачностью местоположения . Это реализовано в современных дисковых массивах, часто с использованием фирменной технологии поставщика. Однако цель виртуализации хранилища — сгруппировать несколько дисковых массивов от разных поставщиков, разбросанных по сети, в одно устройство хранения. Затем одним устройством хранения можно управлять единообразно. [8]