Utilizar a ferramenta de validação de modelos no Azure Stack Hub

Verifique os modelos do Azure Resource Manager com a ferramenta de validação de modelos. A ferramenta verifica se o modelo está pronto para ser implementado no Azure Stack Hub. Pode obter a ferramenta de validação a partir do repositório gitHub das ferramentas do Azure Stack Hub.

Nota

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

Descrição Geral

Para validar um modelo, primeiro tem de criar um ficheiro de capacidades da cloud e, em seguida, executar a ferramenta de validação. Utilize os seguintes módulos do PowerShell a partir das ferramentas do Azure Stack Hub:

  • Na pasta CloudCapabilities : Az.CloudCapabilities.psm1 cria um ficheiro JSON de capacidades de cloud que representa os serviços e versões numa cloud do Azure Stack Hub.
  • Na pasta TemplateValidator : Az.TemplateValidator.psm1 utiliza um ficheiro JSON de capacidades de cloud para testar modelos para implementação no Azure Stack Hub.

Criar o ficheiro de capacidades da cloud

Antes de utilizar o validador de modelos, execute o módulo Az.CloudCapabilities powerShell para criar um ficheiro JSON.

Nota

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

  1. Certifique-se de que tem conectividade ao Azure Stack Hub. Estes passos podem ser efetuados a partir do anfitrião do Azure Stack Development Kit (ASDK) ou pode utilizar uma VPN para ligar a partir da sua estação de trabalho.

  2. Importe o módulo Az.CloudCapabilities powerShell:

    Import-Module .\CloudCapabilities\Az.CloudCapabilities.psm1
    
  3. Utilize o cmdlet Get-CloudCapabilities para obter versões de serviço e criar um ficheiro JSON de capacidades da cloud. Se não especificar -OutputPath, o ficheiro AzureCloudCapabilities.json é criado no diretório atual. Utilize a sua localização real do Azure:

Get-AzCloudCapability -Location <your location> -Verbose

Validar modelos

Utilize estes passos para validar modelos com o módulo Az.TemplateValidator do PowerShell. Pode utilizar os seus próprios modelos ou utilizar os modelos de Início Rápido do Azure Stack Hub.

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

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

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

O validador apresenta avisos ou erros de validação de modelos na consola do PowerShell e escreve-os num ficheiro HTML no diretório de origem. A captura de ecrã seguinte é um exemplo de um relatório de validação:

Relatório de validação de modelos

Parâmetros

O cmdlet do validador de modelos suporta os seguintes parâmetros.

Parâmetro Descrição Obrigatório
TemplatePath Especifica o caminho para localizar recursivamente modelos de Resource Manager do Azure. Yes
TemplatePattern Especifica o nome dos ficheiros de modelo a corresponder. No
CapabilitiesPath Especifica o caminho para o ficheiro JSON das capacidades da cloud. Yes
IncludeComputeCapabilities Inclui a avaliação de recursos IaaS, como tamanhos de VM e extensões de VM. No
IncludeStorageCapabilities Inclui a avaliação de recursos de armazenamento, como tipos de SKU. No
Report Especifica o nome do relatório HTML gerado. No
Verbose Regista erros e avisos na consola. No

Exemplos

Este exemplo valida todos os modelos de Início Rápido do Azure Stack Hub transferidos para o armazenamento local. O exemplo também valida tamanhos e extensões de máquinas virtuais (VMs) em relação às capacidades do ASDK.

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

Passos seguintes