Чи потрібно створювати RAID-масив із SSD і які контролери для цього потрібні

Привіт Хабре! У цьому матеріалі ми розповімо, чи варто організовувати RAID-масиви на базі твердотільних рішень SATA SSD та NVMe SSD, і чи буде від цього серйозний прибуток? Ми вирішили розібратися у цьому питанні, розглянувши види та типи контролерів, які дозволяють це зробити, а також сфери застосування таких конфігурацій.

Чи потрібно створювати RAID-масив із SSD і які контролери для цього потрібні

Так чи інакше, кожен з нас хоч раз у житті чув такі визначення, як "RAID", "RAID-масив", "RAID-контролер", але навряд чи надавав цьому серйозного значення, тому що пересічному ПК-боярину все це навряд чи цікаво. А ось високих швидкостей від внутрішніх накопичувачів та безвідмовності їхньої роботи хочеться всім і кожному. Адже, якою б потужною була начинка комп'ютера, швидкість роботи накопичувача стає вузьким місцем, якщо говорити про сукупну швидкодію ПК і сервера.

Так було до того моменту, поки на зміну традиційним HDD не прийшли сучасні NVMe SSD з порівнянною ємністю в 1 Тбайт і більше. І якщо раніше у ПК частіше зустрічалися зв'язки SATA SSD + парочка ємних HDD, то сьогодні їх починає змінювати інше рішення - NVMe SSD + парочка ємних SATA SSD. Якщо говорити про корпоративні сервери та "хмари", багато хто вже успішно переїхав на SATA SSD, просто тому що вони швидше звичайних "бляшанок" і здатні обробляти більшу кількість операцій вводу/виводу одночасно.

Чи потрібно створювати RAID-масив із SSD і які контролери для цього потрібні

Однак відмовостійкість системи все одно знаходиться на досить низькому рівні: ми не можемо як у "Битві екстрасенсів" передбачити з точністю навіть до тижня, коли той чи інший твердотільний накопичувач накаже довго жити. І якщо HDD "вмирають" поступово, дозволяючи вловити симптоми і вжити заходів, то SSD "мруть" відразу і без попереджень. І ось тепер час розібратися, навіщо все це взагалі потрібно? Чи варто організовувати RAID-масиви на базі твердотільних рішень SATA SSD та NVMe SSD, і чи буде від цього серйозний прибуток?

Навіщо потрібний RAID-масив?

Саме слово "масив" вже має на увазі те, що для його створення використовується кілька накопичувачів (HDD і SSD), які об'єднуються за допомогою RAID-контролера і розпізнаються ОС як єдине сховище даних. Глобальне завдання, яке дозволяють вирішити RAID-масиви - мінімізація часу доступу до даних, підвищення швидкості читання/запису та надійності, яка досягається завдяки можливості швидкого відновлення у разі збою. До речі, для домашніх бекапів використовувати RAID зовсім не обов'язково. А от якщо у вас є свій домашній сервер, до якого необхідний постійний доступ 24/7 – тут інша справа.

Існує понад десяток рівнів RAID-масивів, кожен з яких відрізняється кількістю накопичувачів, що використовуються в ньому, і має свої плюси і мінуси: наприклад, RAID 0 дозволяє отримати високу продуктивність без відмовостійкості, RAID 1 — налагодити автоматичне дзерклювання даних без приросту швидкості, а RAID 10 об'єднує у собі можливості перерахованих вище. RAID 0 і 1 — найпростіші (оскільки не вимагають твори програмних обчислень) і, як наслідок, найпопулярніші. Зрештою вибір на користь того чи іншого рівня RAID залежить від покладених на дисковий масив завдань та можливостей RAID-контролера.

Домашній та корпоративний RAID: у чому різниця?

Основа будь-якого сучасного бізнесу – великі обсяги даних, які мають надійно зберігатися на серверах компаній. А ще, як ми вже зазначали вище, до них має забезпечуватись постійний доступ 24/7. Зрозуміло, що нарівні з “залізом” важлива і софтверна частина, але в даному випадку ми говоримо все-таки про обладнання, що забезпечує надійне зберігання та обробку інформації. Жодний софт не врятує компанію від руйнування, якщо "залізне" обладнання не відповідає покладеним на нього завданням.

