PowerShell vrijdag: ExtensionData
Gepubliceerd op 26 februari 2016 • 2 min leestijd • 369 woorden
Wanneer u een object ophaalt uit vCenter of uw ESXi-host, krijgt u veel informatie. Wanneer u Get-VM gebruikt, bevat het geretourneerde object meerdere eigenschappen. Elke eigenschap kan één waarde of meerdere waarden hebben. Als u naar het virtuele machine-object kijkt, ziet u een eigenschap met de naam ExtensionData. Die eigenschap bevat. Bij elk VM-object is veel informatie opgeslagen in de eigenschap ExtensionData.
Probeer de volgende cmdlet en vervang Photon door een machine in uw omgeving:``` VM.ExtensionData
of op één regel:Get-VM -Name Photon | ForEach-Object {$_.ExtensionData}
of nog korter:
``(Get-VM -Naam Photon).ExtensionData``
Je krijgt zoiets als dit, afhankelijk van je virtuele machine:```
Capability : VMware.Vim.VirtualMachineCapability
Config : VMware.Vim.VirtualMachineConfigInfo
Layout : VMware.Vim.VirtualMachineFileLayout
LayoutEx : VMware.Vim.VirtualMachineFileLayoutEx
Storage : VMware.Vim.VirtualMachineStorageInfo
EnvironmentBrowser : EnvironmentBrowser-envbrowser-41
ResourcePool : ResourcePool-resgroup-8
ParentVApp :
ResourceConfig : VMware.Vim.ResourceConfigSpec
Runtime : VMware.Vim.VirtualMachineRuntimeInfo
Guest : VMware.Vim.GuestInfo
Summary : VMware.Vim.VirtualMachineSummary
Datastore : {Datastore-datastore-12}
Network : {Network-network-14}
Snapshot :
RootSnapshot : {}
GuestHeartbeatStatus : gray
LinkedView :
Parent : Folder-group-v3
CustomValue : {}
OverallStatus : green
ConfigStatus : green
ConfigIssue : {}
EffectiveRole : {-1}
Permission : {}
Name : Photon
DisabledMethod : {MakePrimaryVM\_Task, TerminateFaultTolerantVM\_Task,
ResetVM\_Task, UnmountToolsInstaller...}
RecentTask : {}
DeclaredAlarmState : {alarm-10.vm-41, alarm-11.vm-41, alarm-2.vm-41,
alarm-23.vm-41...}
TriggeredAlarmState : {}
AlarmActionsEnabled : True
Tag : {}
Value : {}
AvailableField : {}
MoRef : VirtualMachine-vm-41
Client : VMware.Vim.VimClientImplDe items die beginnen met VMware.Vim zijn eigenschappen die worden beschreven in de vSphere API-referentiedocumentatie .
Informatie verkrijgen
Bijvoorbeeld: als u wilt weten of VMware-tools actief zijn voor een bepaalde machine, in dit geval Photon, kunt u de volgende opdracht gebruiken:
(Get-VM -Naam Photon).ExtensionData.Guest.ToolsRunningStatus
Het antwoord zou in mijn geval ‘guestToolsRunning’ zijn.
Of als u wilt weten wat de uptime is voor uw VM, kunt u gewoon ExtensionData controleren:```[timespan]::fromseconds((Get-VM -Name Photon).ExtensionData.Summary.QuickStats.UptimeSeconds)
Resultaat:```
Days : 86
Hours : 23
Minutes : 4
Seconds : 51
Milliseconds : 0
Ticks : 75134910000000
TotalDays : 86.9617013888889
TotalHours : 2087.08083333333
TotalMinutes : 125224.85
TotalSeconds : 7513491
TotalMilliseconds : 7513491000
```## Nu jij
Wat doe je met ExtensionData?