Ich habe KVM auf Ubuntu Oneiric Server 64 AMD installiert.
uname -a
Linux myhostname 3.0.0-12-server #20-Ubuntu SMP Fri Oct 7 16:36:30 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux
Ich habe versucht, einen Gast mit demselben Betriebssystem zu erstellen. Zuerst habe ich das versucht:
vmbuilder kvm ubuntu \
--suite oneiric --flavour virtual --arch amd64 \
--libvirt qemu:///system \
--ip 192.168.0.100 \
--hostname myguest \
--part vmbuilder.partition \
--user adminUser --name fullname--pass defaultPass \
--addpkg apache2 --addpkg apache2-utils --addpkg tomcat6 --addpkg mysql-client \
--addpkg mysql-server --addpkg wwwconfig-common --addpkg dbconfig-common \
--addpkg apache2.2-common --addpkg unattended-upgrades --addpkg vim \
--addpkg openssh-server \
--mem 2048 \
--bridge br0
(dafür musste ich die serielle Konsole übrigens separat konfigurieren)
Dann das:
virt-install \
--connect qemu:///system -n myguest -r 2048 -f myguest.qcow2 \
-s 12 -c ubuntu-11.10-server-amd64.iso --vnc --noautoconsole --os-type linux \
--os-variant ubuntuOneiric --accelerate --network=network:default
In beiden Fällen wird der Gast erfolgreich generiert. Dann versuche ich den Gast zu starten:
virsh start myguest
virst list --all
Id Name State
----------------------------------
4 myguest running
Als nächstes versuche ich, eine Verbindung zur Konsole herzustellen:
virsh --connect qemu:///system console myguest
Connected to domain myguest
Escape character is ^]
Danach passiert nichts mehr. Das Verhalten ist für beide Gäste gleich. Ich habe auch versucht, eine Remoteverbindung herzustellen.
In einigen Fällen steigt KVM dann auf 100% CPU-Auslastung. Im Moment wird keine CPU verwendet.
Bei der Remoteverbindung war die Konsolenausgabe etwas interessanter:
Booting from Harddisk
Und sonst nichts. Ich kann auch nicht anrufen virsh shutdown myhost
, ich kann nur den destroy
Befehl verwenden.
Kann jemand auf Fehler hinweisen, die ich wahrscheinlich gemacht habe?
dpkg --list | grep qemu
ii qemu-common 0.14.1+noroms-0ubuntu6.2
ii qemu-keymaps 0.15.50-2011.08-0ubuntu4
ii qemu-kvm 0.14.1+noroms-0ubuntu6.2
ii qemu-kvm-extras 0.15.50-2011.08-0ubuntu4
ii qemu-system 0.15.50-2011.08-0ubuntu4
ii qemu-user 0.15.50-2011.08-0ubuntu4
ii python-vm-builder 0.12.4+bzr469-0ubuntu1
ii libvirt-bin 0.9.2-4ubuntu15.2
ii libvirt0 0.9.2-4ubuntu15.2
ii python-libvirt 0.9.2-4ubuntu15.2
ii virtinst 0.600.0-1ubuntu1
Die einzige Protokollausgabe, die ich sehe, /var/log/libvirt/libvirt.log
erfolgt, wenn ich den Gast zerstöre und zuvor versucht habe, eine Verbindung zur Konsole herzustellen:
11:49:28.072: 1441: error : qemuMonitorIO:576 : internal error End of file from monitor
quelle
Antworten:
Um eine Verbindung zur seriellen Konsole herzustellen, muss der Gast diese zuerst unterstützen. Dies bedeutet, dass der Gast
console=ttyS0
an die Kernel-Startzeile in grub.conf angehängt haben muss . Dies bedeutet auch, dass die libvirt-Konfiguration für die VM Folgendes enthalten sollte:quelle
Wie in den Kommentaren vorgeschlagen, habe ich dieses Problem mit einem Workaround gelöst, indem ich ein weiteres Tool zum Erstellen der Gäste verwendet habe. Dies ist ein Grafiktool namens Virtual Machine Manager, mit dem ich eine Remoteverbindung zu meinem kvm herstellen und einen Gast aus einem ISO-Image erstellen konnte, das ich auf dem Server platziert hatte.
Ich weiß, dass es keine echte Lösung ist, aber ich werde die anderen Optionen nicht verfolgen, da ich einen Weg gefunden habe, Gäste zu schaffen.
quelle
Ich hatte ein ähnliches Problem auf einem Ubuntu 12.04-Host:
virsh start testguest
-> Konsole über VNC sagt mir "Booten von der Festplatte"/var/log/libvirt/libvirtd.log
zeigte mir:Es scheint, dass der VM-Builder einige Energieverwaltungstools benötigte.
auf dem Host löste dieses Problem für mich.
quelle
libvirtd.log
die darauf hinweist, dass die Grundursache unterschiedlich ist. Wenn Sie ein Problem gelöst haben, für das hier keine Frage gestellt wird, können Sie Ihre eigene Frage stellen und beantworten.