Het hulpprogramma voor sjabloonvalidatie gebruiken in Azure Stack Hub

Controleer uw Azure Resource Manager-sjablonen met het sjabloonvalidatieprogramma. Het hulpprogramma controleert of uw sjabloon gereed is voor implementatie in Azure Stack Hub. U kunt het validatieprogramma ophalen uit de Azure Stack Hub-hulpprogramma's GitHub opslagplaats.

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 worden ondersteund voor elk resourcetype.

Overzicht

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

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

Het bestand met cloudmogelijkheden bouwen

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

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 dit 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 Quickstart-sjablonen van Azure Stack Hub 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 validatiefunctie 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:

Template validation report

Parameters

De cmdlet template validator ondersteunt de volgende parameters.

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

Voorbeelden

In dit voorbeeld worden alle Azure Stack Hub-quickstartsjablonen gevalideerd die zijn gedownload naar lokale opslag. In het voorbeeld worden ook vm-grootten (VM)-grootten en -extensies 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