В 1995 году компания Hitachi Data Systems выпустила дисковое запоминающее устройство корпоративного класса под названием Tetragon, в котором впервые в отрасли были реализованы функции RAID-5. Система проектировалась для работы с мэйнфреймами и была оснащена контроллерами (включая оптический ESCON), способными работать в канальной архитектуре ввода/вывода и эмулировать работу дисков компании IBM на платформе OS/390. Возможность работы дисковых систем от HDS обеспечивалась за счет средств виртуализации ресурсов, принятых в архитектуре мэйнфреймов. В Tetragon уже тогда предлагалось использовать горячий дисковый резерв, позволявший осуществлять замену любого вышедшего из строя физического диска без остановки работы приложений. Внутренние контроллеры физических накопителей были объединены четырьмя закольцованными шинами, которые обеспечивали надежный, высокоскоростной ввод/вывод, а также альтернативные пути доступа к каждому физическому устройству дисковой системы. Такая конструкция позволяла управлять нагрузкой на внутренние контроллеры и оптимизировать показатели системы хранения данных в целом. Тринадцать лет спустя компания выпустила на рынок семейство систем хранения AMS 2000 (Adaptable Modular Storage).

Смена парадигмы хранения

Выход на рынок любого нового продукта обычно сопровождается мощной маркетинговой поддержкой, за которой на сразу удается распознать истинную ценность вновь предлагаемого решения — инновационные изменения могут возникать только в результате смены текущей парадигмы. Сегодня ИТ-индустрия действительно находится в состоянии перехода от модели «каждому приложению свой сервер» к модели «один сервер для множества приложений», однако мультизадачный режим работы виртуализованных многопроцессорных серверов предъявляет новые требования к системе хранения:

  • сетевые запоминающие устройства должны осуществлять интенсивный обмен с хостом и сертифицированным программным обеспечением (Vmware, включая VMotion и Microsoft Cluster Service);
  • виртуализация предполагает рост потребности во внешней памяти, обладающей возможностями широкого масштабирования без прерывания работы приложений;
  • виртуализация серверов предполагает также и виртуализацию ввода/вывода и внешней памяти.

Компания HDS выступила с амбициозной инициативой SOSS (Services Oriented Storage Solutions), которая предполагает предоставление конечным пользователям и администраторам систем хранения спектра услуг для достижения целей, сформулированных как «политика хранения данных» (рис. 1). Практическая реализация инициативы SOSS приведет к разработкам сервисной памяти, упрощающей инфраструктуру хранения и снижающей стоимость хранения за счет единой аппаратной платформы и общего управляющего программного обеспечения. Виртуализация памяти позволяет экономить средства за счет повышения эффективности использования ресурсов и простоты управления ими:

  • тонкое распределение (thin provisioning) — традиционное снабжение памятью предполагает единовременное выделение ее больших объемов каждому конкретному приложению, которые часто простаивают, причем память при этом не используется и не может быть отдана другому приложению, а при тонком распределении создается единый пул памяти, которая, по мере возникновения потребности, может использоваться сразу несколькими приложениями (в 2007 году в рамках платформы Universal Storage Platform серии V компания HDS первой реализовала функцию тонкого конфигурирования ресурсов корпоративного уровня для гетерогенных систем хранения данных, подключенных как по внешним, так и по внутренним интерфейсам);
  • дедупликация больших пулов памяти — высвобождение дискового пространства, используемого ранее для хранения избыточных данных-дубликатов;
  • многоуровневая память — возможность применения дорогих накопителей корпоративного класса для хранения важной или часто используемой информации и дешевых накопителей SATA для хранения менее важной или редко используемой информации за счет распределения файлов по накопителям разных уровней в зависимости от характера содержащихся в них данных и с учетом их жизненного цикла;
  • мгновенное клонирование позволяет за счет создания клонов систем быстро реагировать на потребности бизнеса без привлечения дополнительных средств на приобретение дополнительного оборудования.

Платформа AMS 2000

Система хранения AMS 2000 призвана решить следующие задачи, возникшие сегодня перед бизнесом:

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

Система AMS 2000 использует симметричный контроллер active/active с динамической балансировкой нагрузки, а также архитектуру памяти SAS (Serial Attached SCSI) для обеспечения надежности системы хранения данных и повышения ее производительности. В рамках инициативы SOSS, AMS представляет собой комбинацию архитектур SAS и SATA, Fibre Channel или iSCSI-интерфейсов с целью интеграции блоковой, файловой и медийной памяти.

В традиционной архитектуре серверов среднего класса подключение контроллеров внешней памяти осуществлялось по схеме active/passive — один контроллер непосредственно доступен для выполнения запросов на ввод/вывод, а второй находится в режиме ожидания, готовый принять на себя весь трафик в случае поломки или принудительного отключения первого контроллера. Основным недостатком такого режима является то, что все пользовательские данные, находящиеся на логическом томе (LUN), должны быть вручную привязаны к конкретному основному контроллеру, а это довольно продолжительный и утомительный процесс, связанный с ручным выполнением операций и, следовательно, с высоким риском появления ошибок. При возникновении перегрузок или обнаружении дисбаланса (например, при внесении изменений в описание ввода/вывода приложения Microsoft Exchange или перемещении больших объемов данных VMware Virtual Servers с помощью VMotion) администратор вручную переназначает нагрузку на вторичный контроллер. Если этого не сделать, то работа приложения будет сильно замедляться, причем часто после выполнения такой настройки требуется перезагрузка системы, что, естественно, сказывается на непрерывности работы приложения.

