2017/11/21 18:53:41

Redundant Array of Inexpensive Disks
RAID

Дословно «избыточный массив из недорогих дисков». Основная задача RAID - с помощью набора дисков получить виртуальный том бОльшего размера и/или большей надежности.

Содержание

Сегодня RAID применяется повсеместно как основная технология систем хранения в современных ЦОДах. Скорее всего, так будет и в обозримом будущем, учитывая развитие облачных вычислений в ЦОДах с использованием RAID-технологии и массивными объемами данных, появления которых вызвано феноменом социальных сетей, устройств для смарт-клиентов и мобильного Интернета, распространением видео на потребительских и корпоративных платформах. Внедрение корпорациями решений на основе флэш является следующим логическим шагом в эволюции технологии СХД, так как разрыв между ростом данных и инвестициями в ИТ-инфраструктуру увеличивается с каждым днем все больше, создавая проблемные «узкие места» (произвоительность или I/O) в критически важных приложениях.

Так как же компаниям избежать этих разрывов? Многие считают, что для этого существуют твердотельные накопители, которые способны закрыть разрыв между вычислительной производительностью и системой хранения, так как их время случайного доступа и скорость передачи данных намного быстрее при низком уровне задержки последовательной производительности чтения по сравнению с традиционными жёсткими дисками. Стоимость замены всей инфраструктуры хранения данных твердотельными накопителями нецелесообразна с экономической точки зрения, более выгодным вариантом является разработка способов интеграции флэш-технологии в архитектуру корпоративной системы для получения значительных улучшений работы.

История RAID

На мэйнфреймах и мини-ЭВМ использовали 14-дюймовые диски, а позже винчестеры. Трудно поверить, но такой диск емкостью 600 Мб весил несколько десятков килограммов. Позже в противовес RAID такие диски стали именовать «одиночными большими дорогими дисками» (Single Large Expensive Disk, SLED), вот вам еще один ретроним.

RAID определенно проделал длинный путь с тех пор, как в 1978 году Кен Норман Оучи (Norman Ken Ouchi) из компании IBM получил патент под названием `Система восстановления данных в отказавшем блоке памяти`, который по существу описывает то, что позже станет RAID 5. Спустя девять лет у троих ученых области ИТ из Университета Беркли (Калифорния) возникла идея объединения нескольких жестких дисков в логическую единицу. В 1988 году они опубликовали статью под заголовком `Массивы резервных недорогих дисков `, где доступно описали свою основную цель – решение вопросов потенциальной I/O производительности. По иронии судьбы, технология, которая была ими впервые предложена, широко распространилась за свою способность улучшать функциональную надежность хранения данных в большей степени, чем производительность. Как с помощью EvaProject и EvaWiki построить прозрачную бесшовную среду для успешной работы крупного холдинга 2.2 т

Таким образом впервые концепт RAID (англ. redundant array of independent disks — избыточный массив независимых дисков) был представлен в 1987 году исследователями из университета Беркли Дэвидом Петтерсоном, Гартом Гибсоном и Рэнди Катцем. В июне 1988 года ученые представили доклад «Аргументация в пользу RAID» на конференции SIGMOD. Первыми уровнями спецификации RAID стали RAID 1 (зеркальный дисковый массив), RAID 2 (зарезервированный для массивов, которые применяют код Хемминга), RAID 3 и 4 (дисковые массивы с чередованием и одним выделенным диском четности) и RAID 5 (дисковый массив с чередованием и отсутствием выделенного диска четности).

Кластер из дисков был устроен таким образом, чтобы извне он рассматривался как один диск. Но дешевизна – не главное достоинство RAID, важнее то, что кластер из независимых дисков можно было объединять по различным схемам (по так называемым «уровням» RAID), обеспечивающим большую или меньшую степень сохранности данных за счет избыточности. Поэтому букву I в аббревиатуре стали расшифровывать и как Independent («независимый»). Конфигурации на дисках ATA еще можно считать недорогими, но чаще в корпоративных массивах стоят диски SCSI или Fibre Channel.

