Partager via


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

Vérifiez vos modèles Azure Resource Manager avec l’outil de validation de modèle. L’outil vérifie si votre modèle est prêt à être déployé sur Azure Stack Hub. Vous pouvez obtenir l’outil de validation à partir du dépôt 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. Toutefois, l’outil ne valide pas les propriétés prises en charge pour chaque type de ressource.

Aperçu

Pour valider un modèle, vous devez d’abord créer un fichier de fonctionnalités 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 de fonctionnalités cloud représentant les services et les versions dans un cloud Azure Stack Hub.
  • Dans le dossier TemplateValidator : Az.TemplateValidator.psm1 utilise un fichier JSON de fonctionnalités cloud pour tester les modèles de déploiement dans Azure Stack Hub.

Créer le fichier de fonctionnalités 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 ajoutez de nouveaux services ou extensions virtuelles, vous devez réexécuter ce module.

  1. Vérifiez que vous disposez d’une connectivité à Azure Stack Hub. Ces étapes peuvent être effectuées à partir d’un VPN pour se 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 pour récupérer les versions du Get-CloudCapabilities service et créer un fichier JSON de fonctionnalités cloud. Si vous ne spécifiez -OutputPathpas, 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 ces étapes pour valider les modèles à l’aide du module PowerShell Az.TemplateValidator . Vous pouvez utiliser vos propres modèles ou utiliser 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 des avertissements ou des erreurs de validation de modèle dans la console PowerShell et les écrit dans un fichier HTML dans le répertoire source. La capture d’écran suivante est un exemple de rapport de validation :

Rapport de validation de modèle

Paramètres

L’applet de commande de validateur de modèle prend en charge les paramètres suivants.

Paramètre Descriptif Obligatoire
TemplatePath Spécifie le chemin d’accès pour rechercher de manière récursive les modèles Azure Resource Manager. Oui
TemplatePattern Spécifie le nom des fichiers de modèle à mettre en correspondance. Non
CapabilitiesPath Spécifie le chemin d’accès au fichier JSON des fonctionnalités cloud. Oui
IncludeComputeCapabilities Inclut l’évaluation des ressources IaaS, telles que les tailles de machine virtuelle et les extensions de machine virtuelle. Non
IncludeStorageCapabilities Inclut l’évaluation des ressources de stockage, telles que les types de référence SKU. Non
Report Spécifie le nom du rapport HTML généré. Non
Verbose Consigne 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.

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

Étapes suivantes