Compartir a través de


Uso de la herramienta de validación de plantillas en Azure Stack Hub

Compruebe las plantillas de Azure Resource Manager con la herramienta de validación de plantillas. La herramienta comprueba si la plantilla está lista para implementarse en Azure Stack Hub. Puede obtener la herramienta de validación del repositorio de GitHub de herramientas de Azure Stack Hub.

Nota:

La herramienta valida la plantilla de Azure Resource Manager para los tipos de recursos y las versiones de API compatibles en Azure Stack. Sin embargo, la herramienta no valida las propiedades admitidas para cada tipo de recurso.

Información general

Para validar una plantilla, primero debe crear un archivo de funcionalidades en la nube y, a continuación, ejecutar la herramienta de validación. Use los siguientes módulos de PowerShell de las herramientas de Azure Stack Hub:

  • En la carpeta CloudCapabilities : Az.CloudCapabilities.psm1 crea un archivo JSON de funcionalidades en la nube que representa los servicios y versiones en una nube de Azure Stack Hub.
  • En la carpeta TemplateValidator : Az.TemplateValidator.psm1 usa un archivo JSON de funcionalidades en la nube para probar plantillas para la implementación en Azure Stack Hub.

Compilación del archivo de funcionalidades de la nube

Antes de usar el validador de plantillas, ejecute el módulo de PowerShell Az.CloudCapabilities para compilar un archivo JSON.

Nota:

Si actualiza el sistema integrado o agrega nuevos servicios o extensiones virtuales, debe volver a ejecutar este módulo.

  1. Asegúrese de que tiene conectividad con Azure Stack Hub. Estos pasos se pueden realizar desde una VPN para conectarse desde la estación de trabajo.

  2. Importe el módulo Az.CloudCapabilities de PowerShell:

    Import-Module .\CloudCapabilities\Az.CloudCapabilities.psm1
    
  3. Use el cmdlet para recuperar las versiones del Get-CloudCapabilities servicio y crear un archivo JSON de funcionalidades en la nube. Si no especifica -OutputPath, el archivo AzureCloudCapabilities.json se crea en el directorio actual. Use la ubicación real de Azure:

    Get-AzCloudCapability -Location <your location> -Verbose
    

Validación de plantillas

Siga estos pasos para validar plantillas mediante el módulo Az.TemplateValidator de PowerShell. Puede usar sus propias plantillas o usar las plantillas de inicio rápido de Azure Stack Hub.

  1. Importe el módulo Az.TemplateValidator.psm1 de PowerShell:

    cd "c:\AzureStack-Tools-az\TemplateValidator"
    Import-Module .\Az.TemplateValidator.psm1
    
  2. Ejecute el validador de plantilla:

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

El validador muestra advertencias o errores de validación de plantillas en la consola de PowerShell y los escribe en un archivo HTML en el directorio de origen. La captura de pantalla siguiente es un ejemplo de un informe de validación:

Informe de validación de plantillas

Parámetros

El cmdlet de validador de plantilla admite los parámetros siguientes.

Parámetro Descripción Obligatorio
TemplatePath Especifica la ruta de acceso para buscar de forma recursiva plantillas de Azure Resource Manager.
TemplatePattern Especifica el nombre de los archivos de plantilla que se van a coincidir. No
CapabilitiesPath Especifica la ruta de acceso al archivo JSON de funcionalidades en la nube.
IncludeComputeCapabilities Incluye la evaluación de recursos de IaaS, como tamaños de máquina virtual y extensiones de máquina virtual. No
IncludeStorageCapabilities Incluye la evaluación de los recursos de almacenamiento, como los tipos de SKU. No
Report Especifica el nombre del informe HTML generado. No
Verbose Registra errores y advertencias en la consola. No

Ejemplos

En este ejemplo se validan todas las plantillas de inicio rápido de Azure Stack Hub descargadas en el almacenamiento local.

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

Pasos siguientes