Имеется еще ряд недостатков, свойственных использованию традиционной архитектуры в среде VMware. Например, ввод/вывод виртуальной машины может быть задержан на минуты, если выполняется процесс перехода на резервный ресурс (failover) — для систем active/passive с фиксированной политикой это всегда будет проблемой. Конкуренция по доступу возникает, когда два хоста обращаются к конкретному LUN через два разных контроллера и, как результат, LUN может оказаться недоступен. Это может привести к отказу виртуальной машины, если все пути доступа к устройству, на котором размещены ее диски, становятся недоступными. Несколько лучше обстоят дела в асимметричной схеме подключения active/active, в которой оба контроллера могут выполнять ввод/вывод для конкретного LUN и находиться в состоянии ожидания для другого. Такая схема устраняет конкуренцию path/LUN, но мало что привносит в производительность системы или в балансировку нагрузки на SAN-контроллеры. И, поскольку доступ к LUN неравномерен со стороны каждого из двух контроллеров, то без автоматической балансировки нагрузки можно ожидать задержки ввода/вывода. Более того, асимметричная зависимость от хоста создает серьезные проблемы в обслуживании со стороны операционной системы и среды VMware.

По сравнению с традиционной архитектурой, использующей контроллер active/active, архитектура Dynamic Load Balancing Controller — симметричный active/active контроллер, применяемая компанией HDS, предлагает более эффективное использование памяти и возможность ее постепенного наращивания. Hitachi Dynamic Load Balancing Controller заставляет контроллеры работать параллельно, выравнивая их нагрузку (рис. 2) и без вмешательства администратора выводя системы хранения данных на пиковые уровни производительности. В отличие от асимметричной схемы включения контроллеров, свойственной традиционным системам хранения данных среднего уровня, инновационный контроллер динамического распределения нагрузки устраняет типичные узкие места и «горячие точки». Это позволяет сократить время отклика для операций ввода/вывода посредством мониторинга уровней утилизации каждого контроллера и осуществлять распределение рабочей нагрузки в динамическом режиме.

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

Производительность AMS 2000 в четыре раза выше, чем у его предшественников, а разнообразие интерфейсов системы позволяет консолидировать сети хранения данных, подключенные по каналам iSCSI, NAS и Fibre Channel. Это стало возможным благодаря инновационной объединительной плате, подключенной по интерфейсу SAS и обладающей пропускной способностью 3 Гбит/с. Такая плата впервые используется в платформах для систем хранения данных среднего уровня и обеспечивает максимально быстрый и эффективный способ обработки и передачи данных через подсистему контроллера хранилища. Технология SAS позволяет обойти архитектурные ограничения схем с арбитражной шиной благодаря поддержке 32 высокопроизводительных каналов типа «точка-точка» с пропускной способностью 3 Гбит/с, которые формируют скоростную магистраль с полосой пропускания 9600 Мбайт/с и содействуют увеличению скорости обмена данными с хостом.

Еще одна, дополнительная функция серии AMS 2000 — функция экономии электроэнергии Spin down, Spin up, позволяющая отключать питание жестких дисков при отсутствии обращений к ним со стороны бизнес-приложений и быстро включать его по требованию приложения.


Рис. 1. Система хранения как сервис

Рис. 2. Автоматическая балансировка контроллеров


SAS и другие

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

SAS поддерживает до 16 384 устройств, в то время как интерфейс SCSI поддерживает 8, 16, или 32 устройства на одной шине. При этом SAS обеспечивает высокие скорости передачи данных (1,5, 3,0 или 6,0 Гбит/с), достигаемые при передаче информации на каждом соединении «инициатор — целевое устройство», в то время как на шине SCSI пропускная способность шины разделена между всеми подключенными к ней устройствами.

SAS поддерживает подключение устройств с интерфейсом SATA (Serial ATA или Serial Advanced Technology Attachment), причем использует команды SCSI для управления и обмена данными с целевыми устройствами.

Определенные преимущества SAS имеет и перед SATA, выступая надмножеством последнего. Например, SATA-устройства идентифицируются номером порта контроллера, в то время как устройства SAS идентифицируются WWN-идентификаторами (World Wide Name). SATA использует набор команд ATA (Advanced Technology Attachment) и поддерживает жесткие диски и накопители на оптическом диске, а SAS поддерживает более широкий набор устройств, в том числе жесткие диски, сканеры, принтеры и др. Аппаратура SAS поддерживает связь с целевыми устройствами по нескольким независимым линиям, что повышает отказоустойчивость, а интерфейс SATA версии 1 такой возможности не имеет, хотя в версии 2 используются дубликаторы портов для достижения аналогичной возможности. SATA преимущественно используется в некритических приложениях, например в домашних компьютерах, а SAS, благодаря своей надежности, может быть применен в критически важных серверах.