Еще одно замечательное качество RAID – многократно большая скорость обмена, она линейно зависит от числа шпинделей. Таким образом, распараллеливание решает проблему «бутылочного горла» на канале диск-компьютер. Но, если просто избыточно увеличивать число дисков, то надежность системы будет уменьшаться.

Данные по дискам распределяются по полосам размером от нескольких килобайтов до нескольких мегабайтов. Вторая процедура для повышения надежности – зеркалирование. Массивы RAID различаются по сочетанию этих процедур. Есть выбор между скоростью доступа и надежностью, возможны и «компромиссные» варианты.

Есть два подхода к реализации RAID: аппаратный и программный. Первый не отнимает ресурсы у процессора, он надежнее, но дороже. Второй тип RAID дешевле.

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

Подробнее об эволюции СХД читайте здесь.

Спустя годы количество стандартных RAID-схем эволюционировало и получило название `уровни`. RAID 0 увеличил производительность и добавил функцию хранения, при этом была потеряна устойчивость к сбоям. В то время как RAID 1 позволял записывать зеркальные данные одинаково на два диска. RAID 2 и RAID 3 синхронизировали вращение шпинделя диска и сохраняли последовательные биты и байты на паритетный диск. С RAID 4 файлы распространялись между различными дисками, которые выполняли операции независимо, позволяя реагировать на I/O запросы параллельно. Несмотря на то, что все четные данные сохранялись на одном диске, `узкие места` не переставали появляться. RAID 5 распределял четность вместе с данными. В случае сбоя последующие чтения могли быть расчитаны по распределенной четности. RAID 6 обеспечиват отказоустойчивость двух вышедших из строя дисков, делая большие группы RAID более практичными для систем высокой доступности.

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

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


Уменьшение роли RAID5 в области использования жестких дисков HDD. Полагаю, причины этого явления вполне понятны при использовании технологии SAS. Кратко напомним: речь о поддержке всех видов дисков, включая диски для настольных компьютеров, поскольку SAS-контроллеры поддерживают диски SAТA, а они относятся к разных классам в плане надежности. Это также значительное увеличение количества дисков как на контроллере (до 256 дисков на контроллере для RAID-контроллеров Adaptec серии 2, 5, 6, 7), так и в составе тома (до 32 дисков в составе RAID5, до 128 дисков в составе RAID50), особенно если сравнить с временами, когда в серверах господствовала технология SCSI. Кроме того, это значительное увеличение емкости дисков. На сегодняшний день в листах совместимости Adaptec RAID контроллеров серии 6 и 7 есть поддержка дисков 4 Тбайт.[1]

Поскольку использование RAID5-решений в проектах уменьшается (а в ряде случаев оно просто запрещено), стеки RAID-контроллеров предлагают новые решения, такие как 5EE, 6, 1E и др., для создания базовых пользовательских томов взамен традиционного RAID5. Отметим, что не только новые уровни RAID помогают сделать отказ от использования RAID5 безболезненным – в этой области можно найти и другие решения. Например, поддержка функции bad stripe позволяет сохранять доступ к данным RAID-тома при возникновении критических ситуаций, которые раньше приводили к прямой потере доступа.

Ограничения на использование жестких дисков desktop и nearline. Появление таких ограничений не должно вызывать особого удивления. Поддержка всех классов дисков во всевозможных томах затруднена, поскольку в некоторых состояниях (например degraded RAID5 из desktop-дисков) тома обладают крайне плохими свойствами, связанными с надежностью. В нашем случае такой RAID5 будет в несколько раз менее надежным, чем обычный отдельный desktop-диск. Нарушение ограничений приводит к ситуации, когда использование RAID-контроллера не только бессмысленно, но и связано с серьезными рисками для доступа к данным и целостности данных.

Рост популярности гибридных томов. В широком смысле гибридный том – это любой том, где одновременно используются и традиционные жесткие диски (HDD), и твердотельные SSD. В силу этого такое решение, как SSD-кэширование, тоже является одним из вариантов реализации гибридного тома. В RAID-контроллерах Adaptec функция «гибридный том» (Hybrid Volume) подразумевает специальный режим для томов RAID1, 10, где используются как HDD-, так и SSD-диски.