Чи потрібно створювати RAID-масив із SSD і які контролери для цього потрібні

Для цих завдань будь-який виробник "заліза" пропонує так звані корпоративні пристрої. Kingston має потужні твердотільні рішення в особі SATA-моделей. Kingston 450R (DC450R) и серії DC500, а також NVMe-моделей DC1000M U.2 NVMe, DCU1000 U.2 NVMe та DCP-1000 PCI-e, призначених для використання в ЦОД (центрах обробки даних) та суперкомп'ютерах. Масиви з таких накопичувачів зазвичай використовуються у зв'язці з апаратними контролерами.

Чи потрібно створювати RAID-масив із SSD і які контролери для цього потрібні

Для споживчого ринку (тобто для домашніх ПК і NAS-серверів) доступні такі накопичувачі як Kingston KC2000 NVMe PCIe, але в цьому випадку необов'язково купувати апаратний контролер. Можна обмежитися вбудованим в материнську плату ПК або NAS-сервера, якщо ви, звичайно, не плануєте самостійно зібрати домашній сервер для нетипових завдань (завести маленький домашній хостинг для друзів, наприклад). До того ж, домашні RAID-масиви, як правило, не передбачають наявність сотень і тисяч накопичувачів, обмежуючись двома, чотирма та вісьмома пристроями (частіше SATA).

Види та типи RAID-контролерів

Існує три види RAID-контролерів, засновані на принципах реалізації RAID-масивів:

1. Програмні, в яких керування масивом лягає на CPU та DRAM (тобто виконання програмного коду відбувається на процесорі).

2. Інтегровані, тобто вбудовані в материнські плати ПК або NAS-сервера.

3. Апаратні (модульні), що є дискретними платами розширення для роз'ємів PCI/PCIe системних плат.

У чому їхня принципова відмінність один від одного? Програмні RAID-контролери поступаються інтегрованим та апаратним за продуктивністю та стійкістю до відмов, але при цьому не вимагають спеціального обладнання для роботи. Однак важливо переконатися, що процесор хост-системи є досить потужним для запуску програмного забезпечення RAID, не впливаючи на продуктивність додатків, які також працюють на хості. Інтегровані контролери, як правило, оснащуються власною кеш-пам'яттю і задіяють деяку кількість ресурсів CPU.

А ось апаратні мають і власну кеш-пам'ять, і вбудований процесор для виконання програмних алгоритмів. Зазвичай вони дозволяють реалізувати всі види рівнів RAID-масивів та підтримують відразу кілька видів накопичувачів. Наприклад, до сучасних апаратних контролерів компанії Broadcom можна одночасно підключати SATA-, SAS- та NVMe-пристрою, що дозволяє не змінювати контролер при апгрейді серверів: зокрема, при переїзді з SATA SSD на NVMe SSD контролери міняти не доведеться.

Чи потрібно створювати RAID-масив із SSD і які контролери для цього потрібні

Власне на цій ноті ми підійшли до типологізації самих контролерів. Якщо є трирежимні, мають бути якісь ще? В даному випадку відповідь на це питання буде ствердною. Залежно від функцій та можливостей RAID-контролери можна розділити на кілька типів:

1. Звичайні контролери з функцією RAID
У всій ієрархії це просто контролер, який дозволяє об'єднувати HDD і SSD в RAID-масиви рівнів "0", "1" або "0+1". Програмно це реалізовано лише на рівні прошивки. Однак, такі пристрої навряд чи можна рекомендувати для використання в корпоративному сегменті, адже у них немає кешу і не підтримуються масиви рівнів “5”, “3” тощо. А ось для домашнього сервера початкового рівня вони цілком підійдуть.

2. Контролери, які працюють у парі з іншими RAID-контролерами
Цей тип контролерів може працювати у парі з інтегрованими контролерами материнських плат. Реалізовано це за таким принципом: дискретний RAID-контролер перебирає рішення “логічних” завдань, а вбудований — функції обміну даними між накопичувачами. Але є нюанс: паралельна робота таких контролерів можлива лише на сумісних системних платах, а отже сфера їх застосування серйозно звужується.

