Eu tenho o host Ubuntu 12.04 LTS KVM com um convidado OpenBSD 5.4.
Estou tendo o problema de virsh shutdown
não funcionar/congelar convidado.
Depois de chamar o desligamento, o convidado congela e não responde. Todas as sessões ssh congelam e todos os consoles vnc não respondem. Nada nos logs do cliente no momento do congelamento.
A única solução é destruir o convidado em vish.
O problema parece semelhante a: http://comments.gmane.org/gmane.os.openbsd.misc/200982
Desligamento do host
- Do anfitrião:
$ sudo virsh list --all ... 15 ssh2 running ...
$ sudo virsh shutdown ssh2 Domain ssh2 is being shutdown
$ sudo virsh list --all ... 15 ssh2 running ...
- Depois de esperar 5 minutos, nenhuma alteração de status.
Desligamento do convidado
- Observando o log durante a solicitação de desligamento histórico:
sudo tail -F /var/log/messages
- Nenhum valor adicional registrado como resultado da solicitação de desligamento.
- Terminal (ssh) e console (via vnc) não respondem.
- Erros de terminal (ssh) eventualmente com
Write failed: Broken pipe
.
Detalhes do anfitrião
- Hospedar:
$ uname -a Linux kvm2 3.2.0-51-generic #77-Ubuntu SMP Wed Jul 24 20:18:19 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux $ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=12.04 DISTRIB_CODENAME=precise DISTRIB_DESCRIPTION="Ubuntu 12.04.2 LTS"
- Versão do host kvm:
$ virsh version Compiled against library: libvir 0.9.8 Using library: libvir 0.9.8 Using API: QEMU 0.9.8 Running hypervisor: QEMU 1.0.0
- Host kvm dominfo no convidado:
$ virsh dominfo ssh2 Id: - Name: ssh2 UUID: 7bb1977e-7268-f40a-32d4-5ae972be7e5f OS Type: hvm State: shut off CPU(s): 2 Max memory: 524288 kB Used memory: 524288 kB Persistent: yes Autostart: disable Managed save: no Security model: apparmor Security DOI: 0
Etapas de instalação de convidado
AMD64 install54.iso baixado: http://ftp.openbsd.org/pub/OpenBSD/5.4/amd64/install54.iso
Criar disco:
sudo qemu-img create -f qcow2 -o preallocation=metadata /vm/ssh2-disk0.qcow2 2G
- Execute virt-install:
sudo virt-install \ --name ssh2 \ --ram 512 \ --vcpus=1 \ --os-variant=openbsd4 \ --hvm \ --cdrom /vm/install/install54-amd64.iso \ --network bridge:br0,model=virtio \ --graphics vnc \ --disk path=/vm/ssh2-disk0.qcow2,bus=virtio,size=2
Nota: Usado br0 em vez de virbr0, pois o host usa br0.
Do kvm:
sudo virsh vncdisplay ssh2
- Na área de trabalho:
ssh -L 5910:127.0.0.1:5909 kvm2
Conecte-se via vnc ao localhost 5910 e continue a instalação.
Não instalei game54.tgz ou qualquer pacote x:
-game* -x*
Responder1
O Qemu faz suposições sobre ACPI que o OpenBSD não faz. Ao longo de várias versões do OpenBSD e do Qemu/KVM, descobri que a única maneira de encerrar efetivamente um convidado do OpenBSD é com
halt -p
no próprio convidado.
Responder2
Este é um problema comum com o OpenBSD como VM ao tentar desligar no KVM.
Resolvido por:
root@myhost:~# config -ef /bsd
disable mpbios
q
root@myhost:~# reboot