Как изменить пул хранения по умолчанию с libvirt?

12

Я пытаюсь использовать другой пул хранения в KVM для хранения виртуальных дисков моих виртуальных машин, а также ISO-файлов из операционных систем, которые я использую.

Например: я хочу использовать каталог, над /media/work/kvmкоторым смонтирован /dev/sda5, как пул хранения по умолчанию для всех будущих ситуаций

Настроить, создать и запустить новый пул хранения довольно просто, но, по крайней мере, в Ubuntu, не имеет значения, выбираю ли я и ISO из другого пула хранения, Virtual Machine Manager всегда указывает мне на хранилище по умолчанию Pool ( /var/cache/libvirt) как хранилище, где будут создаваться виртуальные диски из моих виртуальных машин.

Как я могу избежать этого?

ivanleoncz
источник

Ответы:

26

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

Вот следующие команды, которые я использовал:

Список текущих пулов:

$ virsh pool-list

Name                 State      Autostart 
-------------------------------------------
default              active     yes 

Уничтожающий бассейн:

$ virsh pool-destroy default
Pool default destroyed

Неопределенный бассейн:

$ virsh pool-undefine default
Pool default has been undefined

Определение нового пула с именем «default»:

$ virsh pool-define-as --name default --type dir --target /media/work/kvm
Pool default defined

Установите пул для запуска при запуске демонов libvirt:

$ virsh pool-autostart default
Pool default marked as autostarted

Начальный пул:

$ virsh pool-start default
Pool default started

Проверка состояния пула:

$ virsh pool-list
Name                 State      Autostart 
-------------------------------------------
default              active     yes  

Теперь при создании виртуальных машин диспетчер виртуальных машин сообщит вам, что файл * .img (виртуальный диск вашей виртуальной машины) будет сохранен в / media / work / kvm.

ivanleoncz
источник
3

Помимо ответа выше, показывающего, как это сделать из командной строки, вы также можете изменить это непосредственно в virt-manager. В главном окне virt-manager перейдите в меню «Правка -> Сведения о хосте». В появившемся диалоговом окне перейдите на вкладку «Хранилище». Теперь вы можете удалить пул хранения «по умолчанию» и создать новый пул хранения для его замены.

DanielB
источник
Я не знаю почему, Даниэль, но я пробовал это решение раньше, и, к сожалению, оно не сработало здесь в диспетчере виртуальных машин (Ubuntu Trusty Tahr - 14.04) ...
ivanleoncz
2

Если вы просто хотите изменить путь к изображению, вы также можете отредактировать путь к хранилищу в defaultпуле, выполнив:

$ virsh pool-edit default

Приведенная выше команда откроет defaultпул xml в редакторе (vim / nano), теперь:

  1. редактировать путь
  2. сохранить изменения и
  3. перезапустить libvirtслужбу
Junaid
источник