Die eine oder andere vmWare Migration steht nun an. Nach und nach Ziehen aller Ortens VMs nach der Offenbarung von Broadcoms’s Koksproblem auf bezahlbare Hypervisoren um und Admins haben alle Hände voll zu tun. Gut das es auf der vSphere-Seite die „Custom Attributes“ gibt: Datacenterweit nutzbare „tags“ mit denen man Maschinen markieren kann. Die Attribute gibt es zwa schon lange, aber wir sehen dieses feature grade so oft genutzt wie noch nie.
Denn: An der PowerShell kann man so „mal eben“ eine Liste bestimmter VMs ausgeben und konfortabel filtern.
Lösung
VMs nach Attributen filtern (als Einzeiler, der Lesbarkeit halber als Blöcke)
Get-VM | ? {
($_ | Get-Annotation -CustomAttribute "ATTR").Value -eq "EXAMPLE"
}
… gibt alle VMS mit dem Attribut „ATTR“ das den Wert „EXAMPLE“ hat aus.
Vielleicht braucht man auch alle VMs, die das Attribut nicht gesetzt haben:
Get-VM | ? {
-not [string]::IsNullOrWhiteSpace(($_ | Get-Annotation -CustomAttribute "ATTR").Value)
}



