Особливості та різниця між RAID lvm та mdadm

Сучасні операційні системи мають багато функцій для підвищення безпеки даних і зручності їх використання. У цій статті ми порівняємо RAID LVM та RAID mdadm – дві цікаві технології, головним призначенням яких є забезпечення безперервної працездатності сервера, комп’ютера або NAS та забезпечення збереження даних у разі поломки обладнання.

Особливості та різниця між RAID lvm та mdadm

Зміст

  1. Особливості технологій Lvm та mdadm
  2. Порівняння RAID LVM та RAID mdadm
  3. Чи можна використовувати mdadm та LVM одночасно?
  4. Як відновити втрачені дані?

Особливості технологій Lvm та mdadm

Lvm та mdadm – це дві схожі і одночасно абсолютно різні утиліти, які призначені для роботи з інформацією на дисках. Схожість полягає в тому, що як LVM, так і mdadmзаймаються розподілом даних між накопичувачами на програмному рівні. Тобто ви можете створити програмний RAID масив або Lvm диски, використовуючи тільки можливості операційної системи. Жодного додаткового обладнання не потрібно. Щоб зрозуміти в чому відмінність – давайте спершу розглянемо, чим є кожна з цих технологій окремо.

LVM(logical volume manager) являє собою абстрактний рівень між дисковим контролером і операційною системою. Фактично це підсистема, завдяки якій користувач може об’єднати простір декількох дисків в один том, а потім розділити його на кілька логічних дисків.

Припустимо, що у нас є два диски об’ємом 100 Гб. За допомогою LVM ми можемо об’єднати їх в один том об’ємом 200 Гб (100 Гб + 100 Гб), а потім створити три логічні диски: перший об’ємом 120 Гб і два по 40 Гб. Таким чином ми взяли частину пам’яті іншого накопичувача та приєднали до першого.

Принцип роботи lvm

Тобто завдяки технології LVM ми можемо розподіляти пам’ять між дисками, не обмежуючись розміром будь-якого з накопичувачів. Єдиним обмеженням буде лише загальний обсяг дисків для всіх дисків.

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

Так, LVMможе реалізувати деяку подобу RAID масиву, використовуючи власні рішення, проте вони будуть значно поступатися в плані продуктивності або передавати команди утиліті md, тобто самому пристрою mdraid. Але про це згадаємо ще трохи згодом.

Давайте поговоримо про те, що таке mdadm.

Mdadm – це спеціальна утиліта в операційній системі Linux, головним призначенням якої є створення та управління RAID масивами. Тобто, головним завданням mdamd є забезпечення надмірності, яка у свою чергу означає збереження даних у разі виходу з ладу одного або декількох дисків (залежно від вибраного типу RAID). Фактично mdadm звертається до дисків і розподіляє дані між ними фізично, не маючи абсолютно ніякого відношення до логічної розмітки дисків. Весь RAID масив, зібраний з кількох дисків, відображається в операційній системі як окремий накопичувач, з яким можна робити ті ж маніпуляції, що і зі звичайним диском.

Порівняння RAID LVM та RAID mdadm

Як згадувалося вище, створити програмний RAID за допомогою технології LVM цілком можливо (наприклад, LVM RAID 0 або LVM RAID 5).

LVM RAID означає спеціальний метод збору LV розділу, при використанні якого для керування LV розділами використовується драйвер DM (Device Mapper), а для розподілу інформації між дисками застосовується драйвер MD.

LVM RAIDможна також створити, обминаючи драйвер MD, проте в цьому випадку сильно постраждає продуктивність такого масиву. Крім того, якщо щось трапиться з будь-яким із дисків, його заміна та відновлення даних буде дуже складним.

Тепер поговоримо про мінуси такого рішення

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

По-друге, при роботі з LVM важливо знати, які файлові системи варто використовувати (тобто які з них можуть масштабуватися, а які ні). Від правильності вибору файлової системи залежить додавання нових дисків у разі потреби.

Словом, LVMдосить складний у супроводі і вимагає від користувача глибоких знань операційної системи.

Не можна не згадати, що операційна система Windows та Mac OS не підтримує роботу з LVM.

Ще один мінус LVMз’являється під час використання на SSD накопичувачах. Щоб зрозуміти в чому суть, розглянемо принцип роботи LVM.

