На даний момент у мене є розділ Btrfs з чотирма пристроями: три накопичувачі 3 ТБ та привід 4 ТБ. Дані та метадані - це RAID 10, тому у мене є 6 ТБ корисного простору, який майже заповнений. Я очікував, що підтримка RAID 5 у Btrfs буде зрілою до моменту заповнення мого сховища, але, мабуть, це не є пріоритетом.
Моє запитання: чи є причина віддати перевагу RAID 10 перед RAID 1 ? Я знаю, що справжній RAID 1 на моєму теперішньому апаратному забезпеченні повинен дати мені 3 ТБ корисного простору з 4 копіями кожного блоку, але Btrfs, мабуть, не так поводиться. З FAQ про Btrfs :
btrfs спочатку об'єднує всі пристрої в пул пам’яті, а потім дублює фрагменти під час створення файлових даних. RAID-1 визначається в даний час як "2 копії всіх даних на різних пристроях". Це відрізняється від MD-RAID та dmraid тим, що вони роблять рівно n копій для n пристроїв. У btrfs RAID-1 на трьох пристроях 1 ТБ ми отримуємо 1,5 ТБ корисних даних. Оскільки кожен блок копіюється лише на 2 пристрої, для запису даного блоку потрібно записати лише два пристрої; читання можна зробити лише з одного.
І від Єнса Ерата на переповнення стека :
Btrfs розподіляє дані (і його копії RAID 1) блокчейн, таким чином, дуже добре справляється з жорсткими дисками різного розміру. Ви отримаєте суму всіх жорстких дисків, розділених на два - і не потрібно думати, як з’єднати їх у подібні за розміром пари.
Якщо більше одного диска виходить з ладу, ви завжди загрожуєте втратою даних: RAID 1 не може впоратися із втратою двох дисків одночасно. У вашому прикладі, наведеному вище, якщо помиляються два неправильних диска, ви завжди втрачаєте дані.
Чи означає це, що перебалансування з RAID 10 на RAID 1 дасть мені додаткові 500 ГБ даних (6,5 ТБ, а не 6 ТБ) за рахунок 4 ТБ накопичувача? І чи є якась причина, щоб я дотримувався RAID 10?
scrub
і replace
підтримка була додана станом на 3,19, але люди все ще скаржилися на відсутність сповіщень про несправність пристроїв. У мене є крони, створені для щотижневих скрабів і щотижневих / щомісячних самотестових тестів SMART, тому я повинен мати можливість вирішити ці проблеми. Я спробую.
dev stats
, що може бути черговим завданням .