gpt4 book ai didi

azure - 确定 Microsoft Azure 中的虚拟机状态和事件

转载 作者:行者123 更新时间:2023-12-03 04:46:21 27 4
gpt4 key购买 nike

我有一个 Azure 帐户以及具有不同资源组和不同虚拟机的不同订阅。我想知道如何确定哪些未使用。例如,使用 powershell 脚本检查用户启动或使用虚拟机的最后日期。

最佳答案

PowerShell方法

在 PowerShell 中,您可以使用以下命令来查询 VM API。

您想要查看配置状态和时间,以及运行状态:

Connect-AzureRmAccount

Get-AzureRmVm | Get-AzureRmVm -Status | select ResourceGroupName, Name, @{n="Provisioned Time"; e={$_.Statuses[0].Time}}, @{n="Provisioned Status"; e={$_.Statuses[0].DisplayStatus}}, @{n="Running Status"; e={$_.Statuses[1].DisplayStatus}}

这将给出以下输出

ResourceGroupName  : RG-Name
Name : VM-Name
Provisioned Time : 27/06/2018 19:06:39
Provisioned Status : Provisioning succeeded
Running Status : VM deallocated

ResourceGroupName : RG-Name1
Name : VM-Name1
Provisioned Time : 27/06/2018 19:06:39
Provisioned Status : Provisioning succeeded
Running Status : VM running

REST API方法

在 PowerShell 之外,您可以使用几个 API 调用相对轻松地完成此操作:

使用 VM API 获取所有 VM 的列表

https://learn.microsoft.com/en-us/rest/api/compute/virtualmachines/listall

然后调用实例 View API 来检索 VM 最后已知的实例状态

https://learn.microsoft.com/en-us/rest/api/compute/virtualmachines/instanceview#instanceviewstatus

这将为您提供与上述 PowerShell 方法相同的状态集。 InstanceViewStatus,包含机器最后状态的StatusTime

以下是我的一台虚拟机返回响应的状态部分的示例 JSON:

  "statuses": [
{
"code": "ProvisioningState/succeeded",
"level": "Info",
"displayStatus": "Provisioning succeeded",
"time": "2017-06-15T13:59:26.8578303+00:00"
},
{
"code": "PowerState/running",
"level": "Info",
"displayStatus": "VM running"
}
]

关于azure - 确定 Microsoft Azure 中的虚拟机状态和事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52481983/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com