URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 86704
[ Назад ]

Исходное сообщение
"замена дисков в RAID1"

Отправлено Alcadrunk , 24-Сен-09 19:43 
Уважаемые форумчане.

столкнулся с проблемой и никак не получается выработать алгоритм для ее решения.
стоит сервер FreeBSD 6.2
на платформе intel SR1530 с мамкой S3200AHX
2 жестких диска (200Гб) собраны в RAID1 (Mirror)
стабильно вертится система и сервисы все пашут как часы.

хочу заменить жесткие диски на 2 по 1Тб. как ?

как это сделать в минимальные сроки ( сервер веб и почта )?!
я так понимаю, что можно воткнуться в соседние САТА-Дырки, собрать массив рядом с текущим.

как перенести данные, а потом какнидь увеличить объем разделов Фряхи?
да так, чтобы это все продолжало работать..

Спасибо зараннее. Жду помощи.




Содержание

Сообщения в этом обсуждении
"замена дисков в RAID1"
Отправлено sHaggY_caT , 24-Сен-09 20:18 
>[оверквотинг удален]
>
>как это сделать в минимальные сроки ( сервер веб и почта )?!
>
>я так понимаю, что можно воткнуться в соседние САТА-Дырки, собрать массив рядом
>с текущим.
>
>как перенести данные, а потом какнидь увеличить объем разделов Фряхи?
>да так, чтобы это все продолжало работать..
>
>Спасибо зараннее. Жду помощи.

Как собран gmirror? На слайсах? Покажите gmirror list, df -h, cat /etc/fstab
Я бы / (если он маленький) засунула в зеркало с одним из существующих винтов, слайсы под gmirror'ы для данных сделала бы заново, и перенесла данные rsync.
После синхронизации всего, чего нужно, и прописывания новых блочных устройств под данные в fstab, делаем короткий даунтайм сервисам, mount -a && mount /dev/mirror/olddata1 /mnt/tmp1; mount /dev/mirror/olddata2; ну и дорсинкать данные...


"замена дисков в RAID1"
Отправлено daloman , 26-Сен-09 17:05 
>[оверквотинг удален]
>>Спасибо зараннее. Жду помощи.
>
>Как собран gmirror? На слайсах? Покажите gmirror list, df -h, cat /etc/fstab
>
>Я бы / (если он маленький) засунула в зеркало с одним из
>существующих винтов, слайсы под gmirror'ы для данных сделала бы заново, и
>перенесла данные rsync.
>После синхронизации всего, чего нужно, и прописывания новых блочных устройств под данные
>в fstab, делаем короткий даунтайм сервисам, mount -a && mount /dev/mirror/olddata1
>/mnt/tmp1; mount /dev/mirror/olddata2; ну и дорсинкать данные...

В принципе, я переносил зеркало на диски большего размера с помощью dump/restore.

Идея в принципе, сводится к восстановлению системы на новом винте и построению массива заново.
Отключаем один из дисков, вместо него подсовываем новый.
Грузимся, соответственно с оставшегося от зеркала диска (/dev/daX, а не с /dev/mirror/gmX)

Создаем на новом диске слайсы, а затем, разделы необходимого размера с помощью команды bsdlabel.

Со старого винта записывал разметку в файл

#bsdlabel da0s1 > savedlabel

Затем, отредактировав его, указав необходимые размеры разделов, записываем информацию на новый винт
#bsdlabel -R da1s1 savedlabel

Естественно, размеры файловых систем на новом диске равнялись или были больше, чем на исходном диске.
Естественно, монтируем куда-нибудь и по схеме, описанной в хэндбуке, переносим все данные из разделов работающего винта на второй винт

[root@odin ~]# dump -L -0 -f- / |(cd /mnt && restore -r -v -f-)
[root@odin ~]# dump -L -0 -f- /tmp |(cd /mnt/tmp/ && restore -r -v -f-)
[root@odin ~]# dump -L -0 -f- /var |(cd /mnt/var/ && restore -r -v -f-)
[root@odin ~]# dump -L -0 -f- /usr |(cd /mnt/usr/ && restore -r -v -f-)

