User talk:Burbond
Proxmox VE 1.5 настройка DRBD
Исходные данные:
2 сервера Intel Xeon 5130 (2 процессора по 2 ядра);
4 Гб оперативной памяти в каждом;
По 2 SATA II диска 400 Гб;
По две сетевые карты (пара из которых завязана кроссом напрямую, другая через коммутатор);
Хосты виртуализации: node1.burbond.ru ip: 10.10.10.105, 192.168.10.105
node2.burbond.ru ip: 10.10.10.106, 192.168.10.106
Приступим непосредственно к настойке DRBD. При установке Proxmox VE 1.5 использовался первый диск /dev/sda. Файловая система по умолчанию имеет вид:
node1:~# df -h
Filesystem Size Mounted on
/dev/mapper/pve-root 92G /
/dev/mapper/pve-data 267G /var/lib/vz
/dev/sda1 504M /boot
Расдел boot, группа томов LVM pve и два логических тома LVM root для корневой файловой системы и data для хранилища виртульних машин.
Для настойки DRBD вначале настроим правильно сетевые интерфейсы:
node1:~# cat /etc/network/interfaces
- network interface settings
auto lo
iface lo inet loopback
iface eth2 inet manual
auto eth0
iface eth0 inet static
address 192.168.10.105
netmask 255.255.255.0
auto vmbr0
iface vmbr0 inet static
address 10.10.10.105
netmask 255.255.255.0
gateway 10.10.10.90
bridge_ports eth2
bridge_stp off
bridge_fd 0
node2:~# cat /etc/network/interfaces
- network interface settings
auto lo
iface lo inet loopback
iface eth2 inet manual
auto eth0
iface eth0 inet static
address 192.168.10.106
netmask 255.255.255.0
auto vmbr0
iface vmbr0 inet static
address 10.10.10.106
netmask 255.255.255.0
gateway 10.10.10.90
bridge_ports eth2
bridge_stp off
bridge_fd 0
Также если у Вас нет DNS сервера, необходимо прописать имена серверов в файле /etc/host строки:
192.168.10.105 node1.veza.net node1
192.168.10.106 node2.veza.net node2
Далее приступаем к настройке дисков:
Для DRBD будем использовать весь второй диск /dev/sdb, создадим на нем основной раздел /dev/sdb1 при помощи команды fdisk:
node1:~# fdisk /dev/sdb
The number of cylinders for this disk is set to 48641.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-48641, default 1): 1
Last cylinder or +size or +sizeM or +sizeK (1-48641, default 48641):
Using default value 48641
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): 8e
Changed system type of partition 1 to 8e (Linux LVM)
Command (m for help): p
Disk /dev/sdb: 400.0 GB, 400088457216 bytes
255 heads, 63 sectors/track, 48641 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00053bae
Device Boot Start End Blocks Id System
/dev/sdb1 1 48641 390708801 8e Linux LVM
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
node1:~#
Тоже делаем на втором сервере node2.
Конфигурация DRBD:
Для начала установим сам софт.
node1:~# apt-get install drbd8-utils
Подготовим файл конфигурации /etc/drbd.conf
node1:~# > /etc/drbd.conf – очистка файла;
node1:~# cat /etc/drbd.conf
global { usage-count no; }
common { syncer { rate 30M; } }
resource r0 {
protocol C;
startup {
wfc-timeout 15; # wfc-timeout can be dangerous (http://forum.proxmox.com/threads/3465-Is-it-safe-to-use-wfc-timeout-in-DRBD-configuration)
degr-wfc-timeout 60;
become-primary-on both;
}
net {
cram-hmac-alg sha1;
shared-secret "my-secret";
allow-two-primaries;
after-sb-0pri discard-zero-changes;
after-sb-1pri discard-secondary;
after-sb-2pri disconnect;
}
on node1 {
device /dev/drbd0;
disk /dev/sdb1;
address 192.168.10.105:7788;
meta-disk internal;
}
on node2 {
device /dev/drbd0;
disk /dev/sdb1;
address 192.168.10.106:7788;
meta-disk internal;
}
}
Далее запускаем DRBD на двух серверах:
node1:~# /etc/init.d/drbd start
Создаем и инициализируем устройство для мета-даных:
node1:~# drbdadm create-md r0
node1:~# drbdadm up r0
Проверим состояние:
node1:~# cat /proc/drbd
version: 8.3.4 (api:88/proto: :86-91)
GIT-hash: 70a645ae080411c87b4482a135847d69dc90a6a2 build by root@oahu, 2010-04-15 10:24:43
0: cs:Connected ro:Secondary/Secondary ds:Inconsistent/Inconsistent C r----
ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos: 193665964
Далее проводим инициализацию процедуры синхронизации:
node1:~# drbdadm -- --overwrite-data-of-peer primary r0
И наблюдаем за процессом синхронизации:
node1:~# watch cat /proc/drbd
После окончания синхронизации на серверах, останавливаем службу DRBD на них и снова стартуем ее:
node1:~# /etc/init.d/drbd stop
node1:~# /etc/init.d/drbd start
И смотрим состояние DRBD:
node1:~# cat /proc/drbd
version: 8.3.4 (api:88/proto:86-91)
GIT-hash: 70a645ae080411c87b4482a135847d69dc90a6a2 build by root@oahu, 2010-04-15 10:24:43
0: cs:Connected ro:Primary/Primary ds:UpToDate/UpToDate C r----
ns:0 nr:0 dw:0 dr:268 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0
Конфигурация LVM:
Для запуска устройства /dev/drbd0 в режиме Primary/Primary необходимо добавить исключение в список блокируемых устройств в файле /etc/lvm/lvm.conf:
- By default we accept every block device:
filter = [ "r|/dev/sdb1|", "r|/dev/disk/|", "r|/dev/block/|", "a/.*/" ]
Создаем физический том для LVM:
node1:~# pvcreate /dev/drbd0
Physical volume "/dev/drbd0" successfully created
node1:~#
Проверяем наличие физических томов LVM:
node1:~# pvscan
PV /dev/sda2 VG pve lvm2 [465.26 GB / 4.00 GB free]
PV /dev/drbd0 lvm2 [372.11 GB]
Total: 2 [744.22 GB] / in use: 1 [744.22 GB] / in no VG: 0 [0 ]
На одной node создаем группу томов:
node1:~# vgcreate drbdvg /dev/drbd0
Volume group "drbdvg" successfully created
node1:~#
Добавляем через веб интерфейс группу томов как хранилище. Вот и все. Наш макет готов к дальнейшей настройке. Источник