Ключевые элементы СХД — разбираемся в деталях
Система хранения данных (СХД) — совокупность аппаратного и программного обеспечения, обеспечивающего хранение данных на физических носителях и предоставляющего доступ к ним в соответствии с установленными правилами.
При создании СХД инженеры стремятся подобрать компоненты таким образом, чтобы обеспечить необходимый объем хранения, высокую скорость обработки данных при чтении и записи, а также максимальную сохранность и доступность данных. В статье рассмотрим основные характеристики современных СХД, и на что нужно обратить внимание, если вы только начинаете работать в этой области.
Аппаратные компоненты СХД
С точки зрения аппаратного обеспечения, СХД представляет собой последовательность компонентов: уровень физического размещения информации (например, жесткие диски), уровни подключения и обработки данных (дисковый и контроллер СХД), а также уровень передачи данных (сетевые адаптеры), через который подключаются клиенты (серверы и пользовательские компьютеры).
Все перечисленные компоненты СХД обладают своими особенностями и характеристиками, которые необходимо принимать во внимание при разработке новой или модернизации существующей системы хранения данных.
Понимание роли и места каждого элемента в общей структуре помогает разобраться, как формируется производительность СХД, из чего складывается ее стоимость, а также выявить ключевые моменты, требующие пристального внимания на этапе эксплуатации.
Учет всех тонкостей и особенностей отдельных компонентов и их взаимосвязей критически важен для грамотного проектирования системы, отвечающей поставленным техническим и бизнес-задачам.
Накопители систем хранения данных
Основными носителями данных в современных СХД являются жесткие диски (HDD) и твердотельные накопители (SSD/NVMe). Именно они определяют аппаратные пределы производительности системы.
У накопителей есть множество важных характеристик, которые необходимо учитывать при проектировании СХД. Но к базовым параметрам можно отнести:
- Тип интерфейса — отвечает за скорость обмена данными с накопителем.
- Форм-фактор — определяет габариты и физическое подключение накопителя в СХД.
Понимание этих основных атрибутов помогает правильно подобрать накопители, соответствующие требованиям системы по производительности и интеграции в инфраструктуру.
Интерфейсы 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 Drives) — для HDD;
- в специализированных корзинах JBOF (Just a Bunch Of Flash) — для SSD.
Физически JBOD/JBOF представляют собой корпус для монтажа в стойку, заполненный накопителями.
Использование отдельных дисковых корзин позволяет гибко масштабировать емкость СХД путем добавления новых JBOD/JBOF. Пример — OpenFlex Data24 от Western Digital для NVMe.
Выбор схемы размещения накопителей зависит от архитектуры и масштабируемости конкретной СХД.
Дисковый контроллер и бэкплейн
Дисковый контроллер (HBA)
Дисковый контроллер — это устройство, через которое накопители подключаются к вычислительным ресурсам СХД. Обычно это отдельная плата расширения или чип на материнской плате.
Дисковый контроллер позволяет остальным компонентам СХД видеть и использовать подключенные диски.
HBA (Host Bus Adapter) — разновидность дискового контроллера, обеспечивающая видимость каждого накопителя в отдельности.
Использование дисковых контроллеров критически важно для подключения накопителей и их интеграции в инфраструктуру СХД.
Режим triple-mode
Дисковые контроллеры могут поддерживать одновременную работу с разными типами накопителей за счет реализации нескольких протоколов:
Triple-mode контроллеры позволяют использовать накопители SATA, SAS и NVMe в одной СХД.
Этот подход обеспечивает гибкость и удобство при проектировании систем хранения данных, так как дает возможность комбинировать традиционные SATA диски и высокопроизводительные NVMe накопители в рамках одной инфраструктуры.
Triple-mode контроллеры упрощают миграцию на новые типы накопителей и позволяют оптимально использовать преимущества разных технологий хранения данных.
Бэкплейн и экспандер
В СХД накопители чаще всего подключаются напрямую через бэкплейн — плату в дисковой полке или сервере с разъёмами SAS, SATA, NVMe. Бэкплейн соединяется с дисковым контроллером, который поддерживает ограниченное количество накопителей. Для увеличения числа подключаемых дисков используются экспандеры — специальные чипы на бэкплейне.
Использование бэкплейнов и экспандеров позволяет масштабировать число подключаемых накопителей и гибко наращивать емкость СХД. Подбор бэкплейнов и экспандеров зависит от типов используемых накопителей и их количества.
Контроллер систем хранения данных
Центральным управляющим компонентом системы хранения данных является ее контроллер (storage controller). Он представляет собой уровень обработки информации, отвечающий за формирование дисковых массивов, вычисление контрольных сумм, управление доступом и прочие вспомогательные операции.
Контроллер СХД — это функциональный блок, поэтому в разных системах он может быть реализован на самом разном аппаратном обеспечении. Независимо от конкретной реализации, контроллер выполняет ключевые задачи по организации и управлению хранимыми данными.
RAID
В теории, концепции RAID-контроллера и контроллера системы хранения данных часто кажутся идентичными. Это связано с тем, что оба выполняют свою основную функцию — создание и управление дисковыми массивами. Однако на практике под RAID-контроллером подразумевается адаптер, устанавливаемый в сервер для создания массива из подключенных накопителей. В этом случае RAID-контроллер формирует подсистему хранения для конкретного локального клиента, но не является полноценной СХД.
Контроллер СХД
Если рассматривать систему хранения данных как отдельный элемент инфраструктуры с подключаемыми по сети клиентами, то в этом случае контроллер СХД — это специализированный компьютер с управляющим ПО. Он оснащен материнской платой, процессором и оперативной памятью. Физически такой контроллер может быть как в специальном корпусе, так и в стандартном корпусе для монтажа в стойку.
В некоторых решениях управляющее ПО берет на себя функцию создания RAID из накопителей, что устраняет необходимость использовать аппаратный RAID-контроллер. Такой подход часто применяется в программно-определяемых СХД, где контроллер может быть реализован на базе стандартных серверных платформ.
Двухконтроллерный режим
Системы хранения данных могут быть одно‑, двух- или многоконтроллерными. Последние два варианта используются для повышения производительности и отказоустойчивости: при сбое одного контроллера второй берет его функции без остановки системы. В многоконтроллерных конфигурациях узлы соединены каналами связи, которые зависят от архитектуры системы.
Наличие двух контроллеров не обязательно означает использование двух физических корпусов — часто дублирующие платы размещаются в разных отсеках одной платформы.
Вычислительные ресурсы
С ростом количества функций и накопителей системе требуется больше вычислительных ресурсов.
В качестве процессоров для СХД в основном используются x86 чипы Intel Xeon и реже AMD EPYC. Есть решения на других процессорах (например, Эльбрус), но они менее популярны. На объем вычислительных ресурсов влияют требования к инфраструктуре, характер и интенсивность нагрузок, а также сетевое окружение.
Сетевые адаптеры
Сетевые адаптеры (хост-адаптеры) — это конечное звено в цепочке обмена данными с клиентом. Они соединяют СХД с серверами, рабочими станциями и другими компонентами сети. Хост-адаптер — это плата с портами (Ethernet, FC, IB, SAS), которая использует разъем на материнской плате или впаивается в нее. Некоторые адаптеры имеют сразу несколько интерфейсов, например Mellanox с Infiniband и Ethernet.
Выбор сетевого адаптера зависит от имеющейся инфраструктуры, планируемых задач и конфигурации СХД. Он должен соответствовать используемым протоколам и типам соединений.
Выводы
Оборудование современной системы хранения данных можно представить как цепочку уровней передачи и обработки данных между местом хранения и клиентом. Такое представление помогает понять, что может стать “узким местом” производительности, какой компонент имеет избыточные характеристики и за счет чего можно снизить общую стоимость решения.
Использование этих знаний упростит выбор оборудования для СХД, а также процесс подбора компонентов при модернизации существующих систем. Понимание взаимосвязей в цепочке передачи данных позволит оптимально подобрать аппаратную конфигурацию, избежать ненужных затрат и добиться максимальной производительности.