Виртуальный диск виртуальной машины представляет собой образ жёсткого диска. Виртуальные диски хранятся на локальном или сетевом устройстве — хранилище. Сетевое LVM-хранилище представляет собой аналог обычного LVM, но физический том, на котором находится группа томов, является сетевым устройством. В статье описан алгоритм настройки сетевого LVM-хранилища. Подробнее о сетевых хранилищах см. в статье Сетевые хранилища.
Особенности функционирования
При создании виртуальной машины на узле кластера, на том же узле создаётся виртуальный диск, который становится доступным сразу на всех узлах кластера, причём активным он является только на одном.
При миграции виртуальной машины, виртуальный диск не копируется, а только активизируется на узле-приемнике. На узле-источнике виртуальный диск деактивируется.
Пример настройки с помощью open-iscsi
Настройка сетевого хранилища
Установите iSCSI:
# yum install scsi-target-utils
BASH
Настройте lvm:
# pvcreate /dev/sda2
Physical volume "/dev/sda2" successfully created
# vgcreate vg0 /dev/sda2
Volume group "vg0" successfully created
BASH
Настройте файл конфигурации tgtd:
# cat /etc/tgt/targets.conf
...
<target iqn.2014-04.net.ispsystem.nlvm:storage.nlvm>
backing-store /dev/sda2
initiator-address 10.1.1.1 #IP-адрес узла кластера
initiator-address 10.1.1.2
initiator-address 10.1.1.3
</target>
...
BASH
Перезапустите tgtd:
# service tgtd restart
Stopping SCSI target daemon: [ OK ]
Starting SCSI target daemon: [ OK ]
BASH
При необходимости добавьте правила iptables:
iptables -I INPUT 1 -p tcp --dport 3260 -j ACCEPT
service iptables save
BASH
Подключение к узлам кластера
На каждом узле кластера необходимо выполнить подключение диска:
iscsiadm -m discovery -t st -p 10.1.2.1
iscsiadm -m node --login -p 10.1.2.1
BASH
После этого можно добавлять в VMmanager хранилище типа "сетевой LVM" с именем vg0.