Red Hat Training
A Red Hat training course is available for RHEL 8
11.2.2.9. Criação e atribuição de volumes de armazenamento usando o CLI
Para obter uma imagem de disco e anexá-la a uma máquina virtual (VM) como disco virtual, criar um volume de armazenamento e atribuir sua configuração XML a uma VM.
Pré-requisitos
Uma piscina de armazenamento com espaço não alocado está presente no anfitrião. Para verificar, liste os pools de armazenamento no host:
# virsh pool-list --details Name State Autostart Persistent Capacity Allocation Available -------------------------------------------------------------------------------------------- default running yes yes 48.97 GiB 36.34 GiB 12.63 GiB Downloads running yes yes 175.92 GiB 121.20 GiB 54.72 GiB VM-disks running yes yes 175.92 GiB 121.20 GiB 54.72 GiB
Procedimento
Crie um volume de armazenamento usando o comando
virsh vol-create-as
. Por exemplo, para criar um volume de 20 GB qcow2 com base no pool de armazenamentoguest-images-fs
:# virsh vol-create-as --pool guest-images-fs --name vm-disk1 --capacity 20 --format qcow2
Important: Tipos específicos de pool de armazenamento não suportam o comando
virsh vol-create-as
e, em vez disso, requerem processos específicos para criar volumes de armazenamento:-
GlusterFS-based - Use o comando
qemu-img
para criar volumes de armazenamento. - iSCSI-based - Prepare os iSCSI LUNs com antecedência no servidor iSCSI.
-
Multipath-based - Use o comando
multipathd
para preparar ou administrar o multipath. - vHBA-based - Prepare o cartão do canal de fibra com antecedência.
-
GlusterFS-based - Use o comando
Criar um arquivo XML, e adicionar as seguintes linhas nele. Este arquivo será usado para adicionar o volume de armazenamento como um disco a uma VM.
<disk type='volume' device='disk'> <driver name='qemu' type='qcow2'/> <source pool='guest-images-fs' volume='vm-disk1'/> <target dev='hdk' bus='ide'/> </disk>
Este exemplo especifica um disco virtual que utiliza o volume
vm-disk1
, criado na etapa anterior, e define o volume a ser configurado como discohdk
em um ônibuside
. Modifique os respectivos parâmetros conforme apropriado para seu ambiente.Important: Com tipos específicos de pool de armazenamento, você deve usar diferentes formatos XML para descrever um disco de volume de armazenamento.
Para GlusterFS-based pools:
<disk type='network' device='disk'> <driver name='qemu' type='raw'/> <source protocol='gluster' name='Volume1/Image'> <host name='example.org' port='6000'/> </source> <target dev='vda' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </disk>
Para multipath-based pools:
<disk type='block' device='disk'> <driver name='qemu' type='raw'/> <source dev='/dev/mapper/mpatha' /> <target dev='sda' bus='scsi'/> </disk>
Para RBD-based storage pools:
<disk type='network' device='disk'> <driver name='qemu' type='raw'/> <source protocol='rbd' name='pool/image'> <host name='mon1.example.org' port='6321'/> </source> <target dev='vdc' bus='virtio'/> </disk>
Use o arquivo XML para atribuir o volume de armazenamento como um disco a uma VM. Por exemplo, para atribuir um disco definido em
~/vm-disk1.xml
para a VMtestguest1
:# attach-device --config testguest1 ~/vm-disk1.xml
Verificação
- No sistema operacional convidado da VM, confirme que a imagem do disco ficou disponível como um disco não formatado e não alocado.