XenServer VMs verstecken / sichtbar machen?

 

Wer hat schon einmal einen Satz von XVA Dateien in seinen XenServer Pool importiert und sich danach gefragt: “Wo sind die VMs?” Die Festplattenobjekte (VDI) wurden alle im Storage erzeugt, hoffentlich mit sinnvollen Namen, denn was nützen zwanzig VDIs, die alle “New Disk” oder “Created by template provisioner” heissen.

Die VM-Metadaten neu / selbst anzulegen kommt nur in Frage, wenn man tatsächlich die Anzahl der Netzwerkkarten, Anschluss an die jeweiligen Netze, Anzahl der CPUs (Kerne oder Sockel), Menge an Ram etc. für jede VM fehlerfrei herunterbeten kann – also in aller Regel ausgeschlossen.

Aber irgendwo müssen diese Eigenschaften ja sein. Zunächst dürfte recht schnell auffallen, dass die vermissten Objekte (VMs) sehr wohl angezeigt werden, wenn man im XenCenter im Menü unter “View” den Punkt “Hidden Objects” aktiviert.
Dies hilft jedoch nicht, wenn die vermissten VMs zudem in den importierten XVA-Dateien als Template gespeichert waren, denn XenCenter zeigt seit einigen Versionen zwar versteckte Objekte auf Wunsch an, nicht jedoch die Templates – egal, ob diese versteckt sind oder nicht. Dies gilt zumindest für die vom System mitgebrachten Templates, allerdings nicht für die vom Benutzer selbst erstellten Templates.

Ok, dann lassen wir uns mal von Herrn Copperfield helfen:

Mit den Befehlen xe vm-list bzw. xe template-list (an der XenServer Console, im Console-Fenster im XenCenter oder über Putty etc.) gelingt die Auflistung *aller* Objekte, egal mit welchen Attributen – ebenso wie das Auffinden der jeweiligen UUID, die wir für die weiteren Befehle gebrauchen können.

Um eine VM zu verstecken kann mit
xe vm-param-set uuid=your-uuid-here other-config:HideFromXenCenter=true
das Ziel leicht erreicht werden. WICHTIG ist hierbei die Gross-/Kleinschreibung zu beachten. XenServer hat kein Problem damit, einen  falschen Eintrag in die Datenbank zu schreiben, er bleibt dann bloß wirkungslos.

Passend dazu kann man ein eigenes Template als System-Template deklarieren, mit folgendem Befehl:
xe vm-param-set uuid=your-uuid-here other-config:default_template=true

Wer z.B. in Österreich vor der Aufgabe steht, genau diese Augenwischereien rückgängig zu machen, kann Parameter aus solchen Maps einfach mit dem folgenden Kommando löschen:
xe vm-param-remove uuid=your-uuid-here param-name=other-config param-key=HideFromXenCenter

Have fun!

Kommentare

  1. Moin Daniel!
    habe es gerade heute wieder gebraucht als ich eine PoC-Umgebung für den Kunden vorbereitet habe :-)
    Danke

    AntwortenLöschen

Kommentar veröffentlichen

Beliebte Posts aus diesem Blog

Auf NFS Shares mit Windows zugreifen

Citrix Default Passwords

Lokales ISO Repository im XenServer anlegen