Сам рост популярности гибридных томов объясняется довольно просто. SSD-диски в чистом виде не находят широкого применения, поскольку ряд их серверных свойств пока находится в разработке. Цена SSD-дисков довольно высока. Но в то же время SSD-решения обладают уникальной производительностью. Гибридные тома позволяют добавить надежности и емкости со стороны HDD-дисков, производительности со стороны SSD-дисков и оптимизировать цену такого решения.

Возможность использовать RAID-тома SSD. Хорошим примером уже имеющегося на рынке контроллера, который разработан с учетом широкого использования SSD-дисков, является 7 серия контроллеров Adaptec. Ядро контроллера имеет показатель на уровне больше 500 тыс. IOPS для случайного трафика (рис. 1) и около 6 Гбайт/с для последовательных шаблонов трафика. Такие показатели позволяют использовать SSD-диски средней категории производительности (наиболее популярных моделей) в количестве, по крайней мере равном количеству портов на контроллере (8–16 SSD).

Внутренняя архитектура, 24 порта в системе RAID-контроллера, поддержка PCI-E v.3 и т.д. создают некий задел для роста популярности поддержки «чистых» SSD-томов на RAID-контроллерах.

Вполне очевидно, что следующим шагом к поддержке SSD-томов будет использование технологии SAS3 – 12 Гбит/с.

Подчеркнем, что есть ряд факторов, которые пока препятствуют широкому распространению SSD RAID-томов и вытеснению HDD RAID-томов и гибридных томов. К этим факторам относятся высокая стоимость SSD, их низкая емкость, гарантированная остановка записи при записи определенного количества информации, оптимизация алгоритмов кэширования контроллеров для работы с SSD, самое начало внедрения поддержки TRIM-команд для RAID-контроллеров и т.п.

Разрыв в лавине данных

До сих пор RAID эволюционировал одновременно с предъявляемыми требованиям, но если задуматься… Согласно исследованиям компании Cisco, траффик сети испытает приблизительный совокупный среднегодовой темп роста 32% между 2011 и 2015 годом. Компания IDC прогнозирует необходимый совокупный среднегодовой темп роста вместимости устройств хранения размером в 50% за тот же период. Gartner оценила совокупные ежегодные темпы роста расходов на ИТ в 5%, а показатель расходов на телекоммуникационное оборудование составил 7%.

В то же время, учитывая рост количества данных, создаваемых и используемых по всему миру, разрыв в производительности требует решения проблем RAID, связанных с поддержанием уровня производительности и ускорения обработки данных. В основном все процессоры достигают скорости записи в 1 наносекунду в L1 кэш-памяти, 10 наносекунд в L2 и 100 наносекунд в основной кэш-памяти. Это намного быстрее, чем скорость записи в 10 милисекунд на СХД уровня 1 или в 20 милисекунд уровня 2 и в СХД ближнего профиля. Данные подтверждают время ожидания в 100 000 раз вследствие нарушения иерархичности памяти.

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

Переопределение производительности ЦОДа

Использование СХД на основе флэш с существующей СХД может сэкономить значительное количество денег, так как многоуровневые СХД-массивы с флэш на RAID-контроллере (вместе с интеллектуальным ПО) могут заместить огромное количество дисков, которое является необходимым для сохранения уровней I/O в традиционных СХД-массивах. Комбинированный подход позволяет компаниям интеллектуально использовать флэш-СХД и свои существующие жесткие диски вместе, что обеспечивает оптимальное соотношение цена/качество в многоуровневой СХД-среде.

Такой подход был выбран и корпорацией LSI, лидера в сегменте рынка и лидера технологии в оборудовании RAID и высокопроизводительных СХД-контроллеров. Недавно компания LSI представила продуктовый порфель Nytro™,объединяющий в себе флэш-технологию PCIe с ПО интеллектуального кэширования и управления. По данным LSI, подобная комбинация обеспечивает впечатляющее ускорение производительности, которая зависит от конфигураций и приложения, но легко увеличивает производительность различных HDD. Нередко производительность приложение ускоряется в 5-6 раз, а в некоторых случаях, по данным пользователей, в 30 раз.

