Система будет развернута на debian wheezy, на данный момент стабильный.
Версии пакетов: ocfs2-tools:1.6.4, drbd8-utils:8.3.13
Устанавливаем пакеты:
apt-get install ocfs2-tools drbd8-utils
Версии пакетов: ocfs2-tools:1.6.4, drbd8-utils:8.3.13
Устанавливаем пакеты:
apt-get install ocfs2-tools drbd8-utils
Создание DRBD устройства
В обоих нодах требуется чтобы была одинаковая разметка диска. Для создания сетевого хранилища был выбран раздел с размером 200 гб. Можно разбить диск на 2 части - один для метаданных и другой блочное устройство. Но мы обойдемся без этого (будем хранить метаданные и данные на одном диске).oxygen1# gdisk -l /dev/md0
GPT fdisk (gdisk) version 0.8.5
Disk /dev/md0: 1464784000 sectors, 698.5 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 3BE3DE93-D88B-4BFA-A324-36D66AB2ED8E
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 1464783966
Partitions will be aligned on 2048-sector boundaries
Total free space is 1045353533 sectors (498.5 GiB)
Number Start (sector) End (sector) Size Code Name
1 2048 419432447 200.0 GiB 8300 Linux filesystem
В файле /etc/drbd.conf удалите первую строчку. Далее Создаем конфиг для drbd:
#vim /etc/drbd.d/r0.res
global {
usage-count yes;
}
common {
syncer {
rate 40m;
al-extents 320;
}
}
resource r0{
protocol c;
startup{
wfc-timeout 20;
degr-wfc-timeout 10;
become-primary-on both;
}
disk {
on-io-error detach;
}
net{
cram-hmac-alg sha1;
shared-secret "secret";
allow-two-primaries;
after-sb-0pri discard-zero-changes;
after-sb-1pri violently-as0p;
after-sb-2pri violently-as0p;
max-buffers 2048;
}
on oxygen {
device /dev/drbd1;
disk /dev/md0p1;
address 10.3.1.4:7789;
meta-disk internal;
}
on oxygen2 {
device /dev/drbd1;
disk /dev/sdb1;
address 10.3.1.5:7789;
meta-disk internal;
}
}
Желательно почистить заголовки дисков:
dd if=/dev/zero of=/dev/md0p1 bs=1M count=20
Прописываем хосты:
vim /etc/hosts
10.3.1.4 oxygen
10.3.1.5 oxygen2
Проверяем включен ли модуль ядра drbd. если нет то подключаем.
lsmod | grep drbd
modprobe drbd
Первая инициализация:
drbd create-md r0 # r0 название нашего ресурса
drbd up r0
Смортим статус нашего диска:
watch cat /proc/drbd
Должен показать что то типа:
0: cs:WFConnection ro:Secondary/Unknown
Это значит что второй диск еще не подключен. Идем на вторую ноду и повторяем все действия. Настройки drbd должны быть одинаковыми, так что лучше закинуть r0.res через scp.
Только на основном ноде выолняем:
drbdadm -- --overwrite-data-of-peer primary netdisk
После выполнения этой команды начинается полная синхронизация дисков.
теперь на обоих нодах выполняем:
drbdadm primary r0
watch "cat /proc/drbd"
1: cs:SyncSource ro:Primary/Primary ds:UpToDate/Inconsistent C r-----
ns:71352888 nr:0 dw:0 dr:76727332 al:0 bm:4676 lo:0 pe:281 ua:122 ap:0 ep:1 wo:f oos:133021916
[======>.............] synced: 35.0% (129904/199564)Mfinish: 0:59:06 speed: 37,484 (38,064) K/sec
При возникновении проблем с синхронизацией:
на основной ноде: drbdadm connect r0
на второй ноде: drbdadm -- --discard-my-data connect all
Комментариев нет:
Отправить комментарий