Вся інформація в LVM розбивається на екстенти (такі блоки інформації), які записуються на диск. Мінімальний розмір екстенту становить 4 МБ. Існує чимало алгоритмів запису екстентів на диски. Як приклад розглянемо найпростіший – лінійний, оскільки на його прикладі найлегше зрозуміти, як функціонує LVM.

При використанні лінійного алгоритму всі екстенти записуються на диски по порядку. Якщо для запису екстентів файлу не вистачає місця на диску, вони починають по порядку записуватися на другий і т.д.

Тобто фізично файл може знаходитися на кількох дисках одночасно, а підсистема LVM пам’ятає порядок екстентів і завдяки цьому знає, в якому порядку їх читати, щоб відкрити потрібний файл. Схематично це можна відобразити так:

Принцип роботи lvm (Лінійний спосіб відображення екстентів)

Однак, у цьому і є недолік LVM: через те, що всі екстенти записуються послідовно, запис на наступний SSD диск розпочнеться тільки після того, як перший буде повністю заповнений. А як відомо, повністю заповнювати SSD накопичувачі не рекомендується, оскільки в цьому випадку сильно деградує продуктивність та погіршується робота збирача сміття (іншими словами, падає швидкість роботи та зменшується термін служби диска).

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

Уся справа в тому, що для того, щоб розширити наш том, доведеться використовувати число дисків, кратне тому, яке вже використовується. Тобто якщо ми використовували 3 шт, то додати ми можемо 3, 6, 9 і т.д. дисків.

Але найголовніше, що при додаванні нової групи дисків чергування буде проводитися не між усіма дисками одночасно, а всередині кожної групи дисків.

Принцип роботи RAID lvm (Лінійний спосіб відображення екстентів)

Виходить, що запис на нову групу дисків розпочнеться лише тоді, коли буде заповнено перший. Звідси висновок, що перша група дисків працюватиме під підвищеним навантаженням.

Mdadmбез проблем може вирішити вищеописану проблему, оскільки нові її версії дозволяють додавати нові диски в RAID 0 масив, після чого запис на них чергуватиметься з раніше встановленими дисками, знижуючи навантаження та рівень зносу для SSD накопичувачів.

Фактично mdadm – це високофункціональна утиліта, яка додає підтримку RAID масивів в ОС Linux на рівні ядра (саме тому LVM використовує драйвер MD для роботи з дисками фізично) .

Крім того, для mdadm існує графічна оболонка під назвою «Webmin», а значить користувач може створити програмний RAID масив практично будь-якого типу всього у кілька кліків (в тому числі і RAID 10, 50, 60), не використовувати купи команд (фактично не вимагаючи особливих знань операційної системи). Про те, як це зробити, ви можете прочитати у статті «Як створити програмний RAID?»

Варто також відзначити, що RAID масиви, створені за допомогою утиліти mdadm мають найбільш високу продуктивність, тому що в них відсутні «посередники» у вигляді додаткових драйверів і утиліт для передачі команд дисків. Це ж є причиною швидшої заміни диска, що вийшов з ладу, ніж у LVM RAID, тому що відпадає необхідність проведення додаткових маніпуляцій з LVM підсистемою.

Тому ми рекомендуємо використовувати mdadm для створення програмного RAID масиву, оскільки він буде як швидшим, так і надійнішим.

Сумуючи все вищесказане, робимо висновок:

Плюси LVM:

  • гнучкий розподіл дискового простору;
  • динамічне додавання дисків (без зупинки роботи сервера);

Недоліки LVM:

  • складність адміністрування (потрібна знати велику кількість команд та утиліт);
  • дуже складна заміна дисків у RAID масиві;
  • масиви, створені за допомогою LVM, будуть повільнішими;
  • небажано використовувати на SSD накопичувачах;
  • необхідно знати, які файлові системи можна використовувати, а які небажано;
  • багато операційних систем не підтримує LVM;

Плюси mdadm:

  • максимально швидкі RAID масиви;
  • динамічне додавання дисків до RAID масиву (використання hot spare дисків);
  • швидка і легка заміна дисків, що вийшли з ладу;
  • легкість адміністрування (завдяки графічній оболонці Webmin);

Недоліки mdadm:

  • користувач не може гнучко розподіляти дисковий простір (фактично обмежений обсягом дисків та типом RAID, який використовується);

