获取支持高级磁盘的 Azure VM 大小列表

Get list of Azure VM size that supports premium disk

我需要获取支持高级磁盘的 Azure 虚拟机大小列表。我尝试了 'get-azvmsize',但它没有 'Premium disk support' 的 属性。

命令没有给出 'premium disk support' 属性.

$data = get-azvmsize -ResourceGroupName Demo-eu-rsv-dev -VMName eusvm1dev

PS /home/cstx_a_manjug> $data

Name                   NumberOfCores MemoryInMB MaxDataDiskCount OSDiskSizeInMB ResourceDiskSizeInMB
----                   ------------- ---------- ---------------- -------------- --------------------
Standard_B1ls                      1        512                2        1047552                 4096
Standard_B1ms                      1       2048                2        1047552                 4096
Standard_B1s                       1       1024                2        1047552                 4096

基于PSVirtualMachineSize Class,'Premium disk support'没有这样的属性。所以恐怕我们无法通过这个cmd 'Premium disk support'.

目前我们需要使用List Resource SKUs来获取虚拟机大小信息。

{
    "name": "PremiumIO",
    "value": "True"
}

这个属性PremiumIO是'Premium disk support'。不幸的是,目前仅支持 location 过滤器,基于 URI Parameters。所以响应数据非常大。您需要在代码中处理它以将 "resourceType" 过滤为 "virtualMachines" 并将 "PremiumIO" 过滤为 "True".

确实有对应的Powershell cmd Get-AzComputeResourceSku.

这是一个例子:

Get-AzComputeResourceSku  | where{$_.ResourceType.Equals('virtualMachines') -and $_.Locations.Contains('westus').Equals($true) -and $_.Capabilities.where({($_.Value -eq 'True') -and ($_.Name -eq 'PremiumIO')})}| Select-Object Name, Capabilities, ResourceType, Locations