Quando executei libguestfs-test-tool
uma VM ESXI, recebi alguns erros que parecem ser resolvidos quando uso a emulação de software.
A página de manual libguestfs
diz:
export LIBGUESTFS_BACKEND_SETTINGS=force_tcg
will force the direct and libvirt backends to use TCG (software emulation) instead of KVM (hardware accelerated virtualization).
Porém, nosso aplicativo possui muitos serviços (executados por usuários diferentes) que fazem uso de libguestfs
ferramentas, e é doloroso ter que definir essa variável de ambiente para cada script e serviço. Uma alternativa parece ser reconstruir a libguestfs
biblioteca force_tcg
integrada, mas preciso oferecer suporte a plataformas diferentes do ESXI.
Existe um local onde posso especificar esta configuração para forçar o tcg? Eu teria pensado que /etc/libguestfs-tools.conf
esse poderia ser o lugar, mas isso só permite que um read_only
atributo seja definido.
Responder1
É uma variável de ambiente; você pode simplesmente colocá-lo no ambiente de todos, por exemplo, em um script de shell /etc/profile.d
ou na Environment=
configuração das unidades systemd dos serviços.
É claro que, por motivos de desempenho, você poderia, em vez dissoativar a virtualização aninhada para esta VMem sua configuração ESXi. Isso permitiria que o KVM funcionasse dentro da VM e fornecesse melhor desempenho do que a emulação de software.
Responder2
Atualizar o kernel para a versão 4.16rc7 (não lançada no momento) parece resolver o problema. Para resumir, é um bug do VMWare que é discutido neste tópicohttps://www.redhat.com/archives/libguestfs/2018-March/msg00152.html.