Новые решения, такие как продуктовая линейка LSI® Nytro™, предлагающие флэш СХД-адаптер PCIe®, обеспечивают различные вместимости и отвечают разным требованиям. Высокая вместимость флэш-решений PCIe может быть использована в основной СХД для получения непрозрачной СХД с наибольши значением, но по приемлемой цене. Средняя вместимость флэш-решений, которые сочетают флэш-технологию PCIe с ПО интеллектуального кэширования, может ускорять SAN и комплекс DAS соединенных СХД, и обеспечивать баланс между стоимостью и ценностью результата. Низкая вместимость флэш-решений, которая сочетает RAID-контроллернуюю карту со встроеннымм ПО флэш и интеллектуального кэширования для ускорения DAS соединенных СХД, несет преимущества флэш `в массы`.

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

RAID 0, страйпинг

По другому называется Striping (страйпинг). Для организации такой схемы хранения необходимо как минимум 2 диска одинакового объема. Особенностью RAID-0 является возможность получить виртуальный том большего размера, чем составные диски. Принцип записи данных на диски - последовательное чередование дисков блоками данных одинаковой длинны (Stripe Unit). При этом первая часть данных записывается на первый диск, вторая - на второй и так далее, пока не закончатся физические носители (первая строка записи). После этого запись следует на первый носитель, но на следующий блок данных этого носителя, затем на второй блок второго носителя и так далее(последующие строки). Недостатком такой организации хранения данных является отсутствие дублирования, что при выходе из строя хотя бы одного носителя приводит к полной потере данных. Однако, такой тип организации данных при правильном подборе размера Stripe Unit позволяет получить бОльшую производительность виртуального тома, чем единичного физического носителя.

RAID 1, зеркалирование

Или зеркалирование (Mirroring). Для организации такой схемы хранения необходимо как минимум 2 диска одинакового объема.При зеркалировании блоки данных записываются одновременно на два или более физичеких устройства. При зеркалировании виртуальный том содержит две и более копий данных. RAID-1 помогает при выходе из строя одного или более носителей, однако обладает существенным недостатком: при такой организации хранения данных требуется большое количество избыточных физических носителей (в 2 раза больше, как минимум).

RAID 4

Чередование с записью контрольной суммы. Для организации такой схемы хранения необходимо как минимум 3 диска одинакового объема. При организации виртуального тома типа RAID-4 данные записываются на физические носители так, как это делается в случае с RAID-0. Однако на последний том записывается контрольная сумма, которая вычисляется с помощью простейшего алгоритма CEC из предыдущих блоков той же строки. При выходе из строя одного из дисков данные могут быть восстановлены используя избыточный диск с контрольными суммами. Недостатком такой организации хранения данных является "горячая точка" - последний диск, хранящий контрольные суммы, так как любая операция записи потребует операцию чтения контрольной суммы, ее перерасчет и запись.

RAID 5

Запись данных с чередованием контрольной суммы. При организации виртуального тома RAID-5 первая строка данных записывается чередованием, как в случае RAID-4, однако далее следуют различия. Вторая строка данных использует предпоследний диск для хранения контрольных сумм и так далее. После перебора всех носителей контрольная сумма опять записывается на последний диск и цикл повторяется. Таким образом RAID-5 позволяет "размазать" горячую точку, контрольную сумму, по всем физическим носителям и устраняет недостаток, присущий RAID-4.

RAID 4 и RAID 5 позволяют защитить виртуальный том от выхода из строя одного физического носителя.

RAID 6

