Виртуальный диск виртуальной машины представляет собой образ жёсткого диска. Виртуальные диски хранятся на локальном или сетевом устройстве — хранилище. Сетевое LVM-хранилище представляет собой аналог обычного LVM, но физический том, на котором находится группа томов, является сетевым устройством. В статье описан алгоритм настройки сетевого LVM-хранилища. Подробнее о сетевых хранилищах см. в статье Сетевые хранилища.

Особенности функционирования


При создании виртуальной машины на узле кластера, на том же узле создаётся виртуальный диск, который становится доступным сразу на всех узлах кластера, причём активным он является только на одном.

При миграции виртуальной машины, виртуальный диск не копируется, а только активизируется на узле-приемнике. На узле-источнике виртуальный диск деактивируется.

Пример настройки с помощью open-iscsi


Настройка сетевого хранилища

  1. Установите iSCSI:

    # yum install scsi-target-utils
    BASH
  2. Настройте lvm:

    # pvcreate /dev/sda2
      Physical volume "/dev/sda2" successfully created
    # vgcreate vg0 /dev/sda2
      Volume group "vg0" successfully created
    BASH
  3. Настройте файл конфигурации 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
  4. Перезапустите tgtd:

    # service tgtd restart
      Stopping SCSI target daemon: [ OK ]
      Starting SCSI target daemon: [ OK ]
    BASH
  5. При необходимости добавьте правила 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.