Como posso dizer ao Linux para ignorar partições de disco já descobertas?

1

Estou executando o libvirt com o QEMU / KVM e tenho imagens de disco para as VMs nos volumes lógicos do LVM. Naturalmente, muitas das VMs convidadas também usam o LVM para seus discos.

Eu executei partprobe no meu hipervisor e detectei todas as partições guest da VM, então agora as ferramentas LVM ( pvs , vgs , lvs , etc.) listam todas as entidades LVM do convidado com o host.

Existe uma maneira de remover todos esses volumes físicos de LVM do conhecimento do host (sem afetar os convidados, é claro)? A reinicialização do host não é uma opção; várias dessas VMs precisam continuar em execução.

Caso isso ajude, veja como as camadas do LVM se parecem, mais ou menos:

/dev/sdb1 - host PV
  |
vg_hostname_vms - host VG
  |
  +-lv_vm1 - host LV, used as a disk image for vm1
  |   +-part1 - vm1 boot partition
  |   +-part2 - vm1 PV
  |       |
  |     vg_vm1 - vm1 VG
  |       +-lv_root - vm1 LV - /
  |       +-lv_swap - vm1 LV - swap
  |
  +-lv_vm2 - host LV, used as a disk image for vm2
      +-part1 - vm1 boot partition
      +-part2 - vm2 PV
          |
        vg_vm2
          +-lv_root - vm2 LV - /
          +-lv_swap - vm2 LV - swap
          +-lv_home - vm2 LV - /home

Agora, quando eu executo vgs , aqui está o que eu vejo:

VG              #PV #LV #SN Attr   VSize  VFree
vg_hostname_vms   1   2   0 wz--n- 10.91t 9.53t
vg_vm1            1   2   0 wz--n-  9.76g    0
vg_vm2            1   3   0 wz--n- 97.16g    0

Eu só quero ver os grupos de volumes do host (e apenas seus volumes físicos e lógicos).

Estou executando tudo isso em um host do Scientific Linux 6.5. Os sistemas operacionais convidados variam.

    
por asciiphil 23.10.2014 / 17:28

2 respostas

1

Você pode se livrar dos PVs convidados com o comando dmsetup de baixo nível.

Para remover o dispositivo associado à partição 2 na imagem de disco da vm1, execute:

dmsetup remove /dev/mapper/vg_hostname_vms-lv_vm1p2

Isso fará com que o PV, VG e LVs da vm1 desapareçam das ferramentas LVM do host.

    
por 23.10.2014 / 17:39
3

Você deve configurar um filtro LVM no host para filtrar os dispositivos LVM indesejados detectados. Aqui está um link para a documentação oficial:

link

algo como filter = [ "r|/dev/VM_related_VG/*|" ] deve funcionar

    
por 25.10.2014 / 18:40