我正在玩Azure的PS命令来尝试获取特定虚拟机的当前状态。我认为这会很直接,但我错了。使用PowerShell获取Azure虚拟机状态
我目前使用此CMD-LET:
Get-AzureRmVM -Name CM01 -ResourceGroupName RG -Status
ResourceGroupName : RG
Name : CM01
Disks[0] :
Name : CM01
Statuses[0] :
Code : ProvisioningState/succeeded
Level : Info
DisplayStatus : Provisioning succeeded
Time : 18/08/2016 08:10:20
VMAgent :
VmAgentVersion : 2.7.1198.778
ExtensionHandlers[0] :
Type : Microsoft.Azure.RecoveryServices.VMSnapshot
TypeHandlerVersion : 1.0.10.0
Status :
Code : ProvisioningState/succeeded
Level : Info
DisplayStatus : Ready
Message : Plugin enabled (name: Microsoft.Azure.RecoveryServices.VMSnapshot, version: 1.0.10.0).
ExtensionHandlers[1] :
Type : Microsoft.Compute.BGInfo
TypeHandlerVersion : 1.2.2
Status :
Code : ProvisioningState/succeeded
Level : Info
DisplayStatus : Ready
Message : Plugin enabled (name: Microsoft.Compute.BGInfo, version: 1.2.2).
Statuses[0] :
Code : ProvisioningState/succeeded
Level : Info
DisplayStatus : Ready
Message : GuestAgent is running and accepting new configurations.
Time : 18/08/2016 14:52:59
Statuses[0] :
Code : ProvisioningState/succeeded
Level : Info
DisplayStatus : Provisioning succeeded
Time : 18/08/2016 12:14:04
Statuses[1] :
Code : PowerState/running
Level : Info
DisplayStatus : VM running
请注意,我用的是 - 状态标志,否则我不会得到相关的VM
状态任何信息它返回一个包含Statuses数组的对象。我不知道如何访问状态[1] .DisplayStatus的位置来获得'虚拟机运行'消息。 VM状态是否总是存储在状态[1]上?
这是我想获取值(它没有返回值):
Get-AzureRmVM -Name CM -ResourceGroupName RG -Status | Select Statuses[1].DisplayStatus
Statuses[1].DisplayStatus
-------------------------
-Is有更简单的方法来访问虚拟机状态?
非常感谢