gpt4 book ai didi

azure - 识别与虚拟机已释放相关的资源

转载 作者:行者123 更新时间:2023-12-02 07:07:09 25 4
gpt4 key购买 nike

在 Azure VM 的清理过程中。我正在尝试识别与已释放虚拟机相关的所有资源,例如网络、存储和网卡。

我运行下面的查询来获取详细信息,但无法编写查询来获取同一查询参数中的其他详细信息,以获取表格式的 nic、storge 结果。

az vm list -d --query "[?powerState=='虚拟机已释放']"-o table

qa-automation-10 测试-QA-自动化
qa-automation-11 测试-QA-自动化
qa-automation-12 测试-QA-自动化
qa-automation-13 测试-QA-自动化
qa-automation-14 测试-QA-自动化

任何帮助都将是值得赞赏的,我特别寻找 az 客户端查询。由于 VM 释放列表很大,因此我将通过 gitlab 管道运行。

},
"id": "/subscriptions/xxxxxxxx/resourceGroups/xxxx/providers/Microsoft.Compute/virtualMachines/x023901",
"identity": null,
"licenseType": null,
"location": "x",
"macAddresses": "",
"name": "x023901",
"networkProfile": {
"networkInterfaces": [
{
"id": "/subscriptions/x/resourceGroups/rGroup-ENV0239/providers/Microsoft.Network/networkInterfaces/x023901nic",
"primary": null,
"resourceGroup": "rGroup-ENV0239"
}
]
},
"osProfile": null,
"plan": null,
"powerState": "VM deallocated",
"privateIps": "x.x.x.x",
"provisioningState": "Succeeded",
"publicIps": "",
"resourceGroup": "RGROUP-ENV0239",
"resources": [
{
"autoUpgradeMinorVersion": true,
"forceUpdateTag": null,
"id": "/subscriptions/xxxxxxx/resourceGroups/RGROUP-ENV0239/providers/Microsoft.Compute/virtualMachines/x023901/extensions/OmsAgentForLinux",
"instanceView": null,
"location": "x",
"name": "OmsAgentForLinux",
"protectedSettings": null,
"provisioningState": "Succeeded",
"publisher": "Microsoft.EnterpriseCloud.Monitoring",
"resourceGroup": "RGROUP-ENV0239",
"settings": {
"stopOnMultipleConnections": true,
"workspaceId": "xx"
},
"tags": null,
"type": "Microsoft.Compute/virtualMachines/extensions",
"typeHandlerVersion": "1.0",
"virtualMachineExtensionType": "OmsAgentForLinux"
}
],
"storageProfile": {
"dataDisks": [
{
"caching": "None",
"createOption": "Attach",
"diskSizeGb": 20,
"image": null,
"lun": 0,
"managedDisk": null,
"name": "x-data1.vhd",
"vhd": {
"uri": "https://x.core.windows.net/vhds/x-data1.vhd"
},
"writeAcceleratorEnabled": null
}
],
"imageReference": null,
"osDisk": {
"caching": "ReadWrite",
"createOption": "Attach",
"diffDiskSettings": null,
"diskSizeGb": 30,
"encryptionSettings": null,
"image": null,
"managedDisk": null,
"name": "xosDisk",
"osType": "Linux",
"vhd": {
"uri": "https://xblob.core.windows.net/vhds/x.vhd"
},
"writeAcceleratorEnabled": null
}
},
"tags": null,
"type": "Microsoft.Compute/virtualMachines",
"vmId": "x",
"zones": null
},

最佳答案

Azure 中的 VM 有两种类型,一种是托管 VM,另一种是非托管 VM。当你想显示所有虚拟机的详细信息时,你应该注意这一点。

此外,没有关于存储帐户的属性。您可以将文件存储在存储帐户中,并且不关联到 VM。因此,如果虚拟机不受托管,您只会获得有关存储帐户的一些信息。

获取包含一些资源的虚拟机列表,例如 vmName、NIC、osDisk 或 osDiskURI,CLI 命令如下:

az vm list --query "[].{VMName:name, nicId:networkProfile.networkInterfaces[0].id, managedDiskId:storageProfile.osDisk.managedDisk.id, UnmanagedDiskURL:storageProfile.osDisk.vhd.uri}" -o table

如果您可以通过 CLI 命令 az vm show 在虚拟机详细信息中找到所需信息,则可以更改所需信息。希望这会有所帮助。还有什么问题可以给我留言。

关于azure - 识别与虚拟机已释放相关的资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54136722/

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