Het hulpprogramma voor sjabloonvalidatie gebruiken in Azure Stack Hub

Controleer uw Azure Resource Manager-sjablonen met het hulpprogramma voor sjabloonvalidatie. Het hulpprogramma controleert of uw sjabloon gereed is om te worden geïmplementeerd in Azure Stack Hub. U kunt het validatieprogramma ophalen uit de GitHub-opslagplaats van azure Stack Hub-hulpprogramma's.

Notitie

Het hulpprogramma valideert de Azure Resource Manager-sjabloon voor ondersteunde resourcetypen en API-versies in Azure Stack. Het hulpprogramma valideert echter niet de eigenschappen die voor elk resourcetype worden ondersteund.

Overzicht

Als u een sjabloon wilt valideren, moet u eerst een bestand met cloudmogelijkheden maken en vervolgens het validatieprogramma uitvoeren. Gebruik de volgende PowerShell-modules van Azure Stack Hub-hulpprogramma's:

  • In de map CloudCapabilities maakt Az.CloudCapabilities.psm1 een JSON-bestand met cloudmogelijkheden dat de services en versies in een Azure Stack Hub-cloud vertegenwoordigt.
  • In de map TemplateValidator gebruikt Az.TemplateValidator.psm1 een JSON-bestand met cloudmogelijkheden om sjablonen te testen voor implementatie in Azure Stack Hub.

Het bestand met cloudmogelijkheden bouwen

Voordat u de sjabloonvalidatie gebruikt, voert u de PowerShell-module Az.CloudCapabilities uit om een JSON-bestand te maken.

Notitie

Als u uw geïntegreerde systeem bijwerkt of nieuwe services of virtuele extensies toevoegt, moet u deze module opnieuw uitvoeren.

  1. Zorg ervoor dat u verbinding hebt met Azure Stack Hub. Deze stappen kunnen worden uitgevoerd vanaf de ASDK-host (Azure Stack Development Kit) of u kunt een VPN gebruiken om verbinding te maken vanaf uw werkstation.

  2. Importeer de PowerShell-module Az.CloudCapabilities :

    Import-Module .\CloudCapabilities\Az.CloudCapabilities.psm1
    
  3. Gebruik de cmdlet Get-CloudCapabilities om serviceversies op te halen en een JSON-bestand met cloudmogelijkheden te maken. Als u niet opgeeft -OutputPath, wordt het bestand AzureCloudCapabilities.json gemaakt in de huidige map. Uw werkelijke Azure-locatie gebruiken:

Get-AzCloudCapability -Location <your location> -Verbose

Sjablonen valideren

Gebruik deze stappen om sjablonen te valideren met behulp van de PowerShell-module Az.TemplateValidator . U kunt uw eigen sjablonen gebruiken of de Azure Stack Hub-quickstartsjablonen gebruiken.

  1. Importeer de PowerShell-module Az.TemplateValidator.psm1 :

    cd "c:\AzureStack-Tools-az\TemplateValidator"
    Import-Module .\Az.TemplateValidator.psm1
    
  2. Voer de sjabloonvalidator uit:

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

De validator geeft waarschuwingen of fouten voor sjabloonvalidatie weer in de PowerShell-console en schrijft deze naar een HTML-bestand in de bronmap. De volgende schermopname is een voorbeeld van een validatierapport:

Sjabloonvalidatierapport

Parameters

De cmdlet sjabloonvalidator ondersteunt de volgende parameters.

Parameter Beschrijving Vereist
TemplatePath Hiermee geeft u het pad op voor recursief zoeken naar Azure Resource Manager-sjablonen. Ja
TemplatePattern Hiermee geeft u de naam van sjabloonbestanden overeenkomen. Nee
CapabilitiesPath Hiermee geeft u het pad naar het JSON-bestand met cloudmogelijkheden op. Ja
IncludeComputeCapabilities Bevat evaluatie van IaaS-resources, zoals VM-grootten en VM-extensies. Nee
IncludeStorageCapabilities Omvat evaluatie van opslagresources, zoals SKU-typen. Nee
Report Hiermee geeft u de naam van het gegenereerde HTML-rapport. Nee
Verbose Registreert fouten en waarschuwingen naar de console. Nee

Voorbeelden

In dit voorbeeld worden alle Azure Stack Hub-quickstart-sjablonen gevalideerd die zijn gedownload naar de lokale opslag. In het voorbeeld worden ook de grootten en extensies van virtuele machines (VM's) gevalideerd op basis van ASDK-mogelijkheden.

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

Volgende stappen