Отображение состояния программного RAID
Чтобы сделать это, просто используйте эту команду:
cat /proc/mdstat
Если RAID не активен, вывод будет следующим:
Personalities : [raid1]
unused devices: <none>
Вот вывод для настроенного RAID1:
Personalities : [raid1]
md2 : active raid1 sda3[2] sdb3[1]
234405504 блоков super 1.2 [2/2] [UU]
bitmap: 0/2 страниц [0KB], 65536KB chunk
md1 : active raid1 sda2[2] sdb2[1]
523712 блоков super 1.2 [2/2] [UU]
md0 : active raid1 sda1[2] sdb1[1]
33521664 блоков super 1.2 [2/2] [UU]
unused devices: <none>
Вот вывод для настроенного RAID0 (Всегда нужно настроить раздел /boot
как RAID1, чтобы сервер мог загружаться с него):
Personalities : [raid1] [raid0]
md2 : active raid0 sda3[0] sdb3[1]
883956736 блоков super 1.2 512k chunks
md1 : active raid0 sda2[0] sdb2[1]
52393984 блоков super 1.2 512k chunks
md0 : active raid1 sda1[0] sdb1[1]
523264 блоков super 1.2 [2/2] [UU]
unused devices: <none>
Если под одним из разделов отображается индикатор выполнения, значит, в настоящее время выполняется пересинхронизация RAID:
md0 : active raid1 sdb1[0] sdc1[1]
2095040 блоков super 1.2 [2/2] [UU]
[====>................] resync = 32.7% (418656/2095040) finish=4.2min speed=131219K/sec
Добавление массива программного RAID
В нашем примере диски /dev/sda
и /dev/sdb
уже объединены в несколько массивов RAID1, которые содержат операционную систему:
cat /proc/mdstat
Personalities : [raid1]
md2 : active raid1 sda3[2] sdb3[1]
234405504 blocks super 1.2 [2/2] [UU]
bitmap: 0/2 pages [0KB], 65536KB chunk
md1 : active raid1 sda2[2] sdb2[1]
523712 blocks super 1.2 [2/2] [UU]
md0 : active raid1 sda1[2] sdb1[1]
33521664 blocks super 1.2 [2/2] [UU]
unused devices: <none>
Но у нас есть еще два диска (/dev/sdc
и /dev/sdd
), которые мы также хотим настроить для хранения данных с помощью массива RAID1. Поэтому сначала нам нужно добавить массив RAID:
mdadm --create --verbose /dev/md3 --level=1 --raid-devices=2 /dev/sdc /dev/sdd
Теперь конфигурация RAID должна выглядеть так:
cat /proc/mdstat
Personalities : [raid1]
md3 : active raid1 sdc1[0] sdd1[1]
2095040 blocks super 1.2 [2/2] [UU]
[====>................] resync = 32.7% (418656/2095040) finish=4.2min speed=131219K/sec
md2 : active raid1 sda3[2] sdb3[1]
234405504 blocks super 1.2 [2/2] [UU]
bitmap: 0/2 pages [0KB], 65536KB chunk
md1 : active raid1 sda2[2] sdb2[1]
523712 blocks super 1.2 [2/2] [UU]
md0 : active raid1 sda1[2] sdb1[1]
33521664 blocks super 1.2 [2/2] [UU]
unused devices: <none>
Теперь мы можем отформатировать новый раздел (здесь с EXT4) и смонтировать их:
mkfs.ext4 /dev/md3
mount /dev/md3 /mnt
Уведомление по электронной почте при отказе диска в программном RAID
Требование: Сначала установите и настройте почтовый сервер на свой выбор (например, Sendmail).
Debian/Ubuntu/CentOS
Измените файл /etc/mdadm/mdadm.conf
или /etc/mdadm.conf
(в CentOS) и измените следующую строку:
MAILADDR moc.e1728047934lpmax1728047934e@ulo1728047934h1728047934
Здесь можно непосредственно указать адрес назначения. Или вы можете перенаправить все письма, отправленные пользователю root, на определенный адрес электронной почты, используя /etc/aliases
.
Также можно опционально настроить отправляющий адрес электронной почты:
MAILFROM moc.e1728047934lpmax1728047934e@mda1728047934dm1728047934
Для Debian и Ubuntu важно установить AUTOCHECK
в файле /etc/default/mdadm
в значение true
:
# grep AUTOCHECK= /etc/default/mdadm
AUTOCHECK=true
Для CentOS необходимо включить проверку RAID в файле /etc/sysconfig/raid-check
:
# grep ENABLED /etc/sysconfig/raid-check
ENABLED=yes
openSUSE
Отредактируйте файл /etc/sysconfig/mdadm
и добавьте адрес электронной почты, на который вы хотите получать уведомления, рядом с переменной MDADM_MAIL
:
MDADM_MAIL="moc.e1728047934lpmax1728047934e@ulo1728047934h1728047934"
Проверка конфигурации
Вы можете проверить свою конфигурацию, позволив команде mdadm
отправить тестовое письмо на адрес электронной почты с помощью этой команды:
mdadm --monitor --test --oneshot /dev/md0
Также убедитесь, что файл /etc/cron.daily/mdadm
содержит следующую строку, которая выполняет ежедневное мониторинг вашего RAID:
exec --monitor --scan --oneshot
Удаление программного RAID
Чтобы удалить программный RAID, можно использовать следующие команды.
mdadm --remove /dev/md0
mdadm --remove /dev/md1
mdadm --remove /dev/md2
mdadm --stop /dev/md0
mdadm --stop /dev/md1
mdadm --stop /dev/md2
После этого можно снова отформатировать диски обычным образом (например, с помощью EXT4):
mkfs.ext4 /dev/sda
mkfs.ext4 /dev/sdb
Результат можно проверить с помощью команд…
cat /proc/mdstat
…и…
fdisk -l
Теперь следует удалить программный RAID.