3. Самостійні RAID-контролери
Ці дискретні рішення містять на борту всі необхідні чіпи для роботи з серверами корпоративного класу, володіючи власним BIOS'ом, кеш-пам'яттю та процесором для швидкої корекції помилок та обчислення контрольних сум. До того ж вони відповідають високим стандартам надійності в плані виготовлення і мають високоякісні модулі пам'яті.

4. Зовнішні RAID-контролери
Неважко здогадатися, що всі перелічені вище контролери є внутрішніми та отримують харчування через роз'єм PCIe материнської плати. Про що це каже? А про те, що вихід із ладу системної плати може призвести до помилок у роботі RAID-масиву та втрати даних. Зовнішні контролери позбавлені цього непорозуміння, оскільки розміщуються в окремому корпусі з незалежним блоком живлення. У плані надійності такі контролери забезпечують найвищий рівень зберігання даних.

Broadcom, Microsemi Adaptec, Intel, IBM, Dell та Cisco - це лише деякі з компаній, які пропонують апаратні RAID-контролери в даний час.

Режими роботи RAID контролерів SAS/SATA/NVMe

Основним завданням трьохрежимних HBA-і RAID-контролерів (чи контролерів із функцією Tri-Mode) є створення апаратного RAID з урахуванням NVMe. У компанії Broadcom це вміють робити контролери 9400 серії: наприклад, MegaRAID 9460-16i. Він відноситься до самостійного типу RAID-контролерів, оснащений чотирма роз'ємами SFF-8643 і завдяки підтримці Tri-Mode дозволяє коннектити до себе SATA/SAS- і NVMe-накопичувачі одночасно. До того ж це ще й один із найенергоефективніших контролерів на ринку (споживає всього 17 Ватт енергії, при цьому менше 1,1 Ватт на кожен із 16 портів).

Чи потрібно створювати RAID-масив із SSD і які контролери для цього потрібні

Інтерфейсом підключення служить PCI Express x8 версії 3.1, що дозволяє реалізувати пропускну здатність на рівні 64 Гбіт/с (2020 року очікується поява контролерів для PCI Express 4.0). В основі 16-портового контролера лежить 2-ядерний чіп SAS3516 та 72-бітна DDR4-2133 SDRAM (4 Гбайт), а також реалізована можливість підключення до 240 накопичувачів SATA/SAS-, або до 24 NVMe-пристроїв. Що стосується організації RAID-масивів підтримуються рівні “0”, “1”, “5” і “6”, і навіть “10”, “50” і “60”. До речі, кеш-пам'ять MegaRAID 9460-16i та інших контролерів у серії 9400 захищена від збоїв напруги додатковим модулем CacheVault CVPM05.

В основі трирежимної технології лежить функція перетворення даних SerDes: перетворення послідовного представлення даних в інтерфейсах SAS/SATA в паралельну форму PCIe NVMe і навпаки. Тобто контролер узгоджує швидкості та протоколи, щоб безперешкодно працювати з будь-яким із трьох типів пристроїв зберігання. Це забезпечує безперебійний спосіб масштабування інфраструктур центрів обробки даних: користувачі можуть використовувати NVMe без істотних змін інших конфігураціях системи.

Чи потрібно створювати RAID-масив із SSD і які контролери для цього потрібні

Однак при плануванні конфігурацій з NVMe-накопичувачами, варто враховувати, що NVMe-рішення використовують для підключення 4 лінії PCIe, а отже кожен накопичувач задіє всі лінії портів SFF-8643. Виходить, що безпосередньо до контролера MegaRAID 9460-16i можна підключити лише чотири накопичувачі NVMe. Або обмежитися двома NVMe-рішеннями при одночасному підключенні восьми SAS-накопичувачів (див. схему підключення нижче).

Чи потрібно створювати RAID-масив із SSD і які контролери для цього потрібні

На малюнку показано використання роз'єму "0" (С0 / Connector 0) і роз'єму "1" для підключень NVMe, а також роз'ємів "2" і "3" для підключень SAS. Це розташування може бути змінено на зворотне, але кожен накопичувач x4 NVMe має бути підключений із використанням сусідніх ліній. Режими роботи контролера встановлюються через конфігураційні утиліти StorCLI або Human Interface Infrastructure (HII), що працює в середовищі UEFI.

