Фильтр по тематике

Как сделать встраиваемый накопитель данных отказоустойчивым

В статье описаны проблемы создания отказоустойчивой системы хранения данных для встраиваемых систем с ограниченными размерами и низким энергопотреблением. Предложены решения этой задачи с использованием RAID-контроллеров и накопителей компании Innodisk.

Отказоустойчивость – это святой Грааль для встраиваемых систем, особенно для ответственных применений, требующих работы в реальном времени, простои которых приводят к дополнительным затратам. Сказать о необходимости сокращения времени простоя гораздо проще, чем сделать это, особенно когда речь идёт о системах хранения данных.
Технология резервированных массивов независимых дисков (RAID – Redundant Array of Independent Disks) широко применяется на корпоративном уровне уже десятки лет. Но её применение во встраиваемых системах затруднительно из-за ограничений по размеру, массе и вычислительных особенностей. Широкое распространение в последнее время малоформатных твердотельных накопителей высокой плотности сделало возможным создать резервированную систему хранения данных даже в компактных встраиваемых системах.
С ультракомпактными RAID-контроллерами мы входим в новую эру, где понятие компактной встраиваемой системы хранения данных высокой доступности перестаёт быть оксимороном.
Резервирование – это ключевой фактор при создании надёжных накопителей. С 1990 года обычной практикой является зеркалирование дисков с использованием RAID. Стандартизированная RAID-система для зеркалирования всех данных на дисках позволяет построить отказоустойчивую систему хранения даже с использованием относительно недорогих компонентов. Если диск выходил из строя, то нагрузку принимала на себя резервная копия, позволяя минимизировать время простоя или избежать его в хорошо реализованной системе.
RAID-системы широко распространены в серверных приложениях, но их применение на встраиваемом уровне было проблемой. Изначально твердотельные накопители были довольно дорогими, и высокая стоимость встраиваемой отказоустойчивой системы в большинстве случаев служила препятствием. Размер также был проблемой даже для твердотельных накопителей, так как первые накопители зачастую были не меньше, чем жёсткие диски, которые они заменяли.
Вычислительные мощности, необходимые для управления RAID, традиционно требовали либо громоздкого аппаратного RAID-контроллера, что нецелесообразно для систем с ограниченным пространством, либо программного контроллера. Несмотря на то что программный RAID-контроллер экономит пространство, это не всегда правильный выбор. Встраиваемые системы часто имеют ограничения по энергопотреблению и размеру системы теплоотвода и не могут позволить себе перегрузку центрального процессора и ОЗУ при работе программного обеспечения RAID.

Надёжность против отказоустойчивости

Из-за различных трудностей в реализации резервированной системы хранения данных во встраиваемых системах для снижения времени простоя традиционно больше внимания уделяется надёжности, а не устойчивости к сбоям. Срок эксплуатации и продолжительность работы могут быть увеличены за счёт применения высококачественных компонентов и надёжной конструкции системы с высоким показателем средней наработки на отказ (MTTF – Mean Time To Failure).
Механические жёсткие диски подвержены отказам по различным причинам. Удары, вибрация и физический износ обязательно приведут к выходу диска из строя. Вопрос только в том, когда это случится. Создание надёжных жёстких дисков означает использование более качественных компонентов и надёжной механической конструкции для лучшей устойчивости к ударам и вибрации.
Сегодняшние твердотельные накопители с конструкцией без движущихся частей исключают механические проблемы как фактор выхода устройств из строя, но остаётся возможность сбоев в контроллере диска или на уровне запоминающего устройства. Также ячейки флэш-памяти имеют ограниченное число циклов записи. Таким образом, флэш-память устойчива к ударам и вибрации, но требует постоянного контроля её износа. Поэтому улучшение надёжности твердотельных накопителей влечёт за собой применение промышленных дисков, контроллеры которых оптимизированы для надёжной и длительной работы, а не только для увеличения производительности, и которые используют компоненты более высокого уровня. В промышленных системах чаще применяется память типа SLC (Single Level Cell) с одноуровневыми ячейками или альтернативные варианты, например iSLC, в то время как в потребительских устройствах используется память типа MLC (Multi Level Cell) с многоуровневыми ячейками. Флэш-память высокого уровня позволяет осуществить в несколько раз большее количество циклов записи, чем память MLC, что значительно увеличивает срок эксплуатации накопителя.
Повышение надёжности всегда является основной целью для промышленных систем, но для общего улучшения жизнеспособности системы требуется также и повышение отказоустойчивости. Для понимания того, как создать отказоустойчивую систему, мы просто можем взглянуть на корпоративные центры обработки данных, где простой может стоить тысячи и миллионы долларов.
В таких ответственных применениях надёжные компоненты комбинируются с отказоустойчивой конструкцией для создания систем высокой готовности.
Готовность системы, которая может характеризоваться как минимизация времени простоя, достигается двумя путями. Первый подход увеличивает время эксплуатации системы за счёт повышения надёжности. Второй подход уменьшает время восстановления системы, повышая отказоустойчивость.

