Usar a ferramenta de validação de modelo no Azure Stack Hub

Verifique seus modelos de Resource Manager do Azure com a ferramenta de validação de modelo. A ferramenta verifica se o modelo está pronto para ser implantado no Azure Stack Hub. Você pode obter a ferramenta de validação do repositório GitHub das ferramentas do Azure Stack Hub.

Observação

A ferramenta valida o modelo de Resource Manager do Azure para tipos de recursos com suporte e versões de API no Azure Stack. No entanto, a ferramenta não valida as propriedades com suporte para cada tipo de recurso.

Visão geral

Para validar um modelo, primeiro você deve criar um arquivo de funcionalidades de nuvem e, em seguida, executar a ferramenta de validação. Use os seguintes módulos do PowerShell das ferramentas do Azure Stack Hub:

  • Na pasta CloudCapabilities : Az.CloudCapabilities.psm1 cria um arquivo JSON de recursos de nuvem que representa os serviços e versões em uma nuvem do Azure Stack Hub.
  • Na pasta TemplateValidator : Az.TemplateValidator.psm1 usa um arquivo JSON de recursos de nuvem para testar modelos para implantação no Azure Stack Hub.

Criar o arquivo de recursos de nuvem

Antes de usar o validador de modelo, execute o módulo do PowerShell Az.CloudCapabilities para criar um arquivo JSON.

Observação

Se você atualizar o sistema integrado ou adicionar novos serviços ou extensões virtuais, deverá executar este módulo novamente.

  1. Verifique se você tem conectividade com o Azure Stack Hub. Essas etapas podem ser feitas no host do ASDK (Azure Stack Development Kit) ou você pode usar uma VPN para se conectar a partir de sua estação de trabalho.

  2. Importe o módulo do PowerShell Az.CloudCapabilities :

    Import-Module .\CloudCapabilities\Az.CloudCapabilities.psm1
    
  3. Use o cmdlet Get-CloudCapabilities para recuperar versões de serviço e criar um arquivo JSON de recursos de nuvem. Se você não especificar -OutputPath, o arquivo AzureCloudCapabilities.json será criado no diretório atual. Use seu local real do Azure:

Get-AzCloudCapability -Location <your location> -Verbose

Validar modelos

Use estas etapas para validar modelos usando o módulo Az.TemplateValidator do PowerShell. Você pode usar seus próprios modelos ou usar os modelos de Início Rápido do Azure Stack Hub.

  1. Importe o módulo do PowerShell Az.TemplateValidator.psm1 :

    cd "c:\AzureStack-Tools-az\TemplateValidator"
    Import-Module .\Az.TemplateValidator.psm1
    
  2. Execute o validador de modelo:

Test-AzTemplate -TemplatePath <path to template.json or template folder> `
-CapabilitiesPath <path to cloudcapabilities.json> `
-Verbose

O validador exibe avisos ou erros de validação de modelo no console do PowerShell e os grava em um arquivo HTML no diretório de origem. A captura de tela a seguir é um exemplo de um relatório de validação:

Relatório de validação de modelo

Parâmetros

O cmdlet validador de modelo dá suporte aos parâmetros a seguir.

Parâmetro Descrição Obrigatório
TemplatePath Especifica o caminho para localizar recursivamente modelos de Resource Manager do Azure. Sim
TemplatePattern Especifica o nome dos arquivos de modelo a serem correspondidos. Não
CapabilitiesPath Especifica o caminho para o arquivo JSON de funcionalidades de nuvem. Sim
IncludeComputeCapabilities Inclui a avaliação de recursos de IaaS, como tamanhos de VM e extensões de VM. Não
IncludeStorageCapabilities Inclui a avaliação de recursos de armazenamento, como tipos de SKU. Não
Report Especifica o nome do relatório HTML gerado. Não
Verbose Registra erros e avisos no console. Não

Exemplos

Este exemplo valida todos os modelos de Início Rápido do Azure Stack Hub baixados para o armazenamento local. O exemplo também valida tamanhos e extensões de VM (máquina virtual) em relação aos recursos do ASDK.

test-AzTemplate -TemplatePath C:\AzureStack-Quickstart-Templates `
-CapabilitiesPath .\TemplateValidator\AzureStackCloudCapabilities_with_AddOns_20170627.json `
-TemplatePattern MyStandardTemplateName.json `
-IncludeComputeCapabilities `
-Report TemplateReport.html

Próximas etapas