На підставі цього ви можете вибрати, яка технологія краще підходить для ваших потреб. Але що робити, якщо хочеться отримати і надійність RAID масивів, і гнучкість томів LVMодночасно?

Відповідь на це питання є, і вона детально описана в наступному пункті цієї статті.

Чи можна використовувати mdadm та LVM одночасно?

Ми вже згадували, що найкраще створювати RAID масиви за допомогою утиліти mdadm. Однак, якщо окрім надійності хочеться отримати гнучкість створення томів, можна використовувати LVM поверх RAID масиву. Тобто спочатку створюється RAID масив потрібного типу (наприклад, RAID 5), а потім за допомогою LVM створюються кілька логічних дисків.

Таке рішення забезпечить надійність і швидкість роботи, плюс дозволить розділити дисковий простір так, як вам заманеться. Крім того, якщо раптом необхідно буде додати новий диск до системи, ви зможете це зробити за допомогою mdadm.

Принцип роботи RAID lvm

Недоліком такого рішення є необхідність знання великої кількості команд, щоб нормально працювати з томами LVM, оскільки хоч ви і зможете створити RAID масив в кілька кліків за допомогою Webmin, LVM залишиться таким же складним в адмініструванні і з цим нічого не поробиш.

Важливо: якщо ви вирішили використовувати RAID разом з LVM, то спочатку створюйте RAID масив і на його основі – LVM тома. Якщо зробите навпаки, отримаєте дуже складний в управлінні масив, який, до того ж, буде не надто швидким. А у разі поломки будь-якого з дисків його заміна буде дуже складною.

Як відновити втрачені дані?

Незважаючи на застосування різних технологій типу RAID масивів, гарантувати безпеку даних на 100% не може ніхто. І якщо використання RAID масивів дозволяє кілька підвищити рівень збереження даних, то різного роду надбудови типу LVM можуть замість додавання нового функціоналу стати причиною втрати важливих даних. Крім того, незважаючи на те, що LVM пропонує деяку подобу RAID масивів, ця технологія є менш надійною, ніж всім звичний mdadm RAID.

Але навіть ця технологія не може дати 100% гарантії, що ви не втратите інформацію, адже є ще поломки контролера, та й випадкове видалення даних або випадкове форматування масиву ніхто не виключав.

Тому користувач повинен знати, що робити, якщо він з якоїсь причини втратить цінну інформацію. У такій ситуації слід одразу використовувати професійний RAID реконструктор, який зможе забезпечити успішне відновлення даних RAID масиву.

Ми пропонуємо використовувати RS RAID Retrieve – найкраще рішення для відбудови зламаного RAID масиву та подальшого відновлення загубленої інформації.

Програма проста та зручна у використанні і підтримує практично всі конфігурації RAID масивів (включаючи гібридні) та LVM. Крім того, RS RAID Retrieve підтримує ВСІ сучасні файлові системи, а також NAS сховища. Крім того, вона дозволяє відновлювати дані з RAID масивів, незалежно від того, в якій операційній системі вони працювали – Windows, Linux, MacOS або Solaris.

Просто підключіть всі диски масиву до працюючого комп’ютера та виконайте ряд простих дій:

Крок 1: Завантажте та встановіть RS RAID Retrieve. Запустіть програму після встановлення.

RS Raid Retrieve

RS Raid Retrieve

Автоматичне відновлення усіх типів RAID масивів

Перед вами відкриється вбудований “RAID конструктор“. Натисніть “Далі

RAID конструктор

Крок 2: Виберіть тип додавання RAID масиву для сканування. RS RAID Retrieve пропонує три варіанти:

  • Автоматичний режим – дозволяє просто вказати диски, з яких складався масив, і програма автоматично визначить їхній порядок, тип масиву та інші параметри;
  • Пошук виробника – цю опцію слід вибрати, якщо вам відомий виробник вашого RAID контролера. Ця опція також автоматична і не вимагає будь-яких знань про структуру масиву RAID. Наявність даних про виробника дозволяє скоротити час на побудову масиву, відповідно вона швидше за попередню;
  • Створення вручну – цю опцію варто використовувати, якщо ви знаєте який тип RAID масиву ви використовуєте. У цьому випадку ви можете вказати всі параметри, які ви знаєте, а ті, яких ви не знаєте, програма визначить автоматично.

Після того, як виберете потрібний варіант – натисніть “Далі

Тип додавання RAID масиву

