Mdadm: различия между версиями
Asy (обсуждение | вклад) |
|||
Строка 30: | Строка 30: | ||
==== Потом добавим второй ==== | ==== Потом добавим второй ==== | ||
mdadm /dev/md0 --add /dev/sda1 | mdadm /dev/md0 --add /dev/sda1 | ||
= Изменение hostname и рэйды v.1.2 = | |||
Грузимся с Live CD, режим восстановления (например с Server Light) | |||
Рэйды соберутся с именами md121,md122 и т.д. т.к. hostname = localhost and != <старому имени> | |||
Останавливаем все рэйды | |||
<pre> | |||
mdadm -S /dev/md121 | |||
mdadm -S /dev/md122 | |||
... | |||
</pre> | |||
меняем hostname | |||
<pre> | |||
hostname <старое имя> | |||
</pre> | |||
собираем рэйды | |||
<pre> | |||
mdadm -S --scan | |||
cat /proc/mdadm (смотрим, что все собралось) | |||
</pre> | |||
Подготавливаемся к переименованию | |||
<pre> | |||
echo "homehost <system>" >> /etc/mdadm.conf | |||
mdadm -D --scan >> /etc/mdadm.conf | |||
</pre> | |||
<pre> | |||
cat /etc/mdadm.conf | |||
MAILADDR root@localhost | |||
PROGRAM /sbin/mdadm-syslog-events | |||
DEVICE partitions | |||
HOMEHOST <system> | |||
ARRAY /dev/md1 metadata=1.2 name=<старое имя>:1 UUID=137c3ff2:9aefae7b:ee71cb74:442e0b4e | |||
ARRAY /dev/md2 metadata=1.2 name=<старое имя>:2 UUID=aa131b47:7493ade5:55b53715:6676cc2d | |||
</pre> | |||
Cобираем рэйды под новое имя сервера | |||
<pre> | |||
hostname <новое имя сервера> | |||
mdadm -S md1 | |||
mdadm --verbose -A /dev/md1 --update=homehost --scan | |||
mdadm -S md2 | |||
mdadm --verbose -A /dev/md2 --update=homehost --scan | |||
</pre> | |||
проверяем | |||
mdadm -D /dev/md1 | |||
должно содержать | |||
... | |||
Name : <новое имя сервера>:1 (local to host <новое имя сервера>) | |||
... | |||
Монтиируем систему и вносим изменения в initrd | |||
<pre> | |||
mount-system | |||
chroot /mnt/system1 | |||
</pre> | |||
Изменяем в /etc/sysconfig/network HOSTNAME=<новое имя сервера> | |||
<pre> | |||
echo "homehost <system>" >> /etc/mdadm.conf | |||
mdadm -D --scan >> /etc/mdadm.conf (и в нем удаляем старые ARRAY) | |||
make-initrd -k <версия ядра> (смотрим в ls -1 /lib/modules) | |||
</pre> | |||
P.S. если корень на raid v1.2 то | |||
<pre> | |||
apt-get install make-initrd-mdadm | |||
cat /etc/initrd.mk | |||
# trying to detect modules and features to access to root volume | |||
AUTODETECT = all | |||
FEATURES += mdadm | |||
</pre> |
Версия от 14:01, 15 апреля 2014
Примеры использования mdadm
Отсканнировать устройства и собрать массивы (после взлета с live CD)
mdadm -A --scan
Переименовать /dev/md127 в /dev/md0
mdadm --stop /dev/md127 mdadm -A /dev/md0 --update=super-minor /dev/sda1 /dev/adb1
Собрать массив в ручную
mdadm -A /dev/md1 /dev/sd{a,b}1
Остановить массив
mdadm /dev/md0 --stop
Заменить диск в массиве
mdadm /dev/md0 --fail /dev/sda1 mdadm /dev/md0 --remove /dev/sda1 mdadm /dev/md0 --add /dev/sda1
Собрать raid1 с одним диском
Иногда при миграции на raid1 бывает нужно.
mdadm -C --level=1 -e0.9 --raid-devices=2 /dev/sdb1 missing
Внимание: Если массив будет содержать /boot (в виде отдельной файловой системы, или в составе /), то версия метаданных должна быть 0.9.
Потом добавим второй
mdadm /dev/md0 --add /dev/sda1
Изменение hostname и рэйды v.1.2
Грузимся с Live CD, режим восстановления (например с Server Light) Рэйды соберутся с именами md121,md122 и т.д. т.к. hostname = localhost and != <старому имени> Останавливаем все рэйды
mdadm -S /dev/md121 mdadm -S /dev/md122 ...
меняем hostname
hostname <старое имя>
собираем рэйды
mdadm -S --scan cat /proc/mdadm (смотрим, что все собралось)
Подготавливаемся к переименованию
echo "homehost <system>" >> /etc/mdadm.conf mdadm -D --scan >> /etc/mdadm.conf
cat /etc/mdadm.conf MAILADDR root@localhost PROGRAM /sbin/mdadm-syslog-events DEVICE partitions HOMEHOST <system> ARRAY /dev/md1 metadata=1.2 name=<старое имя>:1 UUID=137c3ff2:9aefae7b:ee71cb74:442e0b4e ARRAY /dev/md2 metadata=1.2 name=<старое имя>:2 UUID=aa131b47:7493ade5:55b53715:6676cc2d
Cобираем рэйды под новое имя сервера
hostname <новое имя сервера> mdadm -S md1 mdadm --verbose -A /dev/md1 --update=homehost --scan mdadm -S md2 mdadm --verbose -A /dev/md2 --update=homehost --scan
проверяем
mdadm -D /dev/md1
должно содержать
... Name : <новое имя сервера>:1 (local to host <новое имя сервера>) ...
Монтиируем систему и вносим изменения в initrd
mount-system chroot /mnt/system1
Изменяем в /etc/sysconfig/network HOSTNAME=<новое имя сервера>
echo "homehost <system>" >> /etc/mdadm.conf mdadm -D --scan >> /etc/mdadm.conf (и в нем удаляем старые ARRAY) make-initrd -k <версия ядра> (смотрим в ls -1 /lib/modules)
P.S. если корень на raid v1.2 то
apt-get install make-initrd-mdadm cat /etc/initrd.mk # trying to detect modules and features to access to root volume AUTODETECT = all FEATURES += mdadm