Como alterar o pool de armazenamento padrão da libvirt?

12

Estou tentando usar um pool de armazenamento diferente no KVM para armazenar os discos virtuais das minhas VMs e também os ISOs dos sistemas operacionais que estou usando.

Por exemplo: eu quero usar o diretório /media/work/kvmque está montado sobre /dev/sda5, como o Pool de Armazenamento padrão para todas as situações futuras

Para configurar, criar e iniciar um novo pool de armazenamento, é muito fácil, mas pelo menos no Ubuntu, não importa se estou selecionando e ISO de um pool de armazenamento diferente, o Virtual Machine Manager sempre me aponta para o armazenamento padrão Pool ( /var/cache/libvirt) como o armazenamento em que os discos virtuais das minhas VMs serão criados.

Como posso evitar isso?

ivanleoncz
fonte

Respostas:

26

Antes de seguir as etapas, verifique se você está executando esses comandos como usuário normal e se o seu usuário pertence ao grupo "libvirtd".

Aqui estão os seguintes comandos que eu usei:

Listando os pools atuais:

$ virsh pool-list

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

Destruindo a piscina:

$ virsh pool-destroy default
Pool default destroyed

Indefinir piscina:

$ virsh pool-undefine default
Pool default has been undefined

Definindo um novo pool com o nome "padrão":

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

Defina o pool a ser iniciado quando o daemon libvirt for iniciado:

$ virsh pool-autostart default
Pool default marked as autostarted

Iniciar pool:

$ virsh pool-start default
Pool default started

Verificando o estado do pool:

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

A partir de agora, ao criar máquinas virtuais, o Virtual Machine Manager informará que o arquivo * .img (disco virtual da sua VM) será salvo em / media / work / kvm.

ivanleoncz
fonte
3

Além da resposta acima, mostrando como fazer isso na linha de comando, você também pode alterar isso diretamente do virt-manager. Na janela principal do virt-manager, vá para o menu 'Editar -> Detalhes do host'. Na caixa de diálogo exibida, alterne para a guia 'Armazenamento'. Agora você pode excluir o pool de armazenamento 'padrão' e criar um novo pool para substituí-lo.

DanielB
fonte
Eu não sei por quê, Daniel, mas eu tentei esta solução antes, e, infelizmente, não funcionou aqui no Virtual Machine Manager (Ubuntu Trusty Tahr - 14,04) ...
ivanleoncz
2

Se você quiser apenas alterar o caminho da imagem, também pode editar o caminho de armazenamento no defaultpool executando:

$ virsh pool-edit default

O comando acima abrirá o defaultpool xml em um editor (vim / nano), agora:

  1. edite o caminho
  2. salve as alterações e
  3. reiniciar o libvirtserviço
Junaid
fonte