Крок 3: Виберіть диски, з яких складався RAID масив і натисніть “Далі“. Після цього розпочнеться процес виявлення конфігурацій масиву. Після завершення натисніть “Готово

Процес сканування RAID масиву на наявність файлів для відновлення

Крок 4: Після того, як конструктор збере масив, він буде відображатися як звичайний накопичувач. Двічі клацніть на ньому. Перед вами відкриється Майстер відновлення файлів. Натисніть “Далі

Майстер відновлення файлів

Крок 5: RS RAID Retrieve запропонує просканувати ваш масив на наявність файлів для відновлення. Вам буде доступно дві опції: швидке сканування та повний аналіз масиву. Виберіть потрібний варіант. Потім вкажіть тип файлової системи, яка використовувалася у вашому масиві. Якщо ця інформація вам не відома – відзначте галочкою всі доступні варіанти як на скріншоті. RS RAID Retrieve підтримує ВСІ сучасні файлові системи.

Коли все налаштовано – натисніть “Далі

Вікно вибору типу сканування та файлової системи

Крок 6: Розпочнеться процес сканування масиву. Коли він закінчиться, ви побачите колишню структуру файлів і папок. Знайдіть необхідні файли, клацніть правою кнопкою миші і виберіть “Відновити

Вибір файлів для відновлення

Крок 7: Вкажіть місце, куди будуть записані відновлені файли. Це може бути жорсткий диск, ZIP-архів або FTP-сервер. Натисніть “Далі

Вікно вибору місця для запису відновлених файлів

Після натискання кнопки “Далі” програма почне процес відновлення. Коли він завершиться, вибрані файли будуть у вказаному місці.

Після того, як усі файли успішно відновлені, створіть заново ваш RAID масив, а потім скопіюйте файли назад.

Як бачите, процес відновлення даних з масивів RAID досить простий і не вимагає глибоких знань ПК, відповідно RS RAID Retrieve є чудовим додатком як для професіоналів, так і для користувачів-початківців.

Поширені запитання

LVM це підсистема Linux, абстрактний шар між фізичними дисками і логічними томами, який дозволяє об'єднувати і використовувати різні області одного або декількох дисків як один логічний том.
Так. Можна. Це дозволить реалізувати надійність RAID масивів та гнучкість LVM одночасно.
Так. Зможе. RS RAID Retrieve розроблено саме для таких випадків.
Ми рекомендуємо використовувати mdadm RAID. Такий масив буде і надійнішим, і швидшим в роботі. Детальніше читайте на нашому сайті.
Однозначно RAID LVM, оскільки він простіший в адмініструванні і в ньому легше зробити заміну зламаного накопичувача.
Залишити коментар

Схожі публікації

Відновлення даних із SSD дисків
Відновлення даних із SSD дисків
У статті під назвою « Як SSD-накопичувачі стирають дані» ми розповідали, чому твердотілі накопичувачі безперервно «зачищають» вільний простір, практично миттєво стираючи дані після швидкого форматування диска або видалення розділу. Звучить страшно, чи не так? Проте не завжди все так погано, … Continue reading
Відновлення даних з RAID Synology NAS DS415+
Відновлення даних з RAID Synology NAS DS415+
Використання RAID-масивів у пристроях NAS не виключає збої та втрату даних. Наприклад, ви можете зіткнутися з ситуацією, коли дані на вашому Synology NAS були пошкоджені, видалені або вийшов з ладу жорсткий диск. У таких випадках важливо оперативно відновити дані з … Continue reading
Як відновити дані з масиву RAID-Z у TrueNAS
Як відновити дані з масиву RAID-Z у TrueNAS
Спеціалізована операційна система TrueNAS являє собою одне з кращих рішень по управлянню саморобними NAS-сховищами. Але в неї є свої нюанси – процес відновлення даних зі сховища, що базується на TrueNAS, може бути ускладнений. Не всі програми для відновлення даних працюють … Continue reading
Порівняння 8 програм для відновлення даних (2023)
Порівняння 8 програм для відновлення даних (2023)
Втрата даних може трапитися несподівано та призвести до паніки. На щастя, є потужне програмне забезпечення для відновлення даних, яке допоможе відновити цінні файли. У цьому огляді ми розглянемо RS Partition Recovery, Recuva, EaseUS Data Recovery Wizard, Stellar Data Recovery, Disk … Continue reading
Online Chat with Recovery Software