【问题标题】:How can I check the disk size of a VM with Azure Python SDK?如何使用 Azure Python SDK 检查 VM 的磁盘大小?
【发布时间】:2023-04-05 00:27:01
【问题描述】:

当我使用 Azure 创建 VM 时,例如标准 A6,它带有 2 个已安装的单元,一个具有 30GB,另一个具有 285GB。当我 ssh 到虚拟机时,我可以看到这一点。从 Azure 门户,我可以看到 30GB 的存储空间,但看不到 285GB 的存储空间。但是,当我去 Azure 计算器时,我可以看到 Standard A6 机器有 285GB 的临时空间。

  • 这个临时空间是什么? “临时”是什么意思?
  • 如何自动检查磁盘大小?我需要从 python 执行此操作,因为我正在开发一个云代理门户,该门户将向用户显示机器的磁盘大小。
  • 如何手动检查磁盘大小?我在 VM 资源或 Azure 门户的存储帐户中看不到它。我发现此信息的唯一地方是 Azure 计算器,这有点麻烦。

编辑
虽然我可以通过 Azure 门户和 SDK 访问机器,但我无法通过 ssh 进入创建的虚拟机(这是我无法更改的项目要求),因此不能在其中运行 bash 命令。

我发现了一些似乎可以实现我需要的东西,但它似乎不起作用:

vm = cmc.virtual_machines.get(GROUP_NAME, VM_NAME)
os_disk_name = vm.storage_profile.os_disk.name
cmc.disks.get(GROUP_NAME, os_disk_name)
---------------------------------------------------------------------------
CloudError                                Traceback (most recent call last)
<ipython-input-39-818c4d1cac7d> in <module>()
----> 1 cmc.disks.get(GROUP_NAME, os_disk_name)
~/lib/python3.6/site-packages/azure/mgmt/compute/v2017_03_30/operations/disks_operations.py in get(self, resource_group_name, disk_name, custom_headers, raw, **operation_config)
    285             exp = CloudError(response)
    286             exp.request_id = response.headers.get('x-ms-request-id')
--> 287             raise exp
    288 
    289         deserialized = None
CloudError: Azure Error: ResourceNotFound
Message: The Resource 'Microsoft.Compute/disks/myosdisk' under resource group GROUP_NAME was not found.

【问题讨论】:

    标签:
    azure
    azure-storage
    azure-virtual-machine
    azureportal
    azure-sdk-python