Развитие бизнеса и увеличение числа критически важных задач требуют построения надежной и производительной инфраструктуры хранения данных. Большинство производителей корпоративных СХД предлагают использовать All-Flash массивы для достижения максимальной производительности. Однако стоимость таких решений все еще остается довольно высокой, и многие ИТ-компании предпочитают более экономичный подход в виде гибридных хранилищ, использующих преимущества разных типов дисков в рамках одной системы. Одна из самых популярных технологий для увеличения производительности доступа к данным в гибридных хранилищах – технология многоуровневого хранения Auto Tiering. Сегодня мы рассмотрим особенности реализации тиринга в сетевых накопителях QSAN XCubeNAS.
Практически все сетевые накопители QSAN XCubeNAS оснащены выделенными слотами для SSD-дисков и предполагают гибридную компоновку по умолчанию. Таким образом при настройке многоуровневого хранения пользователям не придется жертвовать общей емкостью системы.
Общая идея многоуровневого хранения данных предполагает, что все данные на хранилище можно разделить на несколько условных групп в зависимости от частоты обращения к ним. Наиболее востребованные «горячие» данные нужно обрабатывать максимально быстро, а доступ к менее популярным – «холодным» – данным можно организовать с более низким приоритетом. Для реализации подобной схемы дисковые накопители разделяются системой на уровни хранения (tier – англ. ярус). Алгоритм управления автоматически перемещает данные между уровнями в соответствии с настроенными политиками и таким образом регулирует скорость доступа к определенным участкам информации.
Операционная система QSAN выделяет четыре уровня хранения, хотя фактически на сегодняшний день нет модели с возможной установкой сразу всех возможных типов дисков:
- Уровень 0: Сверхвысокая скорость (PCIe NVMe) ;
- Уровень 1: Высокая скорость (SAS/SATA SSD);
- Уровень 2: Высокопроизводительные механические диски (SAS);
- Уровень 3: Диски высокой ёмкости (SATA/NL-SAS);
Благодаря особенностям и возможностям файловой системы ZFS (о которой мы уже рассказывали в выпуске Ef-office № 43 за апрель 2019) дисковый пул может быть сконфигурирован с максимальной гибкостью. Каждый из уровней может содержать в себе одну или несколько привычных RAID-групп, которые затем объединяются в единое дисковое пространство. Но следует отметить – широкие возможности при создании ZFS-пула оборачиваются недоступностью его дальнейшего изменения. Система не позволяет изменять RAID-массивы после создания, а активировать механизм многоуровневого распределения можно только на этапе создания дискового пула. Поэтому системные администраторы должны заранее продумать архитектуру будущей системы.
Механизм автоматического управления многоуровневым хранилищем, реализованный в QSAN, выполняет три основные функции:
- Сбор статистики. Пространство файловых и iSCSI-томов, созданных на Auto Tiering пуле, делится на небольшие блоки одинакового размера, названные разработчиками Sub-LUN. Система XCubeNAS ведет постоянный фоновый мониторинг операций ввода/вывода каждого из таких блоков, фиксируя общее количество обращений и их давность. Каждое событие чтения/записи блока Sub-LUN присваивает ему максимальный коэффициент актуальности, и без дальнейшей активности он начинает уменьшаться каждый час. Через 24 часа коэффициент актуальности падает примерно вдвое и далее продолжает свой экспоненциальный спад.
- Ранжирование. На основе собранной статистики ранги для каждого блока Sub-LUN в пуле выстраиваются по порядку. В зависимости от политики, настроенной для тома, система генерирует решения о перемещении данных между уровнями.).
- Перемещение. Непосредственно перенос данных проходит автоматически по расписанию (по умолчанию – ежедневно в полночь) или же может быть запущен вручную. Администраторы могут установить один из 3 скоростных режимов для перемещения и ограничить время, в течение которого данные будут мигрировать.
Вся статистика перемещений и наглядные графики использования каждого из дисковых уровней отображаются на странице сведений о распределении информации в Auto Tiering пуле.
Для максимальной производительности при различных сценариях использования многоуровневые пулы предлагают набор политик, регулирующих начальное расположение данных и направления их дальнейшего перемещения. Политики настраиваются для каждого отдельного тома и могут быть изменены на лету:
- Автоматическое распределение по уровням – позволяет перемещать небольшой процент «горячих» данных на более высокие уровни, храня остальные данные на более низких. Новая информация записывается на уровень с наибольшим количеством свободного пространства, а затем данные перемещаются в соответствии с актуальностью. Это рекомендуемая политика, и она используется по умолчанию для каждого нового тома.
- Начать с высокого, затем автоматически – начальное расположение выбирается на наиболее быстром уровне, после чего менее востребованные данные постепенно перемещаются вниз. Данный режим отлично подходит для оперативной работы с данными, например, при монтаже видео.
- Самый высокий из доступных – размещает данные на самом высоком доступном уровне до предела емкости, после чего новые блоки помещаются в следующий, более низкий уровень. Алгоритм автоматического распределения будет отдавать приоритет использования высоких уровней блокам томов, на которых настроена эта политика.
- Самый низкий из доступных – подойдет для томов, которым не важна скорость, а приоритет отдается надежности и эффективности хранения. Данные изначально размещаются на уровне с наибольшей емкостью и остаются на нем независимо от частоты обращения к ним. Активация этой политики на томах с данными на верхних уровнях приведет к их перемещению в самый низ многоуровневого пула.
- Без перемещения – никакие Sub-LUN, выделенные для этого тома, не будут перемещаться между уровнями, но система продолжит собирать статистику на случай будущих изменений политики.
Auto Tiering – очень привлекательная технология, которая позволит повысить производительность системы хранения с минимальными финансовыми вложениями за счет гибридной компоновки и эффективного использования скоростных накопителей. Большое количество настроек и гибкость конфигурирования многоуровневых пулов в системах QSAN серии XCubeNAS помогут системным администраторам оптимизировать хранение и доступ к данным с учетом специфики работы своей организации.