Я начал учиться создавать хороший стек виртуализации с помощью libvirt. Я создал группу томов LVM, которая представляет блок устройства, состоящий из Linux RAID. Моя идея - предоставить логический том каждой виртуальной машине, но один человек предложил мне вместо этого использовать пулы хранения, например
<pool type='logical'>
<name>VG_foo</name>
<uuid>foo</uuid>
<capacity unit='bytes'>0</capacity>
<allocation unit='bytes'>0</allocation>
<available unit='bytes'>0</available>
<source>
<device path='/dev/md2'/>
<name>vg_foo</name>
<format type='lvm2'/>
</source>
<target>
<path>/dev/vg_foo</path>
<permissions>
<mode>0755</mode>
<owner>-1</owner>
<group>-1</group>
</permissions>
</target>
</pool>
я прочитал документация по хранилищу libvirt но я не понял разницы
Эффект у обоих одинаков, но в одном случае вы делаете все вручную, а в другом случае libvirt может сделать все за вас.
После определения пула хранения libvirt может создавать тома в этом пуле и управлять ими. Без определенного пула хранения вы должны вручную создавать тома и управлять ими вне libvirt.
Обратите внимание, что блочное устройство не должны быть частью пула хранения, чтобы виртуальная машина, управляемая libvirt, могла его использовать. Но если это не так, то вы должны справиться с этим самостоятельно.
Как уже было сказано выше, пул хранения - это, по сути, группа томов, а libvirt управляет созданными логическими томами.
В то время как вы должны вручную создать группу томов и вручную создать диски, а затем добавить их в виртуальную машину.
Просто добавьте пул хранения и создайте диск при создании виртуальной машины.