Июн 232011
 

Решил реализовать на файл помойке пользователей зеркалирование данных .
Выбор пал на софторый рэйд, так как начальство не хотелось раскошеливаться на аппаратный ред контролер.
На нынешний помойке стоял 320Г , нашел такой же диск и с таким же объемом.
Я думаю будет достаточно такого объема , для хранения пользовательских данных.
FreeBSD установлена на первый жесткий диск, определяемый системой как ad0. для утилиты gmirror это устройство будет целевым.
Приступим.
На время необходимо сменить уровень обработки (debug) модуля GEOM:

# sysctl kern.geom.debugflags=16

Так теперь разметим диск источник

gmirror label -v -b round-robin gm0 /dev/ad0
Metadata value stored on /dev/ad0.
Done.

#Здесь gmirror label создает зеркалируемый массив; -v включает подробный вывод;
#-b round-robin задает тип балансировки; gm0 — имя создаваемого массива.
#В случае, если выдаст ошибку

Инициализируйте GEOM, это повлечет за собой загрузку модуля ядра geom_mirror.ko:

# gmirror load

Теперь будет создано устройство gm0 в каталоге /dev/mirror
Далее отредактируем файл /boot/loader.conf и разрешим загрузку нужного нам модуля GEOM при старте системы.

# echo 'geom_mirror_load="YES"' >> /boot/loader.conf

Время подошло к редактированию /etc/fstab

# cat /etc/fstab
/dev/ad0s1b             none            swap    sw              0       0
/dev/ad0s1a             /               ufs     rw              1       1
/dev/ad0s1g             /mnt/share              ufs     rw              2       2
.......

меняем на:

# cat /etc/fstab
/dev/mirror/gm0s1b             none            swap    sw              0       0
/dev/mirror/gm0s1a             /               ufs     rw              1       1
/dev/mirror/gm0s1g             /mnt/share              ufs     rw              2       2
.......

Перезагрузим систему.
# shutdown -r now
Смотрим лог старта системы, и видим такие строки

GEOM_MIRROR: Device gm0 created (id=657765149).
GEOM_MIRROR: Device gm0: provider ad0 detected.
GEOM_MIRROR: Device gm0: provider ad0 activated.
GEOM_MIRROR: Device gm0: provider mirror/gm0 launched.
GEOM_MIRROR: Device gm0 already configured.
Mounting root from ufs:/dev/mirror/gm0s1a

После перезагрузки переходим к следующему этапу настройки, добавляем второй диск в наш новый RAID 1 – /dev/ad5. Выполняем следующие команду :

# gmirror insert gm0 /dev/ad1

Теперь наступает процесс синхронизации этих дисков.
Посмотрим процесс синхронизации.

# gmirror list
# gmirror status
Name    Status  Components
mirror/gm0  DEGRADED  ad0
ad1 (45%)

В конце синхронизации в системный лог появиться сообщение такого характера.

GEOM_MIRROR: Device gm0: rebuilding provider ad1 finished.
GEOM_MIRROR: Device gm0: provider ad1 activated.

Вот и все. дожидаемся синхронизации.
Теперь можно посмотреть статус массива.

# gmirror status
Name    Status  Components
mirror/gm0  COMPLETE  ad0
                      ad1

На последок.
Вот допустим , что нам нужно вынуть один из винтов.делаем мы так.

# gmirror forget gm0
# gmirror insert gm0 /dev/ad1

 Leave a Reply

(required)

(required)

35 Запросов к базе. 0,369 Генерации страницы, 36MB Использование памяти.
Вы зашли с IP: 54.225.16.10