Чи потрібно створювати RAID-масив із SSD і які контролери для цього потрібні

Режим за замовчуванням – профіль «PD64» (підтримка тільки SAS/SATA). Як ми вже говорили вище, всього профілів три: режим SAS/SATA only mode (PD240 / PD64 / PD 16), режим NVMe only mode (PCIe4) і змішаний режим, в якому можуть працювати всі типи накопичувачів: PD64 -PCIe4» (підтримка 64 фізичних та віртуальних дисків з 4 NVMe-накопичувачами). У змішаному режимі значення профілю, що задається, має бути таким – «ProfileID=13». До речі, вибраний профіль зберігається як ведучий і не скидається навіть при відкаті до заводських налаштувань через команду Set Factory Defaults. Змінити його можна буде лише вручну.

Чи варто створювати RAID-масив на SSD?

Отже, ми вже зрозуміли, що RAID-масиви – це запорука високої швидкодії. Але чи варто збирати RAID із твердотільних накопичувачів для домашнього та корпоративного використання? Багато скептик говорять про те, що приріст у швидкості виходить не настільки суттєвим, щоб розорятися на NVMe-накопичувачі. Але чи це так насправді? Навряд чи. Найбільшим обмеженням для використання SSD у RAID (як у домашніх умовах, так і на корпоративному рівні) може стати лише ціна. Як не крути, а вартість гігабайта простору у HDD значно дешевша.

Підключення кількох твердотілих дисків до контролера RAID для створення масиву з SSD в певних конфігураціях може вплинути на продуктивність. Не варто, однак, забувати, що максимальна продуктивність обмежена пропускною здатністю самого контролера RAID. Рівнем RAID, який пропонує найкращу швидкість роботи, є RAID 0.

Чи потрібно створювати RAID-масив із SSD і які контролери для цього потрібні

Організація звичайного RAID 0 із двома SSD-накопичувачами, в якій використовується метод розбиття даних на фіксовані блоки та їх чергування між твердотільними сховищами, призведе до подвоєння продуктивності (якщо порівнювати зі швидкостями, які видає один SSD). При цьому масив RAID 0 з чотирма твердотілими накопичувачами буде вже в чотири рази швидше, ніж повільний SSD в масиві (залежно від обмеження пропускної здатності на рівні контролера RAID SSD).

Якщо виходити з простої арифметики, SATA SSD приблизно в 3 рази швидше за традиційний SATA HDD. NVMe-рішення ще ефективніше - в 10 разів і більше. За умови, що два жорсткі диски в RAID нульового рівня покажуть подвоєну продуктивність, збільшивши її на 50%, два SATA SSD виявляться в 6 разів швидше, а два NVMe SSD - в 20 разів швидше. Зокрема, один накопичувач Kingston KC2000 NVMe PCIe може досягати швидкості послідовного читання та запису до 3200 Мбайт/с, що у форматі RAID 0 досягне значних 6 Гбайт/с. А швидкість читання/запису випадкових блоків розміром 4 Кбайт перетвориться з 350 000 IOPS на 700 000 IOPS. Але... водночас “нульовий” RAID не забезпечує нам надмірності.

Можна сказати, що в домашніх умовах надмірність сховища зазвичай і не потрібна, тому найбільш підходящою конфігурацією RAID для SSD дійсно стає RAID 0. Це надійний спосіб отримати значне підвищення продуктивності як альтернативу використанню таких технологій, як твердотільні накопичувачі на базі Intel Optane. А ось як поведуться SSD-рішення в найпопулярніших типах RAID ("1", "5", "10", "50") - ми поговоримо в наступному матеріалі.

Ця стаття підготовлена ​​за підтримки наших колег із Broadcom, які надають свої контролери інженерам Kingston для тестування з накопичувачами SATA/SAS/NVMe корпоративного класу. Завдяки цьому дружньому симбіозу, клієнтам не доводиться сумніватися в надійності та стабільності роботи накопичувачів Kingston з HBA- та RAID-контролерами виробництва. Broadcom.

Додаткову інформацію про продукти Kingston можна знайти на офіційному сайті компанії.

Джерело: habr.com

Додати коментар або відгук