Встраиваемый отказоустойчивый накопитель данных

Отказоустойчивый накопитель требует резервирования, и здесь нет альтернатив. К счастью, в наши дни и твердотельные накопители и RAID-контроллеры значительно уменьшились в размерах, в то время как первоначальные твердотельные диски имели размер, аналогичный механическим жёстким дискам, которые они заменяли, современные накопители форматов mSATA и M.2 не-сравнимо меньше даже 2,5″ дисков для ноутбуков, выглядящих в сравнении с mSATA и M.2 как раздувшиеся бегемоты.

Компактные накопители имеют размер меньше половины игральной карты, а их толщина измеряется в миллиметрах (рис. 1).
Размеры RAID-контроллеров также подверглись серьёзному уменьшению. То, что раньше требовало полноразмерной платы расширения, теперь может быть реализовано на одной микросхеме. При правильном выборе встроенного программного обеспечения новое поколение RAID-контроллеров успешно работает с твердотельными накопителями, не ухудшая их характеристик.
Сегодня на рынке существует множество вариантов накопителей различных форматов, предназначенных для разработки встраиваемых систем. Для крупных систем, уже имеющих отсек для дисков 2,5″, есть RAID-контроллер, эмулирующий такой диск. Он содержит аппаратный RAID-контроллер и два слота mSATA или M.2 для резервирования накопителей. Сконфигурированный в режиме RAID 1 или RAID 0, он распознаётся системой как стандартный диск формата 2,5″, при этом обеспечивая резервирование и отказоустойчивость или более высокую производительность в случае RAID 0 (рис. 2).

Для компактных систем интерфейсы mSATA или M.2 могут обеспечить наиболее компактную конфигурацию RAID, доступную на сегодняшний момент. Так же как и в случае замены 2,5″ диска, RAID-контроллер формата mSATA или M.2 подключается в соответствующий интерфейс и определяется системой как одиночный диск. Фактически он обеспечивает резервирование накопителей через физическое соединение с двумя SATA-накопителями (рис. 3).

Эти накопители могут быть SATA-дисками обычного размера, соединёнными гибкими кабелями, или модулями SATA DOM, являющимися компактными накопителями, подключаемыми непосредственно в разъём SATA. Диски SATA DOM компании Innodisk представлены в различных конфигурациях, как вертикальной, так и горизонтальной установки, что позволяет разместить их в различных встраиваемых системах (рис. 4).

В высокопроизводительных встраиваемых системах с жёсткими ограничениями по размеру может рассматриваться использование двух накопителей совместно с программным RAID-контроллером, что невозможно в большинстве встраиваемых систем с низким энергопотреблением. Небольшие размеры накопителей форматов mSATA, M.2 и SATA DOM делают конфигурацию RAID максимально компактной, но использование ресурсов процессора и оперативной памяти для поддержания работы такой конфигурации приводит к тому, что её применение целесообразно только для встраиваемых систем верхнего уровня.

Реализация встраиваемых накопителей данных высокой готовности

Комбинация отказоустойчивой системы RAID с надёжными твердотельными накопителями промышленного уровня с памятью SLC или iSLC позволяет встраиваемым системам получить реальную высокую готовность. Оба фактора: надёжность – время до отказа и отказоустойчивость – время восстановления – обеспечивают минимизацию времени простоя подсистемы хранения данных. Отказоустойчивость также может рассматриваться как позитивный фактор для имеющихся дисков с памятью MLC. Для приложений с ограничением по количеству циклов записи она может служить доступным и эффективным способом снижения времени простоя.
Длинный и сложный путь развития твердотельных накопителей и RAID-контроллеров позволил современным встраиваемым системам в итоге получить настоящую отказоустойчивую систему хранения данных. ●

Автор – вице-президент компании Innodisk
Перевод Александра Барона, сотрудника фирмы ПРОСОФТ
Телефон: (495) 234-0636
E-mail: info@prosoft.ru
Комментарии
Рекомендуем