Яка різниця між створенням mdadm масиву за допомогою безпосередньо розділів або цілих дисків


26

Може хтось, будь ласка, пояснить мені, яка різниця між створенням mdadmмасиву за допомогою розділів або цілих дисків безпосередньо? Припустимо, я маю намір використовувати цілі накопичувачі. Зауважте, що вони з GPT.

Уявіть, що RAID6 створений двома способами:

mdadm --create /dev/md0 --level=6 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1

або:

mdadm --create /dev/md0 --level=6 --raid-devices=4 /dev/sda /dev/sdb /dev/sdc /dev/sdd

Чи є різниця?

EDIT1: Я маю на увазі, наприклад, надійність або керованість або операції відновлення таких масивів тощо.

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

EDIT3: Рішення відмови від відповідальності: Поки я завжди розбиваю диски.


2
Мені завжди було цікаво з цього приводу, але ніколи нікого не питали. Я бачу одну різницю, використовуючи розділені диски (sda1 тощо), ви отримуєте трохи менше місця на диску (деякі КБ), оскільки GPT залишає простір для інформації про розділи.
GMaster

Відповіді:


25

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

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

Найважливіші аргументи:

Диски різних виробників (або навіть різні моделі "однакової" ємності від одного виробника) не обов'язково мають точно той же розмір диска, і навіть найменша різниця в розмірах, не дозволять замінити невдалий диск на новий якщо друга менша, ніж перша. Розбиття дозволяє розділити це;

Побічна примітка про те, навіщо використовувати диски різних виробників: Диски вийдуть з ладу, це не питання "якщо", а "коли". Диски одного і того ж виробника і тієї ж моделі мають схожі властивості, і, таким чином, більш високі шанси вийти з ладу за тих же умов і часу використання. Пропозиція полягає в тому, щоб використовувати диски різних виробників, різних моделей і, зокрема, які не належать до однієї партії (розгляньте купівлю в різних магазинах, якщо ви купуєте диски одного виробника та моделі). Це не рідкість, коли під час резотре після заміни диска виникає збій другого диска, коли використовуються диски тієї ж партії. Ви точно не хочете, щоб це сталося з вами.

Тож рекомендації:

1) Розділіть диски, які будуть використовуватися з дещо меншою ємністю, ніж загальний об'єм диска (наприклад, у мене є масив RAID5 з 2 ТБ дисками, і я навмисно розподіляв їх, витрачаючи близько 100 МБ на кожен). Тоді використовуйте / dev / sd? 1 кожного з них для складання масиву - це додасть запас безпеки у випадку, якщо новий замінюючий диск має менше місця, ніж оригінальний, який використовується для збирання масиву під час його створення;

2) використовувати диски різних виробників;

3) використовуйте диски різних моделей, якщо різні виробники не є для вас варіантом;

4) використовувати диски з різних партій;

5) Активно замінюйте диски перед тим, як вони виходять з ладу, і не всі одночасно. Це може бути трохи параноїком і насправді залежить від критичності ваших даних. У мене є диски, які мають 6-місячну різницю у віці один від одного;

6) Робіть регулярні резервні копії (завжди, незалежно від того, використовуєте ви масив чи ні). Raid не відповідає тій самій цілі резервного копіювання. Масиви гарантують високу доступність, резервні копії дозволяють відновити втрачені файли (включаючи ті, які випадково видаляються або пошкоджуються вірусами, деякі приклади того, що використання масивів не захистить вас).

ЗАБЕЗПЕЧЕННЯ: За винятком усіх нехтуючих раціональних даних вище, не існує набагато подальших технічних відмінностей між використанням / dev / sd? vs / dev / sd? #.

Удачі


Це здебільшого не пов’язано ...
користувач1133275

Однак, я думаю, попередження @Kalavan стосується використання декількох розділів на одному диску як компоненти масиву. Це, звичайно, не має особливого сенсу, оскільки це усуває надмірність. Однак ми знаємо, що це не було наміром вашого питання, його попередження має сенс.
Марсело

Якщо керувати розділами вручну, здається, неприємно, варто скористатися sfdisk -d src | sfdisk tgtабоsgdisk --backup && sgdisk --load-backup
andyn

7

Ще один важливий аргумент - це те, що деякі материнські плати можуть видалити ваші суперблоки RAID, якщо ви використовуєте цілі дискові пристрої і не надто обережні з їх витиранням при додаванні дисків до масиву RAID, які колись були пристроями GPT.

Я навчився цьому важко, коли UEFI моєї плати ASRock зробив мій RAID непридатним:

Щоб захистити себе від цього, завжди запускайте sgdisk --zapдиск, який раніше був у форматі GPT, який ви хочете використовувати для RAID цілого пристрою.

wipefs -a також може стерти всі види інформації про розділи залишилися (не тільки GPT) перед додаванням пристрою на диск.


Однак, використання перегородок виглядає як найкраща практика, щоб зробити так, що це мало ймовірно .

Я ніколи не знав, які справжні аргументи для цієї найкращої практики (крім відповіді @ Марсело, яка пояснює, що вона може мати справу з дисками дещо іншого розміру). Тепер я знаю.

До речі, якщо це трапиться з вами, ваші дані не втрачаються. Ви, швидше за все, можете просто sgdisk --zapвстановити пристрій, а потім відтворити RAID за допомогою, наприклад mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdc /dev/sdd(mdadm скаже вам, що він вже виявляє минулі дані, і запитає, чи хочете ви продовжувати повторно використовувати ці дані). Я пробував цей мулілі разів, і він спрацював, але все ж рекомендую зробити резервну копію, перш ніж це зробити.


2

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

Таким чином, при створенні RAID з допомогою всього пристрою (скажімо, /dev/sda, /dev/sdb, ... , а не на /dev/sda1, /dev/sdb1...) НАБЕГ пристрій не збирає після перезавантаження , навіть якщо у вас є конфігурація зберігається під mdadm.conf. Існує також можливість перезапису прошивки материнської плати або видалення суперблоку RAID. У моєму налаштуванні запуск mdadm --assemble --scan --verboseне повертає мене до налаштування RAID, і, здається, випадок суперблоку RAID недоступний.


Я протестував налаштування RAID1, використовуючи диски 2x10GB всередині VirtualBox. RAID був створений на всьому пристрої, і він перебирає штрафи після перезавантаження. Проблема може бути застосована лише до фізичних пристроїв.
Lungten

0

Щоб вберегти себе від майбутніх головних болів, використовуйте перегородки. Усі диски виходять з ладу, це не питання "якщо", а "коли". Якщо ви використовуєте цілі накопичувачі, то після відмови диска ви повинні замінити його точно такою ж моделлю розміру. Навіть на декілька МБ більших розмірів через різні виробники чи зміни в процесі роботи, це призведе до відмови заміни накопичувача.

Використовуючи розділи, коли один із ваших поточних накопичувачів 2 ТБ виходить з ладу, ви отримуєте заміну 4 ТБ (або що завгодно, просто потрібно бути більшим), а потім створіть на ньому той самий розмір розділу 2 ТБ. Так, ви можете витрачати багато місця на новому великому диску. Використання решти цього диска в якості нерозбіжної частини може бути можливим, але може вплинути на продуктивність дивними способами. Після декількох помилок і замін накопичувача, ви з часом заміните всі свої оригінальні накопичувачі 2 ТБ, а тепер отримаєте можливість розширити свій масив RAID для використання великих розмірів розділів.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.