SAN (Storage Area Network) — это специализированная сеть хранения данных, которая обеспечивает серверам высокоскоростной блочный доступ к централизованным системам хранения. Для операционной системы ресурсы, полученные через SAN, обычно выглядят как локальные диски, хотя физически данные находятся на внешней системе хранения данных (СХД).
SAN широко применяется в дата-центрах и корпоративной инфраструктуре, где нескольким серверам требуется надежный и производительный доступ к общему хранилищу. Такая архитектура используется для виртуализации, баз данных, кластеров и других критически важных систем.
Как работает SAN
В обычном сервере накопители могут быть установлены непосредственно в его корпусе. В SAN данные размещаются отдельно — на централизованной СХД, а сервер соединяется с ней по сети хранения.
СХД формирует логические блочные устройства и предоставляет их определенным серверам. Для их идентификации традиционно используются LUN (Logical Unit Number). Получив доступ к такому устройству, операционная система сервера может создать на нем разделы и файловую систему или передать его приложению для непосредственной работы.
Например, кластер из нескольких серверов виртуализации может быть подключен к одной СХД. Виртуальные машины хранятся централизованно, поэтому их данные не привязаны к локальным дискам конкретного физического сервера.
Из чего состоит SAN
Типичная SAN-инфраструктура включает несколько основных компонентов:
- серверы (hosts) — системы, которым требуется доступ к данным.
- система хранения данных (СХД) — массив HDD и SSD с контроллерами, кэшированием, RAID и другими механизмами управления хранением.
- сетевые адаптеры — например, Fibre Channel HBA или обычные сетевые адаптеры при использовании iSCSI.
- коммутаторы — соединяют серверы и системы хранения в единую сеть.
- кабели и трансиверы — обеспечивают физическое соединение компонентов.
- программные средства управления — используются для настройки томов, LUN, путей доступа и других параметров.
Для повышения отказоустойчивости SAN часто строится с резервированием компонентов и путей передачи данных.
Протоколы SAN
Одна из наиболее распространенных технологий построения SAN — Fibre Channel (FC). Она предназначена для высокопроизводительной передачи данных между серверами и системами хранения и обычно использует специализированные адаптеры и коммутаторы.
Другой распространенный вариант — iSCSI, который передает команды SCSI через TCP/IP. Благодаря этому SAN можно построить на базе Ethernet-инфраструктуры.
Также существуют другие технологии блочного доступа к удаленному хранилищу, включая FCoE (Fibre Channel over Ethernet) и NVMe over Fabrics (NVMe-oF). Последняя используется для организации высокопроизводительного доступа к NVMe-хранилищам через сеть.
Отказоустойчивость SAN
SAN часто обслуживает критически важные системы, поэтому инфраструктуру проектируют так, чтобы отказ одного компонента не приводил к потере доступа к данным.
Для этого могут использоваться два независимых коммутатора или даже две отдельные FC-фабрики, резервные контроллеры СХД и несколько физических соединений между серверами и хранилищем.
На серверах применяется multipathing — использование нескольких путей к одному блочному устройству. Если один путь становится недоступен, операции ввода-вывода могут продолжаться через другой.
Для Fibre Channel также применяется zoning, позволяющий определить, какие устройства могут взаимодействовать друг с другом внутри SAN. На уровне СХД дополнительно может использоваться LUN masking, ограничивающий доступ серверов к конкретным логическим устройствам.
Чем SAN отличается от NAS
Главное различие заключается в уровне доступа к данным. SAN предоставляет блочный доступ: сервер получает логическое устройство и самостоятельно работает с его файловой системой.
NAS (Network Attached Storage) предоставляет файловый доступ. Файловой системой управляет само устройство хранения, а клиенты обращаются к файлам и каталогам через протоколы вроде SMB или NFS.
Поэтому SAN часто используется там, где требуются высокая производительность, централизованное блочное хранилище и возможность построения отказоустойчивой серверной инфраструктуры. NAS обычно применяется для общего файлового хранения и совместного доступа пользователей и приложений к файлам.
Где используется SAN
SAN широко применяется в дата-центрах, крупных корпоративных инфраструктурах и частных облаках. Типичные сценарии включают хранение виртуальных машин, работу СУБД, серверных кластеров, ERP-систем и других приложений с высокими требованиями к доступности и производительности хранения.
Централизация данных также упрощает управление ресурсами: емкость СХД можно распределять между различными серверами без необходимости устанавливать дополнительные физические накопители непосредственно в каждый из них.