Resolver erros de SKUs não disponíveis

Este artigo descreve como resolver erros quando um SKU não está disponível na região ou zonas de disponibilidade de uma subscrição do Azure. Exemplos de SKUs de recursos são tipos de conta de armazenamento ou tamanho de máquina virtual (VM). Ocorrem erros durante implementações com um modelo de Resource Manager do Azure (modelo arm) ou ficheiro Bicep. O erro também ocorre com comandos como New-AzVM ou az vm create que especificam um size parâmetro para um SKU que não está disponível.

Sintoma

Quando uma VM é implementada para um SKU que não está disponível, ocorre um erro. A CLI do Azure e os comandos de implementação Azure PowerShell apresentam uma mensagem de erro a indicar que o tamanho pedido não está disponível na localização ou zona. No portal do Azure registo de atividades, verá códigos SkuNotAvailable de erro ou InvalidTemplateDeployment.

Neste exemplo, New-AzVM especificou o -Size parâmetro para um SKU que não está disponível. O código de SkuNotAvailable erro é apresentado no registo de atividades do portal.

The requested size for resource '<resource ID>' is currently not available in location '<location>'
zones '<zones>' for subscription '<subscription ID>'.
Please try another size or deploy to a different location or zones.

Quando uma VM é implementada com um modelo arm ou um ficheiro Bicep para um SKU que não está disponível, ocorre um erro de validação. O código InvalidTemplateDeployment de erro e a mensagem de erro são apresentados. A implementação não é iniciada, pelo que não existe histórico de implementações, mas o erro está no registo de atividades do portal.

Error: Code=InvalidTemplateDeployment
Message=The template deployment failed with error: The resource with id: '<resource ID>' failed validation
with message: The requested size for resource '<resource ID>' is currently not available in
location '<location>' zones '<zones>' for subscription '<subscription ID>'.
Please try another size or deploy to a different location or zones.

Causa

Recebe este erro nos seguintes cenários:

  • Quando o SKU do recurso que selecionou, como o tamanho da VM, não está disponível para uma localização ou zona.
  • Se estiver a implementar uma VM spot do Azure ou uma instância do conjunto de dimensionamento spot e não existir capacidade para o Azure Spot nesta localização. Para obter mais informações, veja Mensagens de erro spot.

Solução

Se um SKU não estiver disponível para a sua subscrição numa localização ou zona que satisfaça as suas necessidades empresariais, submeta um pedido de SKU para o Suporte do Azure.

Para determinar que SKUs estão disponíveis numa localização ou zona, utilize o comando az vm list-skus .

az vm list-skus --location centralus --size Standard_D --all --output table
  • --location filtra a saída por localização.
  • --size procura por um nome de tamanho parcial.
  • --all mostra todas as informações e inclui tamanhos que não estão disponíveis para a subscrição atual.
ResourceType     Locations    Name               Zones    Restrictions
---------------  -----------  --------------     -------  --------------
virtualMachines  centralus    Standard_D1        1        None
virtualMachines  centralus    Standard_D11       1        None
virtualMachines  centralus    Standard_D11_v2    1,2,3    None
virtualMachines  centralus    Standard_D16ds_v4  1,2,3    NotAvailableForSubscription, type: Zone,
                                                          locations: centralus, zones: 1,2,3

Zonas de disponibilidade

Pode ver todos os recursos de computação das zonas de disponibilidade de uma localização. Por predefinição, apenas são apresentados SKUs sem restrições. Para incluir SKUs com restrições, utilize o --all parâmetro .

az vm list-skus --location centralus --zone --all --output table
ResourceType      Locations    Name                 Zones    Restrictions
----------------  -----------  -------------------  -------  --------------
disks             centralus    Premium_LRS          1,2,3    None
disks             centralus    Premium_LRS          1,2,3    None
virtualMachines   centralus    Standard_A2_v2       1,2,3    None
virtualMachines   centralus    Standard_D16ds_v4    1,2,3    NotAvailableForSubscription, type: Zone,
                                                             locations: centralus, zones: 1,2,3

Pode filtrar por VMs resourceType semelhantes para zonas de disponibilidade.

az vm list-skus --location centralus --resource-type virtualMachines --zone --all --output table
ResourceType      Locations    Name                 Zones    Restrictions
----------------  -----------  -------------------  -------  --------------
virtualMachines   centralus    Standard_A1_v2       1,2,3    None
virtualMachines   centralus    Standard_A2m_v2      1,2,3    None
virtualMachines   centralus    Standard_A2_v2       1,2,3    None
virtualMachines   centralus    Standard_D16ds_v4    1,2,3    NotAvailableForSubscription, type: Zone,
                                                             locations: centralus, zones: 1,2,3