python-2.7 - 根据类型或类别列出 Microsoft Azure 计算中的 VM 大小

标签 python-2.7 azure adal azure-resource-manager azure-resource-group

我们正在尝试使用 API“GET https://management.azure.com/subscriptions/ {subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/vmSizes?api-version= 列出特定位置的所有可用大小2017-12-01”。它返回近 22400 个尺寸。某个区域下真的包含这么多尺寸吗?有没有什么优雅的方法可以根据类型获取虚拟机大小。

For Example:
    1. Get VM sizes based on General purpose, Memory optimized, Storage optimized etc.
    2. Get VM Sizes  based on RAM size, CPU count etc.

最佳答案

我使用了 Laurent 发布的示例(下面的链接),它返回了该区域中所有可用的 VM 大小的名称、核心、磁盘、内存等(使用 parm location=region)。如果您在它周围添加一些代码,您应该能够执行示例 2。

Get Virtual Machine sizes list in json format using azure-sdk-for-python

def list_available_vm_sizes(compute_client, region = 'EastUS2', minimum_cores = 1, minimum_memory_MB = 768):
    vm_sizes_list = compute_client.virtual_machine_sizes.list(location=region)
    for vm_size in vm_sizes_list:
        if vm_size.number_of_cores >= int(minimum_cores) and vm_size.memory_in_mb >= int(minimum_memory_MB): 
            print('Name:{0}, Cores:{1}, OSDiskMB:{2}, RSDiskMB:{3}, MemoryMB:{4}, MaxDataDisk:{5}'.format(
                vm_size.name,
                vm_size.number_of_cores,
                vm_size.os_disk_size_in_mb,
                vm_size.resource_disk_size_in_mb,
                vm_size.memory_in_mb,
                vm_size.max_data_disk_count
            ))

list_available_vm_sizes(compute_client, region = 'EastUS', minimum_cores = 2, minimum_memory_MB = 8192)

关于python-2.7 - 根据类型或类别列出 Microsoft Azure 计算中的 VM 大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48886748/

相关文章:

python - pip 安装后错误 "no module named six"

python - 执行 python manage.pysyncdb 时出现 ImportError : No module named azure. storage.blob

flutter - 我想使用 OBS 将笔记本电脑中的视频广播/流式传输到 Agora 并在我的 Flutter 应用程序中显示该流?

azure - 如何在 Azure API 管理开发人员门户中禁用注册?

java - 403 :forbidden when reading mails from server side application using Microsoft Graph

python - 如何在 Python 程序中正确使用 gdaladdo?

python - Python 中的多线程

.net - 如何使用其他租户的 Azure AD 应用程序?

ios - 需要用户凭据才能获取访问 token 。请调用非静默的 acquireTokenWithResource 方法

python - 凯撒密码 python 加密