Hyper-V仮想マシンの状態を取得する

Hyper-Vネタです。
今回は、PowerShellを使って仮想システムの情報を取得してみます。


1)まずはやってみましょ
Get-WmiObject -Namespace rootvirtualization -ComputerName “.” -Class Msvm_Computersystem

PS C:> Get-WmiObject -Namespace rootvirtualization -ComputerName “.” -Class Msvm_Computersystem

__GENUS                       : 2
__CLASS                       : Msvm_ComputerSystem
__SUPERCLASS                  : CIM_ComputerSystem
__DYNASTY                     : CIM_ManagedElement
__RELPATH                     : Msvm_ComputerSystem.CreationClassName=“Msvm_ComputerSystem“,Name=“Hogehoge“
__PROPERTY_COUNT              : 29
__DERIVATION                  : {CIM_ComputerSystem, CIM_System, CIM_EnabledLogicalElement, CIM_LogicalElement...}
__SERVER                      : Hogehoge
__NAMESPACE                   : rootvirtualization
__PATH                        : \Hogehogerootvirtualization:Msvm_ComputerSystem.CreationClassName=“Msvm_ComputerSystem“,Name=“Hogehoge“
AssignedNumaNodeList          :
Caption                       : ホスト コンピューター システム
CreationClassName             : Msvm_ComputerSystem
Dedicated                     :
Description                   : Microsoft ホスト コンピューター システム
ElementName                   : Hogehoge
EnabledDefault                : 2
EnabledState                  : 2
HealthState                   : 5
IdentifyingDescriptions       :
InstallDate                   :
Name                          : Hogehoge
NameFormat                    :
OnTimeInMilliseconds          :
OperationalStatus             : {2}
OtherDedicatedDescriptions    :
OtherEnabledState             :
OtherIdentifyingInfo          :
PowerManagementCapabilities   :
PrimaryOwnerContact           :
PrimaryOwnerName              :
ProcessID                     :
RequestedState                : 12
ResetCapability               : 1
Roles                         :
Status                        :
StatusDescriptions            : {OK}
TimeOfLastConfigurationChange :
TimeOfLastStateChange         :

__GENUS                       : 2
__CLASS                       : Msvm_ComputerSystem
__SUPERCLASS                  : CIM_ComputerSystem
__DYNASTY                     : CIM_ManagedElement
__RELPATH                     : Msvm_ComputerSystem.CreationClassName=“Msvm_ComputerSystem“,Name=“03DC23B0-****-4281-BE**-33369646E8E2“
__PROPERTY_COUNT              : 29
__DERIVATION                  : {CIM_ComputerSystem, CIM_System, CIM_EnabledLogicalElement, CIM_LogicalElement...}
__SERVER                      : Hogehoge
__NAMESPACE                   : rootvirtualization
__PATH                        : \Hogehogerootvirtualization:Msvm_ComputerSystem.CreationClassName=“Msvm_ComputerSystem“,Name=“03DC23B0-5389-4281-****-33369646E8E2“
AssignedNumaNodeList          : {0}
Caption                       : 仮想マシン
CreationClassName             : Msvm_ComputerSystem
Dedicated                     :
Description                   : Microsoft Virtual Machine
ElementName                   : Win7
EnabledDefault                : 2
EnabledState                  : 2
HealthState                   : 5
IdentifyingDescriptions       :
InstallDate                   : 20090718035145.000000-000
Name                          : 03DC23B0-5389-4281-****-33369646E8E2
NameFormat                    :
OnTimeInMilliseconds          : 332464281
OperationalStatus             : {2}
OtherDedicatedDescriptions    :
OtherEnabledState             :
OtherIdentifyingInfo          :
PowerManagementCapabilities   :
PrimaryOwnerContact           :
PrimaryOwnerName              :
ProcessID                     : 1348
RequestedState                : 12
ResetCapability               : 1
Roles                         :
Status                        :
StatusDescriptions            : {正常稼働中}
TimeOfLastConfigurationChange : 20100104093738.593750-000
TimeOfLastStateChange         : 20100104093733.000000-000
			・
			・
			・

これだと情報が多すぎて分からないですね・・・

2)ほしい情報だけを抜き出す

Hyper-Vサーバ ・・・・・・・・Hogehoge
仮想マシン名・・・・・・・・・・・ElementName
仮想マシン・・・・・・・・・・・・・Caption
仮想マシンのステータス・・・StatusDescriptions
仮想マシンのGUID・・・・・・Name

を取得してみる。

Get-WmiObject -Namespace rootvirtualization -ComputerName “Hogehoge” -Class Msvm_Computersystem | Select-Object ElementName,Caption,StatusDescriptions,Name| Format-List *

PS C:> Get-WmiObject -Namespace rootvirtualization -ComputerName “Hogehoge“ -Class Msvm_Computersystem|Select-Object ElementName,Caption,StatusDescriptions,Name| Format-List *

ElementName        : Hogehoge
Caption            : ホスト コンピューター システム
StatusDescriptions : {OK}
Name               : Hogehoge

ElementName        : Win7
Caption            : 仮想マシン
StatusDescriptions : {正常稼働中}
Name               : 03DC23B0-5389-4281-****-33369646E8E2
			・
			・
			・

取得できましたか??
これを使って、仮想マシン接続のショートカットを作ります。
こうご期待。

仮想マシンへのショートカット

PowerShell難しい。。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Enter code * Time limit is exhausted. Please reload CAPTCHA.

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください