+++ This bug was initially created as a clone of Bug #19172 +++ Im ersten Schritt reicht es aus, wenn es pro Machine nur einen Snapshot gibt.
Für die Implementierung waren mehrere Anpassungen notwendig: 1. Neben Raw-Images können nun bei KVM auch Qcow2-Images angelegt werden. 2. Nur für virtuelle Instanzen, die ausschließlich nur-lese-Images und/oder Qcow2-Images (davon mindestens 1) verwenden, können Sicherungspunkte erstellt werden. Derzeit beliebig viele (bis die Image-Dateien voll sind). Xen unterstützt derzeit über libvirt keine Sicherungspunkte, deshalb nur KVM. svn21360+svn21366, univention-virtual-machine-manager-daemon_0.10.11-1.110.201012020810 ChangeLog: \item Für KVM-Instanzen lassen sich Sicherungspunkte anlegen, sofern diese neben CD-ROM-Images ausschließlich Festplatten-Images im Qcow2-Format verwenden (\ucsBug{19575}). Derzeit sind noch ein paar Punkte offen: 1. Beim Zurückrollen auf einen Sicherungspunkt erfolgt derzeit keine Nachfrage. 2. Beim Löschen von Sicherungspunkten erfolgt derzeit keine Nachfrage. 3. Es wurde nicht getestet, was passiert, wenn kein Platz mehr für weitere Sicherungspunkte vorhanden ist. 4. Standardmäßig wird nun das Qcow2-Format für KVM-Maschinen vorgeschlagen. Ein aktueller Performance-Vergleich gegenüber Sparse-RAW-Files fehlt hier <https://hutten.knut.univention.de/mediawiki/index.php/Copy_on_Write#Tests>
5. Ändert man die Konfiguration der VM /z.B. Bootreihenfolge), gehen alle bisherigen Sicherungspunkte verloren. Ggf. sollte beim Vorhandensein von Sicherungspunkte der Benutzer gewarnt werden, wenn er die Konfiguration ändern will.
Wir werden hier jetzt noch einige Änderungen durchführen: - Die Operationen werden umbenannt: Suspendieren -> Speichern & Beenden (Gegenteil: Wiederherstellen) VNC -> Direktzugriff - Die Operation Pausieren Soll pro genutzten Hypervisor an und ausschaltbar sein. Standard: + Xen: an + KVM: aus - Abschnitt Laufwerk umbenennen in Laufwerke - Snapshots/Sicherungspunkte Dafür wird es einen eigenen Abschnitt geben: + Einen Button zum Erstellen + Eine Liste von vorhandenen Snapshots. Am Ende jeder Zeile die Button Wiederherstellen und Löschen + Checkboxen um mehre Snapshots auf einmal zu löschen + Nachfragen beim Löschen und Wiederherstellen - Sortierung Direkter Zugriff, Speichern&Beenden, Migrieren, Beenden, Löschen
(In reply to comment #3) > Wir werden hier jetzt noch einige Änderungen durchführen: > > - Die Operationen werden umbenannt: > > Suspendieren -> Speichern & Beenden (Gegenteil: Wiederherstellen) > VNC -> Direktzugriff Done. Es sollte auch in den Texten geprüft werden, ob dort überall VNC verschwunden ist. > - Die Operation Pausieren > > Soll pro genutzten Hypervisor an und ausschaltbar sein. Standard: > > + Xen: an > + KVM: aus Es gibt jetzt die UCR Variablen uvmm/umc/show/(pause|suspend|migrate|vnc) Die können auf die Werte yes, no, xen, kvm, qemu gesetzt werden: yes -> immer sichtbar no -> nie sichtbar xen -> nur bei Xen Instanzen kvm|qemu -> nur bei KVM Instanzen > - Abschnitt Laufwerk umbenennen in Laufwerke > > - Snapshots/Sicherungspunkte > > Dafür wird es einen eigenen Abschnitt geben: > > + Einen Button zum Erstellen > + Eine Liste von vorhandenen Snapshots. Am Ende jeder Zeile die Button > Wiederherstellen und Löschen > + Checkboxen um mehre Snapshots auf einmal zu löschen > + Nachfragen beim Löschen und Wiederherstellen Done > - Sortierung > > Direkter Zugriff, Speichern&Beenden, Migrieren, Beenden, Löschen Done
Neben der Dokumentation müssen auch die Texte zu UVMM im Wiki überprüft werden, so dass dort statt VNC der Begriff Direktzugriff steht.
(In reply to comment #5) > Neben der Dokumentation müssen auch die Texte zu UVMM im Wiki überprüft werden, > so dass dort statt VNC der Begriff Direktzugriff steht. Der Begriff VNC taucht nur im UVMM Quickstart auf. http://wiki.univention.de/index.php?title=UVMM_Quickstart#Externen_VNC-Viewer_verwenden
(In reply to comment #6) > (In reply to comment #5) > > Neben der Dokumentation müssen auch die Texte zu UVMM im Wiki überprüft werden, > > so dass dort statt VNC der Begriff Direktzugriff steht. > > Der Begriff VNC taucht nur im UVMM Quickstart auf. > > http://wiki.univention.de/index.php?title=UVMM_Quickstart#Externen_VNC-Viewer_verwenden Ich habe dazu einen neuen Bug #20894 angelegt
Wenn ich ein neues Laufwerk hinzufüge, dann werden alle meine Snapshots gelöscht. Hier sollte eine Nachfrage eingebaut werden, die mich darauf hinweist.
UVMMd macht ein virDomainUndefine($name) und virDomainUndefine($uuid), bevor per virDomainDefineXML() die neue XML-Beschreibung der Domain neu angelegt wird. Durch das undefine() gehen die Snapshots verloren. `virsh edit` macht (inzwischen?) kein undefine() mehr, sondern überschreibt die Domain-Beschreibung direkt erneut. Dadurch gehen die Snapshots nicht verloren. Allerdings sollte man nichts Ändern, was einer Änderung der Hardware entspricht: - CPUs hinzufügen oder herausziehen - Hauptspeichergröße (RAM) verändern - Massenspeicher hinzufügen oder entfernen Gefahrlos kann man anscheinend folgende Dinge ändern: - Boot-Reihenfolge (ist sowieso erst beim nächsten Start relevant) - VNC-Konfiguration wie Port-Nummer, Passwort, Tastaturlayout Ein Grund, warum wir vorher ein undefine() machen ist, daß wir so Domains umbenennen können: Sowohl xen als auch kvm verweigern das definieren einer Domain, deren Name bereits durch eine andere Domaine benutzt wird; bei kvm darf zusätzlich auch keine Domain mit der UUID existieren. Oder anders ausgedrückt: KVM: name & uuid müssen identisch sein XEN: name muß identisch sein, UUID könnte sich ändern. Umbenennen: Nutzer warnen, daß Snapshots verloren gehen: delSnap(*)+undefine() Hardware ändern: Nutzer warnen, daß Snapshots verloren gehen: delSnap(*) Boot-Reihenfolge und VNC: kein undefine()
(In reply to comment #8) > Wenn ich ein neues Laufwerk hinzufüge, dann werden alle meine Snapshots > gelöscht. Hier sollte eine Nachfrage eingebaut werden, die mich darauf > hinweist. Es wurde jetzt folgendermaßen in UMC umgesetzt: Bei KVM Maschinen mit Snapshots werden die "Hardware-Einstellungen" ausgegraut. Ein Infotext weisst daraufhin was der Grund ist und was getan werden kann um die Einstellungen wieder verändern zu können (Snapshots löschen)
Es müssen noch Anpassungen im UVMMd gemacht werden
Der UVMMd ruft nur noch undefine() in dem Falle auf, wo eine Domain umbenannt wird. Das UMC-Modul warnt beim Vorhandensein von Sicherungspunkten vor der Veränderung der Hardware-Eigenschaften und verhindert so Änderungen. Neue VM mit neuem Namen: okay Neue VM mit altem Namen: Warnung durch UMC und UVMMd Alte VM mit altem Namen: okay für VNC, Bootreihenfolge Alte VM mit neuem Namen: Sicherungspunke müssen vorher in UMC gelöscht werden bzw. gehen per CLI verloren. svn21419, univention-virtual-machine-manager-daemon_0.9.124-2.122.201012081253
OK
UCS 2.4-1 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".