Назад | Перейти на главную страницу

Совместное использование тома ocfs2 между hostOS и виртуальной машиной с помощью KVM в Ubuntu

Я пытаюсь настроить ocfs2 на Ubuntu Oneiric Server (ядро 3.0). Я делюсь LV из VG на хосте. HostOS - это Ubuntu Lucid (также на ядре 3.0).

Я могу поделиться разделом ocfs2 на тонком диске между двумя KVM. Я не могу разделить раздел между hostOS и виртуальной машиной, хотя.

Я могу смонтировать раздел нормально только на hostOS, но как только я пытаюсь смонтировать раздел на одном из KVM, я получаю:

(o2hb-A72309E287,1395,1):o2hb_check_last_timestamp:576 ERROR: Another node is heartbeating on device (dm-4): expected(2:0xb88208e59655bc4f, 0x4f2d4275), ondisk(0:0x0, 0x0)
[22085.518632] ocfs2: Unmounting device (252,4) on (node 2)

в системном журнале.

Тома определены в xml-файлах виртуальной машины как:

<disk type='block' device='disk'>
  <driver name='qemu' type='raw'/>
  <source dev='/dev/datastore/test'/>
  <target dev='vda' bus='virtio'/>
  <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
</disk>

А пул хранения определяется как:

<pool type="logical">
   <name>datastore</name>
   <target>
     <path>/dev/datastore</path>
   </target> 
</pool>

Я создал узел устройства для раздела на этом LV с помощью:

kpartx -av /dev/datastore/test

Который создал / dev / mapper / datastore-test1, который я затем пытаюсь смонтировать.

Принципиально невозможно разделить том ocfs2 между виртуальной машиной KVM и hostOS или я что-то делаю не так?

Я отвечу на свой вопрос, если кто-нибудь придет сюда с такой же проблемой:

Все мои настройки ocfs2 и виртуальной машины были в порядке. Проблема заключалась в том, что я сразу сделал том ocfs2 в / dev / vda (в виртуальной машине).

Проблема в том, что виртуальная машина видит физический раздел с разделом ocfs2, но hostOS видит том LVM с разделом ocfs2.

Решение состоит в том, чтобы сделать pv из / dev / vda в виртуальной машине, а затем создать VG и LV поверх этого. Затем отформатируйте LV как ocfs2.

Этот вложенный VG виден в hostOS и может быть установлен.

Итак, макет VG:

 vg:datastore   
  --lv:test
    --vg:vmtest
      --lv:vmvolume

как на hostOS, так и на виртуальной машине том можно смонтировать как / dev / vmtest / vmvolume