Univention Bugzilla – Bug 21763
CDROM-/DVD ISO Images im laufenden Betrieb der VM austauschen
Last modified: 2011-09-14 10:56:42 CEST
Wunsch eines Premium-Partners nach dem Austausch von CDROM-/DVD ISO Images im laufenden Betrieb einer VM in UVMM. Das geht bei VMware.
Das sollten wir nur übernehmen, wenn der Aufwand überschaubar ist.
Wurde in der DVS-Schulung nachgefragt (Partner 00570).
Für KVM ist das jetzt umgesetzt: Bei Floppy- und CDROM-Laufwerken kann das Medium zur Laufzeit gewechselt bzw. entfernt werden. Auch kann direkt beim Anlegen ein leeres Laufwerk definiert werden. Bei Xen tut das nicht: > xend_post: error from xen daemon: (xend.err 'Device 832 not connected')" > File "/usr/lib/python2.5/site-packages/xen/xend/XendDomainInfo.py", line 1218, in device_configure Dafür gibt es einen neuen Bug. svn26236, univention-virtual-machine-manager-daemon_0.9.321-1.257.201108191819 ChangeLog: \item UVMM unterstützt nun bei KVM das Wechseln von CDROM und Floppy Dateien während eine Instanz läuft (\ucsBug{21763}).
Es wurde noch ein Bug beim Anlegen von Laufwerken korrigiert, wenn diese ein lokales-Device vom Host verwenden: Die Ausführung des Kommandos 'uvmm/domain/create' ist fehlgeschlagen: Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/univention/management/console/handlers/__init__.py", line 160, in execute func( object ) File "/usr/lib/python2.4/site-packages/univention/management/console/handlers/uvmm/__init__.py", line 1326, in uvmm_domain_create result = self.domain_wizard.action( object, ( node_uri, node_info ) ) File "/usr/lib/python2.4/site-packages/univention/management/console/handlers/uvmm/wizards.py", line 639, in action return umcd.IWizard.action( self, object ) File "/usr/lib/python2.4/site-packages/univention/management/console/dialog/wizard.py", line 212, in action return self.actions[ action ]( object ) File "/usr/lib/python2.4/site-packages/univention/management/console/handlers/uvmm/wizards.py", line 821, in finish self.drive_wizard.finish( object ) File "/usr/lib/python2.4/site-packages/univention/management/console/handlers/uvmm/wizards.py", line 522, in finish driver_type = object.options['driver-type'].lower() KeyError: 'driver-type' svn26379, univention-virtual-machine-manager-daemon_0.9.324-2.262.201108251346
Wenn man beim Anlegen einer neuen VM beim Hinzufügen einer Festplatte zuerst "Auswahl einer vorhandenen Abbild-Datei" auswählt, und dann "Zurück" und "Erstellen einer neuen Abbild-Datei" auswählt ist der vorgeschlagene Name für die neu zu erstellende Datei der Name des ersten vorhandenen Abbildes (Der angezeigt wurde im Schritt "Auswahl einer vorhandenen…"). Versucht man dann mit "Weiter" das Abbild zu erstellen, bekommt man eine Fehlermeldung, dass die Datei schon existiert.
Der DriveWizard wurde so überarbeitet, das man nun zwischen den verschiedenen Möglichkeiten "Neues Image", "Altes Image" und "Lokales Gerät" vor und zurück wechseln kann und das dabei die eingegebenen Namen bzw. ausgewählten Images/Gerätenamen erhalten bleiben. svn26469, univention-virtual-machine-manager-daemon_0.9.327-1.265.201108301039 ChangeLog: ±0
(In reply to comment #5) > Wenn man beim Anlegen einer neuen VM beim Hinzufügen einer Festplatte zuerst > "Auswahl einer vorhandenen Abbild-Datei" auswählt, und dann "Zurück" und > "Erstellen einer neuen Abbild-Datei" auswählt ist der vorgeschlagene Name für > die neu zu erstellende Datei der Name des ersten vorhandenen Abbildes (Der > angezeigt wurde im Schritt "Auswahl einer vorhandenen…"). > > Versucht man dann mit "Weiter" das Abbild zu erstellen, bekommt man eine > Fehlermeldung, dass die Datei schon existiert. (In reply to comment #6) > Der DriveWizard wurde so überarbeitet, das man nun zwischen den verschiedenen > Möglichkeiten "Neues Image", "Altes Image" und "Lokales Gerät" vor und zurück > wechseln kann und das dabei die eingegebenen Namen bzw. ausgewählten > Images/Gerätenamen erhalten bleiben. > > svn26469, univention-virtual-machine-manager-daemon_0.9.327-1.265.201108301039 > > ChangeLog: ±0 Das ist OK (Gerätenamen müssen auf jeden Fall angepasst werden und werden daher nicht gespeichert)
Test mit KVM: Wenn die CD eingebunden ist, wird das Abbild nicht gewechselt, in UVMM wird jedoch das neue Abbild angezeigt. Wenn ein Abbild eingebunden ist und versucht wird auf ein lokales Gerät zu wechseln, dieses jedoch kein Medium hat, erscheint eine Fehlermeldung (OK) Wenn man dann direkt danach wieder auf Medium wechseln klickt steht beim CDROM-Laufwerk "unbekannt", obwohl nichts geändert wurde.
svn9614: In libvirtd wurde ein Fehler bezüglich er Fehlererkennung beim Wechseln von Medien korrigiert. svn26494: Die Fehler werden nun auch im UMC-Modul (auf Englisch) angezeigt. Zudem sollte nun auch immer das korrekte aktuelle Image angezeigt werden. Bei einem leeren Laufwert steht dort als Größe nur "Unbekannt" und keine Pfadangabe. libvirt_0.8.7-1.93.201108302020 univention-virtual-machine-manager-daemon_0.9.327-2.266.201108302027 ChangeLog: ±
Dies funktioniert jetzt mit Floppy und ISO9660. Fehler werden gemeldet, keine Inkonsistenten Zustände im UVMM. Changelog OK
(Für Xen gibt es Bug #23394)
Bei der QA für Bug #22262 comment 2 wurde noch ein nicht im regulären Betrieb reproduzierbarer Bug beim Entfernen der VM inklusive aller Volumes (undefine(..., volumes=None)) korrigiert: Da Laufwerke ohne Medium kein <source>-Element haben, trat ein Traceback in der Funktion get_all_storage_volumes() auf; diese wird nur vom CLI und in DVS verwendet: 2011-08-31 17:44:23,574 - uvmmd.unix - ERROR - [1] Exception: Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/univention/uvmm/unix.py", line 150, in handle_command res = cmd(self, command) File "/usr/lib/python2.4/site-packages/univention/uvmm/commands.py", line 226, in DOMAIN_UNDEFINE node.domain_undefine(request.uri, request.domain, request.volumes) File "/usr/lib/python2.4/site-packages/univention/uvmm/node.py", line 1196, in domain_undefine volumes = get_all_storage_volumes(conn, dom,) File "/usr/lib/python2.4/site-packages/univention/uvmm/storage.py", line 232, in get_all_storage_volumes source = disk.getElementsByTagName('source')[0] IndexError: list index out of range Zum reproduzieren: 1. VM mit HD und leerem CD-ROM-Laufwerk anlegen 2. uvmm undefine "$URI" "$UUID" ALL ALL # ← funktioniert nur mit neuem CLI svn26542, univention-virtual-machine-manager-daemon_0.9.331-1.270.201108311741 ChangeLog: ±
UCS 2.4-3 wurde veröffentlicht. Sollte der hier beschriebene Bug mit einer neueren Version von UCS erneut auftreten, so sollte der Bug dupliziert werden: "Clone This Bug".