Программный RAID5 на Linux.
Сегодня будем изучать основы создания и восстановления программного раида 5го уровня (RAID5) в Linux openSuSe 11.1.
Сегодня мы просто создадим raid5 из 3х дисков (испытания проходят на виртуальной машине поэтому оперируем дисками по 1ГБ).
Сначала нужно подготовить диски для зеркала. Для этого мы создадим на них по одному разделу, занимающему весь диск. Если диски не одинаковые, то разделы должны быть одинакового размера - равного наименьшему разделу.
Оставшееся место можно использовать под обычные разделы.
Для создания раздела воспользуемся стандартной утилитой fdisk.
Посмотрим сначала какие диски у нас есть и какие не заняты. Это можно понять изучив вывод команды: fdisk -l, которая покажет все диски в системе.
Для создания раздела на диске /sdb запустите выполните :
# fdisk /dev/sdb
далее нажимаем n (новый раздел), p (примари раздел), 1 - первый, и два раза enter, чтобы выделить весь диск под раздел.
Далее нам нужно поставить тип нашего раздела в Linux Raid auto. Для этого нажимаем t и указываем тип fd, далее enter, сохраняем конфигурацию клавишей w и выходим нажав клавишу q.
То же самое проделываем с остальными двумя дисками.
Далее собираем раид:
mdadm –create –verbose /dev/md0 –level=5 –raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1
mdadm: array /dev/md/0 started.
Смотрим детали созданного нами устройства:
# mdadm –detail /dev/md0
/dev/md0:
Version : 0.90
Creation Time : Thu Jan 28 11:25:29 2010
Raid Level : raid5
Array Size : 2088192 (2039.59 MiB 2138.31 MB)
Used Dev Size : 1044096 (1019.80 MiB 1069.15 MB)
Raid Devices : 3
Total Devices : 3
Preferred Minor : 0
Persistence : Superblock is persistent
Update Time : Thu Jan 28 13:24:47 2010
State : clean
Active Devices : 3
Working Devices : 3
Failed Devices : 0
Spare Devices : 0
Layout : left-symmetric
Chunk Size : 64K
UUID : e8375a4e:c6134e88:812de9a9:23180db0 (local to host linux-f9ij)
Events : 0.8
Number Major Minor RaidDevice State
0 8 17 0 active sync /dev/sdb1
1 8 33 1 active sync /dev/sdc1
2 8 49 2 active sync /dev/sdd1
Тут нам понадобится UUID: e8375a4e:c6134e88:812de9a9:23180db0
Устройство создано, но для того чтобы оно автоматически собиралось - надо создать файл конфигурации который будет читаться init
процессом при загрузке.
Создаем /etc/mdadm.conf
Пишем туда следующие строчки.
DEVICE partitions
ARRAY /dev/md0 level=raid5 UUID=e8375a4e:c6134e88:812de9a9:23180db0
Теперь можно форматировать созданый метадиск.
# mkfs -t ext3 /dev/md0
И монтируем его в куда нить.
Создаем точку монтирования:
mkdir /raid5
Добавляем строчку в /etc/fstab
/dev/md0 /raid5 ext3 acl,user_xattr 0 0
Теперь при загрузке наше устройство будет собираться и монитроваться в /raid5.
Перегружаемся для проверки и радуемся что все работает.
Все это, кстати, можно проделать в yast-е :). Но мне интересно это сделать ручками.
В следующий раз я расскажу как заменить вышедший из строя диск в нашем рейде.