Ключевые элементы СХД — разбираемся в деталях

18.03.24СХД

Система хранения данных (СХД) — совокупность аппаратного и программного обеспечения, обеспечивающего хранение данных на физических носителях и предоставляющего доступ к ним в соответствии с установленными правилами.

При создании СХД инженеры стремятся подобрать компоненты таким образом, чтобы обеспечить необходимый объем хранения, высокую скорость обработки данных при чтении и записи, а также максимальную сохранность и доступность данных. В статье рассмотрим основные характеристики современных СХД, и на что нужно обратить внимание, если вы только начинаете работать в этой области.

Аппаратные компоненты СХД

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

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

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

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

Накопители систем хранения данных

Основными носителями данных в современных СХД являются жесткие диски (HDD) и твердотельные накопители (SSD/NVMe). Именно они определяют аппаратные пределы производительности системы.

У накопителей есть множество важных характеристик, которые необходимо учитывать при проектировании СХД. Но к базовым параметрам можно отнести:

  1. Тип интерфейса — отвечает за скорость обмена данными с накопителем.
  2. Форм-фактор — определяет габариты и физическое подключение накопителя в СХД.

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

Интерфейсы HDD и SSD

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

Изначально интерфейсы SATA и SAS использовались в жестких дисках (HDD), но затем стали стандартом и для SSD. Однако они не раскрывают весь потенциал производительности SSD.

Для SSD все чаще применяется интерфейс PCIe и протокол NVMe, позволяющие получить более высокую скорость обмена данными.

Также существуют гибридные NL-SAS диски, сочетающие SAS-интерфейс и SATA накопители.

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

Форм-фактор

Жесткие диски (HDD) имеют сходную конструкцию подвижных элементов, поэтому используют стандартные форм-факторы — 2,5 дюйма (SFF) или 3,5 дюйма (LFF).

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

Форм-фактор накопителей является динамичным параметром, изменяющимся в зависимости от развития интерфейсов и подходов к построению СХД.

Выбор подходящего форм-фактора критически важен для интеграции накопителей в инфраструктуру СХД с учетом текущих и перспективных потребностей.

JBOD

В современных СХД накопители могут находиться:

  • в основном корпусе СХД;
  • в отдельных дисковых корзинах JBOD (Just a Bunch Of Dri­ves) — для HDD;
  • в специализированных корзинах JBOF (Just a Bunch Of Flash) — для SSD. 

Физически JBOD/JBOF представляют собой корпус для монтажа в стойку, заполненный накопителями.

Использование отдельных дисковых корзин позволяет гибко масштабировать емкость СХД путем добавления новых JBOD/JBOF. Пример — Open­Flex Data24 от West­ern Dig­i­tal для NVMe.

Выбор схемы размещения накопителей зависит от архитектуры и масштабируемости конкретной СХД.

Дисковый контроллер и бэкплейн

Дисковый контроллер (HBA)

Дисковый контроллер — это устройство, через которое накопители подключаются к вычислительным ресурсам СХД. Обычно это отдельная плата расширения или чип на материнской плате.

Дисковый контроллер позволяет остальным компонентам СХД видеть и использовать подключенные диски.

HBA (Host Bus Adapter) — разновидность дискового контроллера, обеспечивающая видимость каждого накопителя в отдельности.

Использование дисковых контроллеров критически важно для подключения накопителей и их интеграции в инфраструктуру СХД.

Режим triple-mode

Дисковые контроллеры могут поддерживать одновременную работу с разными типами накопителей за счет реализации нескольких протоколов:

Triple-mode контроллеры позволяют использовать накопители SATA, SAS и NVMe в одной СХД.

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

Triple-mode контроллеры упрощают миграцию на новые типы накопителей и позволяют оптимально использовать преимущества разных технологий хранения данных.

Бэкплейн и экспандер

В СХД накопители чаще всего подключаются напрямую через бэкплейн — плату в дисковой полке или сервере с разъёмами SAS, SATA, NVMe. Бэкплейн соединяется с дисковым контроллером, который поддерживает ограниченное количество накопителей. Для увеличения числа подключаемых дисков используются экспандеры — специальные чипы на бэкплейне.

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

Контроллер систем хранения данных

Центральным управляющим компонентом системы хранения данных является ее контроллер (stor­age con­troller). Он представляет собой уровень обработки информации, отвечающий за формирование дисковых массивов, вычисление контрольных сумм, управление доступом и прочие вспомогательные операции.

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

RAID

В теории, концепции RAID-контроллера и контроллера системы хранения данных часто кажутся идентичными. Это связано с тем, что оба выполняют свою основную функцию — создание и управление дисковыми массивами. Однако на практике под RAID-контроллером подразумевается адаптер, устанавливаемый в сервер для создания массива из подключенных накопителей. В этом случае RAID-контроллер формирует подсистему хранения для конкретного локального клиента, но не является полноценной СХД.

Контроллер СХД 

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

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

Двухконтроллерный режим

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

Наличие двух контроллеров не обязательно означает использование двух физических корпусов — часто дублирующие платы размещаются в разных отсеках одной платформы.

Вычислительные ресурсы

С ростом количества функций и накопителей системе требуется больше вычислительных ресурсов. 

В качестве процессоров для СХД в основном используются x86 чипы Intel Xeon и реже AMD EPYC. Есть решения на других процессорах (например, Эльбрус), но они менее популярны. На объем вычислительных ресурсов влияют требования к инфраструктуре, характер и интенсивность нагрузок, а также сетевое окружение.

Сетевые адаптеры

Сетевые адаптеры (хост-адаптеры) — это конечное звено в цепочке обмена данными с клиентом. Они соединяют СХД с серверами, рабочими станциями и другими компонентами сети. Хост-адаптер — это плата с портами (Eth­er­net, FC, IB, SAS), которая использует разъем на материнской плате или впаивается в нее. Некоторые адаптеры имеют сразу несколько интерфейсов, например Mel­lanox с Infini­band и Ethernet.

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

Выводы

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

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