Так же известен как Advanced Data Guarding (ADG). Организация записи аналогична RAID-5 за исключением того, что контрольная сумма записывается в двух экземплярах на различных дисках. Минимальное количество дисков для организации массива – 4. Обладает следующими характеристиками:

  • Высокая скорость чтения;
  • Высокая готовность - RAID-6 позволяет защитить виртуальный том от выхода из строя до двух физических носителей;
  • Более высокий коэффициент полезного использования дисков по сравнению с RAID 1+0, поскольку для хранения избыточной информации требуется только пространство эквивалентное двум физическим дискам;
  • Более низкая скорость записи по сравнению с RAID-5, поскольку для сохранения контрольной суммы требуется произвести 2 операции записи.

Так же возможна комбинация различных уровней RAID, например:

RAID-0+1

Для организации такой схемы хранения необходимо как минимум 4 физических носителя, общее количество носителей должно быть четным. Носители группируются на 2 группы одинакового размера, в каждой группе организуется RAID-0. После этого группы зеркалируются относительно друг-друга.

RAID-1+0

Так же как и в случае RAID-0+1 потребуется минимум 4 физичеких носителя, общее количество носителей должно быть четным. Носители так же группируются парами, между которыми организуется зеркало (RAID-1), после этого между двумя зеркалами организуется страйпинг (RAID-0).

Существуют так же и другие уровни RAID и их комбинации, однако широкого распространения они не получили.

RAID 7.3

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

ПО RAIDIX позволяет работать с массивами уровней RAID 0, RAID 5, RAID 6 и RAID 10. Среди патентованных алгоритмов «Рэйдикс» – уникальные уровни RAID 7.3 и N+M.

RAID 7.3 является аналогом RAID 6 с двойной четностью, но имеет более высокую степень надёжности. RAID 7.3 – уровень чередования блоков с тройным распределением четности, который позволяет восстанавливать данные при отказе до трех дисков в массиве и достигать высоких скоростных показателей без дополнительной нагрузки на процессор. RAID 7.3 существенно снижает вероятность отказа дисков без потерь в производительности и стоимости и зачастую используется для крупных массивов объемом более 32 ТБ.

RAID N+M

Другая патентованная технология RAID N+M – это уровень чередования блоков с произвольным распределением четности, позволяющий пользователю самостоятельно определить количество дисков, выделяемых под хранение контрольных сумм. Этот уникальный алгоритм «Рэйдикс» позволяет восстановить данные при отказе до 32 дисков (в зависимости от количества дисков четности).

Разработкой новых алгоритмов и созданием передовых технологий на основе искусственного интеллекта и машинного обучения занимается исследовательская лаборатория «Рэйдикс». Компанией «Рэйдикс» зарегистрировано более 10 технологических патентов в России и США. Среди ключевых направлений исследования в лаборатории стоит отметить постепенный отказ от старых уровней записи, привносящих дополнительные задержки; развитие предиктивной аналитики; настройку параметров хранения на лету и др.

Дополнительные функции RAID-томов

Copy Back Hot Spare

Между решениями типа «том RAID без Hot Spare диска» и «том RAID с Hot Spare диском» лежит случай назначения Hot Spare-диска нескольким томам. Оно добавляет надежности по сравнению с первым случаем и дает некоторую экономию по сравнению со вторым. Еще больше экономии приносят решения Copy Back Hot Spare, реализованные, например, на RAID-контроллерах Adaptec серий 5, 6, 7.

При использовании этой функции есть возможность закрывать тома на SAТA-дисках c помощью диска SATA Hot Spare с функцией Copy Back и тома на SAS-дисках – c помощью диска SAS Hot Spare с функцией Copy Back. Но максимальный эффект надежности и экономии дает случай, когда есть несколько, скажем пять, томов RAID5, построенных на SAS-дисках, и всем пяти томам в режиме Copy Back назначается SATA Hot Spare диск большой емкости – такой, чтобы ее хватило на замену вышедшего из строя диска во всех пяти рабочих томах.

