Esplorare la struttura e lo schema dei modelli di Azure Resource Manager

Completato

Un modello di Azure Resource Manager contiene una definizione in formato JSON di una o più risorse di Azure, oltre a parametri e variabili che facilitano la personalizzazione della configurazione.

La struttura più semplice di un modello è costituita dagli elementi seguenti:

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "",
  "apiProfile": "",
  "parameters": {  },
  "variables": {  },
  "functions": [  ],
  "resources": [  ],
  "outputs": {  }
}
Nome dell'elemento Obbligatorio Descrizione
$schema Percorso del file dello schema JSON (JavaScript Object Notation) che descrive la versione del linguaggio del modello. Il numero di versione usato dipende dall'ambito della distribuzione e dall'editor JSON.

Se usi Visual Studio Code con l'estensione strumenti di Azure Resource Manager, usa la versione più recente per le distribuzioni di gruppi di risorse:
https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#

Altri editor (incluso Visual Studio) potrebbero non essere in grado di elaborare questo schema. Per questi editor, usa:
https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#

Per le distribuzioni della sottoscrizione, usa:
https://schema.management.azure.com/schemas/2018-05-01/subscriptionDeploymentTemplate.json#

Per le distribuzioni di un gruppo di gestione, usa:
https://schema.management.azure.com/schemas/2019-08-01/managementGroupDeploymentTemplate.json#

Per le distribuzioni tenant, usa:
https://schema.management.azure.com/schemas/2019-08-01/tenantDeploymentTemplate.json#
contentVersion Versione del modello (ad esempio 1.0.0.0). Questo elemento accetta tutti i valori. Usare questo valore per documentare le modifiche significative al modello. Quando si distribuiscono risorse tramite il modello, è possibile usare questo valore per assicurarsi che venga usato il modello corretto.
apiProfile No Una versione dell'API che funge da raccolta di versioni delle API per i tipi di risorse. Usare questo valore per evitare di dover specificare le versioni delle API per ogni risorsa nel modello. Quando si specifica una versione del profilo API e non si specifica una versione dell'API per il tipo di risorsa, Resource Manager usa la versione dell'API per il tipo di risorsa definito nel profilo.

La proprietà del profilo API è particolarmente utile quando si distribuisce un modello in ambienti diversi, ad esempio Azure Stack e Azure globale. Usare la versione del profilo API per assicurarsi che il modello usi automaticamente le versioni supportate in entrambi gli ambienti. Per un elenco delle versioni correnti del profilo API e delle versioni delle API delle risorse definite nel profilo, vedere Profilo API.

Per altre informazioni, vedere Tenere sotto controllo le versioni usando i profili API.
parameters No Valori forniti durante la distribuzione per personalizzare la distribuzione di risorse.
variables No Valori usati come frammenti JSON nel modello per semplificare le espressioni di linguaggio del modello.
functions No Funzioni definite dall'utente disponibili nel modello.
resources Tipi di risorse che vengono distribuite o aggiornate in un gruppo di risorse o sottoscrizione.
outputs No Valori restituiti dopo la distribuzione.

Demo facoltativa