Не забываем править fstab.
Выключаем сервер, ставим второй новый диск, грузимся с первого нового диска и строим зеркало на новых двух винтах.

"замена дисков в RAID1"
Отправлено sHaggY_caT , 26-Сен-09 23:58 

>[оверквотинг удален]
>[root@odin ~]# dump -L -0 -f- /tmp |(cd /mnt/tmp/ && restore -r
>-v -f-)
>[root@odin ~]# dump -L -0 -f- /var |(cd /mnt/var/ && restore -r
>-v -f-)
>[root@odin ~]# dump -L -0 -f- /usr |(cd /mnt/usr/ && restore -r
>-v -f-)
>

>Не забываем править fstab.
>Выключаем сервер, ставим второй новый диск, грузимся с первого нового диска и
>строим зеркало на новых двух винтах.

Ага, да, dump/restore тоже вариант, и, возможно, более к месту, чем rsync


"замена дисков в RAID1"
Отправлено Alcadrunk , 28-Сен-09 11:13 
Спасибо за отзывчивость, тока у меня софтовый рейд собранный при помощи atacontrol
2 винта ad4 и ad6 образуют массив ar0

Ваш вариант прокатит в этом случае????

Спасибо.


"замена дисков в RAID1"
Отправлено daloman , 28-Сен-09 11:52 
>Спасибо за отзывчивость, тока у меня софтовый рейд собранный при помощи atacontrol
>
>2 винта ad4 и ad6 образуют массив ar0
>
>Ваш вариант прокатит в этом случае????
>
>Спасибо.

Я думаю, никаких сложностей не должно возникнуть. Схема действий точно такая же.

Конечно, можно по-разному извратиться, например, использовать сторонний носитель, для переноса файловых систем, но потратите больше времени.

Попробуйте обкатать последовательность действий на виртуалке - я так и делал, когда переносил боевой сервер на диски большего объема.


"замена дисков в RAID1"
Отправлено Alcadrunk , 09-Окт-09 19:51 
>[оверквотинг удален]
>[root@odin ~]# dump -L -0 -f- /tmp |(cd /mnt/tmp/ && restore -r
>-v -f-)
>[root@odin ~]# dump -L -0 -f- /var |(cd /mnt/var/ && restore -r
>-v -f-)
>[root@odin ~]# dump -L -0 -f- /usr |(cd /mnt/usr/ && restore -r
>-v -f-)
>
>Не забываем править fstab.
>Выключаем сервер, ставим второй новый диск, грузимся с первого нового диска и
>строим зеркало на новых двух винтах.

Спасибо. Делаю все как посоветовали, только как не бился, при попытке запуска на новом массиве - трабла :

can't load 'kernel'
новый массив:
ar0s1a - 4 гб
ar0s1b (swap) 4gb
ar0s1d -(usr) 1340Gb
ar0s1e -(var) 30Gb
че делать, ума не приложу.

получается он загрузчик грузит на хард, а вот ядро найти не может, при том, что оно там есть и папка /boot вся как на старом.


"замена дисков в RAID1"
Отправлено daloman , 09-Окт-09 21:25 

>[оверквотинг удален]
>новый массив:
>ar0s1a - 4 гб
>ar0s1b (swap) 4gb
>ar0s1d -(usr) 1340Gb
>ar0s1e -(var) 30Gb
>че делать, ума не приложу.
>
>получается он загрузчик грузит на хард, а вот ядро найти не может,
>при том, что оно там есть и папка /boot вся как
>на старом.

Это Вы уже собрали новое зеркало?

Если да, то использовали опять atacontrol? Надо посмотреть доки. Для gmirror такое сообщение могло бы означать следующее: не загружен модуль geom_mirror.ko

Что у вас в /boot.config