Partager via


Utiliser l’outil de validation de modèles dans Azure Stack Hub

Vérifier vos modèles Azure Resource Manager avec l’outil de validation des modèles L’outil vérifie si votre modèle est prêt à être déployé sur Azure Stack Hub. Vous pouvez vous procurer l'outil de validation à partir du référentiel GitHub des outils Azure Stack Hub.

Remarque

L'outil valide le modèle Azure Resource Manager pour les types de ressources et les versions d'API pris en charge dans Azure Stack. En revanche, l’outil ne valide pas les propriétés prises en charge pour chaque type de ressource.

Vue d’ensemble

Pour valider un modèle, vous devez d’abord générer un fichier des fonctionnalités du cloud, puis exécuter l’outil de validation. Utilisez les modules PowerShell suivants à partir des outils Azure Stack Hub :

  • Dans le dossier CloudCapabilities : Az.CloudCapabilities.psm1 crée un fichier JSON des fonctionnalités du cloud représentant les services et versions présentes dans un cloud Azure Stack Hub.
  • Dans le dossier TemplateValidator : Az.TemplateValidator.psm1 utilise un fichier JSON des fonctionnalités du cloud pour tester des modèles en vue d’un déploiement dans Azure Stack Hub.

Générer le fichier des fonctionnalités du cloud

Avant d’utiliser le validateur de modèle, exécutez le module PowerShell Az.CloudCapabilities pour générer un fichier JSON.

Remarque

Si vous mettez à jour votre système intégré ou que vous ajoutez de nouveaux services ou de nouvelles extensions virtuelles, vous devez exécuter à nouveau ce module.

  1. Vérifiez que vous disposez d’une connectivité à Azure Stack Hub. Cette procédure peut être effectuée à partir de l’hôte du Kit de développement Azure Stack, ou vous pouvez utiliser un VPN pour vous connecter à partir de votre station de travail.

  2. Importez le module PowerShell Az.CloudCapabilities :

    Import-Module .\CloudCapabilities\Az.CloudCapabilities.psm1
    
  3. Utilisez l’applet de commande Get-CloudCapabilities pour récupérer des versions de service et créer un fichier JSON de fonctionnalités cloud. Si vous ne spécifiez pas -OutputPath, le fichier AzureCloudCapabilities.json est créé dans le répertoire actif. Utilisez votre emplacement Azure réel :

Get-AzCloudCapability -Location <your location> -Verbose

Valider des modèles

Utilisez cette procédure pour valider des modèles à l’aide du module PowerShell Az.TemplateValidator. Vous pouvez utiliser vos propres modèles ou les modèles de démarrage rapide Azure Stack Hub.

  1. Importez le module PowerShell Az.TemplateValidator.psm1 :

    cd "c:\AzureStack-Tools-az\TemplateValidator"
    Import-Module .\Az.TemplateValidator.psm1
    
  2. Exécutez le validateur de modèle :

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

Le validateur affiche les avertissements ou les erreurs de validation des modèles dans la console PowerShell et les consigne dans un fichier HTML situé dans le répertoire source. La capture d’écran suivante montre un exemple de rapport de validation :

Rapport de validation de modèle

Paramètres

La cmdlet du validateur de modèle prend en charge les paramètres suivants.

Paramètre Description Obligatoire
TemplatePath Spécifie le chemin pour rechercher des modèles Azure Resource Manager de manière récursive. Oui
TemplatePattern Spécifie le nom des fichiers de modèle à faire correspondre Non
CapabilitiesPath Spécifie le chemin d’accès du fichier JSON de fonctionnalités cloud. Oui
IncludeComputeCapabilities Inclut l’évaluation de ressources IaaS telles que des tailles de machine virtuelle et des extensions de machine virtuelle. Non
IncludeStorageCapabilities Inclut l’évaluation de ressources de stockage, par exemple des types de références (SKU). Non
Report Spécifie le nom du rapport HTML généré. Non
Verbose Journalise les erreurs et les avertissements dans la console. Non

Exemples

Cet exemple valide tous les modèles de démarrage rapide Azure Stack Hub téléchargés dans le stockage local. L’exemple valide également les tailles et extensions de machines virtuelles par rapport aux fonctionnalités de l’ASDK.

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

Étapes suivantes