В случае выхода из строя одного из дисков в рабочем томе на его место мгновенно начнет встраиваться (через операцию build) часть диска SATA. Безусловно, это не слишком хорошо, когда в состав тома входят и SAS-, и SATA-диски, но в данном случае контроллер выбирает меньшее из зол. Вместо того чтобы держать в крайне опасном состоянии (особенно для нашего случая, поскольку выход одного диска переведет том RAID5 в состояние degrade), контроллер начинает встраивать в том часть SATA-диска. И это за минимально возможный промежуток времени возвращает тома в исходное состояние в плане надежности. При этом производительность тома падает (теперь в нем работает SATA-диск). Администратору остается только заказать и получить новый SAS-диск, и если вставить новый диск в тот же слот, где находился вышедший из строя, то все нужные блоки будут рассчитаны и записаны на этот диск, и только после этого от тома отключится часть SATA-диска. Эта часть снова готова обслуживать тома.

Защита кэширования через оперативную память с помощью модуля AFM

Известно, что почти для всех видов трафика кэширование через оперативную память дает существенные преимущества в производительности. Для использования этой функции достаточно включить кэш на чтение и на запись, однако такая схема требует обязательной защиты. Важно отметить, что ИБП не решает эту задачу полностью. Например, потеря PDB (power distribution board) – платы логики управления блоками питания с избыточностью или отдельного блока питания сервера, если избыточность по питанию не используется – неизбежно приведет к потере данных в кэше даже при наличии ИБП.

Раньше в RAID-контроллерах использовалась специальная батарея (battery backup unit, BBU), задачей которой было подпитывать оперативную память в течение некоторого времени, чтобы не дать обнулиться содержимому кэша, что могло бы привести к потере данных на томе. У батареи имелся ряд недостатков: на ее зарядку и тестирование требуются примерно сутки, время поддержки кэша 24 часа в теории (8 часов среднее значение), срок жизни порядка 2 лет, гарантия 1 год, крайне негативное влияние температуры на срок жизни, требуемая остановка сервера при замене батареи и т.п.

С учетом этих недостатков современные контроллеры Adaptec предлагают для защиты кэша через оперативную память так называемые флэш-модули (Adaptec Flash module, AFM). Принцип работы такого модуля крайне прост: плата с логикой получает питание от суперконденсатора, который успевает полностью зарядиться за время загрузки сервера и загрузки ОС, и в случае потери питания этого хватает, чтобы скопировать содержимое кэша на флэш-память, что позволяет безболезненно хранить содержимое кэша при потере питания хоть несколько лет. На сегодняшний день такие модули имеют 3 года гарантии; по сравнению с BBU в них улучшена зависимость срока жизни от температуры. Данная технология постоянно совершенствуется: размеры уменьшаются, логика встраивается в микросхему контроллера, зависимость от температуры улучшается, что, возможно, в ближайшие годы позволит увеличить срок гарантии.

SSD-кэширование

SSD кэширование призвано усилить работу с теми шаблонами трафика, где кэширование через оперативную память не дает значимого эффекта прироста производительности; в первую очередь это случайное чтение. Поскольку размер кэша на SSD на порядки превосходит размер оперативной памяти, механизм кэширования работает следующим образом. Специальный алгоритм помечает блоки данных RAID-тома, например тома RAID5, как «горячие», если обращение к ним превысило некий порог запросов в единицу времени. Когда блок становится «горячим», он копируется на SSD-кэш (последний представляет собой либо SIMPLE VOLUME, либо – в последних реализациях – какой-то RAID–том). Следующие запросы уже обслуживаются с SSD-тома, что в разы увеличивает производительность чтения. На практике это не только дает значительное увеличение производительности, но и влияет на стоимость проекта.

Отметим, что если на томе нет «горячих данных», т.е. количество запросов в единицу времени ко всем блокам данных примерно одинаково, или если шаблон горячих данных очень быстро меняется, быстрее, чем алгоритм SSD-кэширования копирует их в SSD-кэш, или если горячих данных очень мало, то использование SSD-кэширования на чтение не даст желаемого прироста в производительности.

Допустим, нагрузка на серверы 1U в дата-центре выросла, и производительности такого сервера не хватает. Простое добавление диска в сервер решает проблему лишь частично, поскольку скоро не останется свободного места. Тогда увеличение производительности потребует либо добавления еще одного сервера, или установки внешней дисковой стойки. Новый такой же сервер увеличит производительность в два раза, внешняя стойка, если ее высота 1U, от силы в 3 раза. Но установка одного SSD и активация SSD-кэширования может увеличить производительность в 5–8 раз! При этом не потребуется ни пространство в шкафах, ни дополнительные внешние устройства.

