O QEMU / KVM + OCFS2 pode ser configurado para fazer furos em arquivos de imagem esparsos quando os arquivos são excluídos no guest?

2

Estou usando arquivos de imagem brutos esparsos para VMs convidadas e OCFS2 no host (somente local, não em cluster) para o recurso reflink . Eu entendo ao pesquisá-lo que o OCFS2 é um dos sistemas de arquivos que podem fazer furos em arquivos esparsos.

Se eu entendi corretamente, pode ser possível (e aparentemente pode ser alcançado com o XFS ) para combinar esse recurso com suporte a TRIM / discard nas máquinas convidadas para que, quando os arquivos no guest sejam excluídos, o espaço no host seja automaticamente recuperado. No entanto, apesar de muita experimentação, não consegui demonstrar isso funcionando.

Isso é possível, e se depender de versões do kernel e / ou do QEMU, quais são as versões mínimas que eu preciso? Também perdi alguma coisa com a configuração? Eu tenho:

  • montou o sistema de arquivos guest (ext4) com a opção discard em /etc/fstab
  • tentou a versão beta do Debian Wheezy para host e guest, e o CentOS 6.2 para host
  • tentei executar fstrim no convidado (recebo FITRIM ioctl failed: Operation not supported , mas não tenho 100% de certeza se isso é relevante)
  • tentou bus=ide e bus=virtio (com host do CentOS 6.2)
por Jack Douglas 05.11.2012 / 21:39

1 resposta

3

Você deve conseguir recuperar espaço usando dispositivos virtio-scsi e especificando discard = unmap na definição libvirt do disco.

Eu não tentei isso no CentOS / RHEL, mas consegui que isso funcionasse em versões posteriores do Fedora. Eu escrevi uma postagem no blog sobre isso .

Eu diria para tentar e ver se funciona.

    
por 25.07.2013 / 17:12