Потеря SSD-диска не приводит к потере доступа и потери данных: кэш просто выключится (производительность при этом упадет), но при замене SSD на новый шаблон «горячих» данных достаточно быстро восстановится и производительность вернется.

SSD-кэш на запись, как было отмечено в таблице, требует защиты кэша (рис. 2). Для этого создается SSD-кэш-пул в виде RAID-тома с избыточностью (для RAID-контроллеров Adaptec используются RAID1, 1E, 10, 5).

В линейке продуктов Adaptec функцию SSD-кэширования поддерживают только контроллеры с индексом Q.

Хотелось бы отметить, что настройка SSD кэширования настраивается в два этапа. На первом SSD-диски или RAID-тома на SSD-дисках переводятся в кэш пул, после этого SSD перестают быть доступными как обычные диски, и в системе управления они получают специальное обозначение cache. Исключение среди продуктов Adaptec составляет серия 7Q. От SSD-дисков «отрезается том нужной емкости и переводится в SSD-кэш; остаток емкости, если таковой имеется, можно использовать для создания тома данных. На втором этапе каждому тому (SSD-кэширование индивидуально настраивается для каждого тома, как и кэширование через оперативную память), которому нужно активизировать SSD-кэширование, включаются кэш на запись и кэш на чтение. Настройки тома можно поменять динамически в любой момент времени, когда в этом появится необходимость.

Функция Power Management

Это крайне простая по своей природе функция с очень простыми настройками. Суть решения в возможности сначала уменьшить количество оборотов жесткого диска примерно в два раза, если система не получает запросы ввода-вывода в течение указанного периода (такой этап отрабатывается жесткими дисками, которые поддерживают режим standby), а после следующего указанного периода при отсутствии команд в систему ввода-вывода и вовсе выключить диски.

Это дает прямую экономию по питанию и косвенную экономию на питании для охлаждения работающих жестких дисков, при этом износ жестких дисков может заметно уменьшаться. Например, если раз в месяц делается бэкап с рабочего тома RAID5 на том RAID0, идея активизировать функцию Power Management на томе RAID0 выглядит крайне заманчивой. Целый месяц, кроме одного-двух дней, когда идет копирование, диски данного тома будут выключены.

Такую схему можно применять и к системным томам, отдельные операции ввода-вывода ложатся в кэш (ОС даже в неактивном состоянии использует запросы к томам) и только после превышения некоторого порога заставят диски данного тома раскрутиться и войти в режим Full Power.

Отметим, что все контроллеры Adaptec серий 2, 5, 6, 7 поддерживают функцию Power Management.

Управление

Системы управления – важный фактор обеспечения надежности тома RAID. Базовое правило требует, чтобы все пользовательские тома были заведены в схему управления.

Утилита управления для контроллеров Adaptec называется ASM (Adaptec Storage Manager) в последних версиях Max View ASM. Распространяется она бесплатно (доступна на сайте производителя). Утилита позволяет управлять всеми томами и всеми контроллерами во всех серверах в локальной сети с одной администраторской машины, а в последних реализациях – с любого устройства, оборудованного сетевой картой и браузером.

Для проактивного отслеживания состояния тома (крайне важно не пропустить моменты пропадания диска или дисков в составе тома RAID, срабатывания Hot Spare-дисков и т.п.) имеется возможность отправки единичных или групповых сообщений по электронной почте. Таким образом, администратор в любое время дня и ночи может получить сообщение от RAID-контроллера об изменении состояния томов или любых других критических событиях. Утилита позволяет легко настроить отправку почтовых сообщений, имеет возможность отправки тестовых сообщений для отладки работ и степени детализации, есть возможность отправки всех сообщений из журнала ОС RAID-контроллера и других журналов, например Java или журнала агента ASM.

Примечания