Creare ambienti con più macchine virtuali e risorse PaaS con i modelli di Azure Resource ManagerCreate multi-VM environments and PaaS resources with Azure Resource Manager templates

Il portale di Azure consente di creare e aggiungere una macchina virtuale a un lab.The Azure portal enables you to easily create and add a VM to a lab. Ciò vale per la creazione di una macchina virtuale alla volta.This works well for creating one VM at a time. Tuttavia, se l'ambiente contiene più macchine virtuali, ogni macchina deve essere creata individualmente.However, if the environment contains multiple VMs, each VM has to be individually created. Per scenari quali app Web multilivello o farm di SharePoint, è necessario un meccanismo che consenta la creazione di più macchine virtuali in un unico passaggio.For scenarios such as a multi-tier Web app or a SharePoint farm, a mechanism is needed to allow for the creation of multiple VMs in a single step. I modelli di Azure Resource Manager consentono di definire l'infrastruttura e la configurazione della soluzione di Azure e di distribuire ripetutamente più macchine virtuali in modo coerente.By using Azure Resource Manager templates, you can now define the infrastructure and configuration of your Azure solution and repeatedly deploy multiple VMs in a consistent state. Ciò offre i vantaggi seguenti:This feature provides the following benefits:

  • I modelli di Azure Resource Manager vengono caricati direttamente dal repository di controllo del codice sorgente (GitHub o Team Services Git).Azure Resource Manager templates are loaded directly from your source control repository (GitHub or Team Services Git).
  • Una volta configurato, gli utenti possono creare un ambiente scegliendo un modello di Azure Resource Manager dal portale di Azure, così come avviene con altri tipi di basi per VM.Once configured, your users can create an environment by picking an Azure Resource Manager template from the Azure portal as what they can do with other types of VM bases.
  • È possibile eseguire il provisioning delle risorse di Azure PaaS in un ambiente usando un modello di Azure Resource Manager oltre che le macchine virtuali IaaS.Azure PaaS resources can be provisioned in an environment from an Azure Resource Manager template in addition to IaaS VMs.
  • È possibile tenere traccia del costo dell'ambiente insieme alle singole VM create da altri tipi di base.The cost of environments can be tracked in the lab in addition to individual VMs created by other types of bases.
  • Le risorse di PaaS vengono create e visualizzate nella verifica dei costi. Tuttavia, l'arresto automatico della macchina virtuale non si applica alle risorse di PaaS.PaaS resources are created and will appear in cost tracking; however, VM auto shutdown does not apply to PaaS resources.
  • Gli utenti hanno lo stesso controllo dei criteri delle macchine virtuali per gli ambienti di quello che hanno per le macchine virtuali di un singolo lab.Users have the same VM policy control for environments as they have for single-lab VMs.

Altre informazioni sui numerosi vantaggi offerti dai modelli di Resource Manager per distribuire, aggiornare o eliminare tutte le risorse del lab con una sola operazione.Learn more about the many benefits of using Resource Manager templates to deploy, update, or delete all of your lab resources in a single operation.

Nota

Quando si usa un modello di Resource Manager come base per creare più macchine virtuali lab, occorre tenere presente che ci sono alcune differenze tra la creazione di più macchine virtuali e una singola macchina virtuale.When you use a Resource Manager template as a basis to create more lab VMs, there are some differences to keep in mind whether you are creating Multi-VMs or single-VMs. Use a virtual machine's Azure Resource Manager template (Usare un modello di Azure Resource Manager di una macchina virtuale) spiega più dettagliatamente queste differenze.Use a virtual machine's Azure Resource Manager template explains these differences in greater detail.

Configurare i repository del modello di Azure Resource ManagerConfigure Azure Resource Manager template repositories

Come procedura consigliata nei casi di infrastruttura come codice e configurazione come codice, i modelli di ambiente devono essere gestiti nel controllo del codice sorgente.As one of the best practices with infrastructure-as-code and configuration-as-code, environment templates should be managed in source control. Azure Labs DevTest applica questa procedura e carica tutti i modelli Azure Resource Manager direttamente dai repository VSTS Git o GitHub.Azure DevTest Labs follows this practice and loads all Azure Resource Manager templates directly from your GitHub or VSTS Git repositories. Di conseguenza, i modelli di Resource Manager possono essere usati in tutto il ciclo di rilascio, dall'ambiente di test a quello di produzione.As a result, Resource Manager templates can be used across the entire release cycle, from the test environment to the production environment.

Ci sono un paio di regole da seguire per organizzare i modelli di Azure Resource Manager in un repository:There are a couple of rules to follow to organize your Azure Resource Manager templates in a repository:

  • Il nome del file del modello master deve essere azuredeploy.json.The master template file must be named azuredeploy.json.

    File principali del modello di Azure Resource Manager

  • Se si intende usare valori di parametro definiti in un file di parametri, il nome di tale file deve essere azuredeploy.parameters.json.If you want to use parameter values defined in a parameter file, the parameter file must be named azuredeploy.parameters.json.

  • È possibile usare i parametri _artifactsLocation e _artifactsLocationSasToken per costruire il valori URI parametersLink e consentire a DevTest Labs di gestire automaticamente i modelli nidificati.You can use the parameters _artifactsLocation and _artifactsLocationSasToken to construct the parametersLink URI value, allowing DevTest Labs to automatically manage nested templates. Per altre informazioni, vedere How Azure DevTest Labs makes nested Resource Manager template deployments easier for testing environments (Come Azure DevTest Labs semplifica le distribuzioni di modelli di Resource Manager nidificati negli ambienti di test).See How Azure DevTest Labs makes nested Resource Manager template deployments easier for testing environments for more information.
  • È possibile definire metadati per specificare il nome e la descrizione visualizzati del modello.Metadata can be defined to specify the template display name and description. I metadati deve essere contenuti in un file denominato metadata.json.This metadata must be in a file named metadata.json. Il file di metadati di esempio seguente mostra come specificare il nome e la descrizione visualizzati:The following example metadata file illustrates how to specify the display name and description:
{

"itemDisplayName": "<your template name>",

"description": "<description of the template>"

}

La procedura seguente consente di aggiungere un repository nel lab tramite il portale di Azure.The following steps guide you through adding a repository to your lab using the Azure portal.

  1. Accedere al portale di Azure.Sign in to the Azure portal.
  2. Selezionare Altri servizi e quindi DevTest Labs dall'elenco.Select More Services, and then select DevTest Labs from the list.
  3. Nell'elenco dei lab selezionare il lab desiderato.From the list of labs, select the desired lab.
  4. Nel pannello del lab selezionare Configuration and Policies (Configurazione e criteri).On the lab's blade, select Configuration and Policies.

    Configurazione e criteri

  5. Nell'elenco delle impostazioni Configuration and Policies (Configurazione e criteri) Repository.From the Configuration and Policies settings list, select Repositories. Il pannello Repository elenca i repository aggiunti al lab.The Repositories blade lists the repositories that have been added to the lab. Per tutti i lab viene automaticamente generato un repository denominato Public Repo, che si connette al repository DevTest Labs di GitHub, che contiene diversi elementi di macchina virtuale utilizzabili.A repository named Public Repo is automatically generated for all labs, and connects to the DevTest Labs GitHub repo that contains several VM artifacts for your use.

    Repository pubblico

  6. Selezionare Aggiungi + per aggiungere il repository di modelli di Azure Resource Manager.Select Add+ to add your Azure Resource Manager template repository.

  7. Quando si apre il secondo pannello Repository, immettere le informazioni necessarie come indicato di seguito:When the second Repositories blade opens, enter the necessary information as follows:

    • Nome: immettere il nome del repository usato nel lab.Name - Enter the repository name that is used in the lab.
    • URL clone Git: immettere l'URL del clone Git HTTPS copiato in precedenza da GitHub o da Visual Studio Team Services.Git clone URL - Enter the GIT HTTPS clone URL from GitHub or Visual Studio Team Services.
    • Ramo: immettere il nome del ramo per accedere alle definizioni dei modelli di Azure Resource Manager.Branch - Enter the branch name to access your Azure Resource Manager template definitions.
    • Token di accesso personale: il token di accesso personale usato per accedere in modo sicuro al repository.Personal access token - The personal access token is used to securely access your repository. Per ottenere il token da Visual Studio Team Services, selezionare <YourName> > My profile > Security > Public access token (NomeUtente > Profilo personale > Sicurezza > Token di accesso pubblico).To get your token from Visual Studio Team Services, select <YourName> > My profile > Security > Public access token. Per ottenere il token da GitHub, selezionare l'avatar e quindi selezionare Settings > Public access token (Impostazioni > Token di accesso pubblico).To get your token from GitHub, select your avatar followed by selecting Settings > Public access token.
    • Percorsi delle cartelle: usando uno dei due campi di input, immettere il percorso della cartella che inizia con la barra rovesciata - / - ed è relativo all'URI del clone Git delle definizioni di elemento (primo campo di input) o delle definizioni di modello di Azure Resource Manager.Folder paths - Using one of the two input fields, enter the folder path that starts with a forward slash - / - and is relative to your Git clone URI to either your artifact definitions (first input field) or your Azure Resource Manager template definitions.

      Repository pubblico

  8. Quando tutti i campi obbligatori sono stati immessi e hanno superato la verifica, selezionare Salva.Once all the required fields are entered and pass the validation, select Save.

La sezione successiva illustra come creare ambienti da un modello di Azure Resource Manager.The next section will walk you through creating environments from an Azure Resource Manager template.

Creare un ambiente da un modello di Azure Resource ManagerCreate an environment from an Azure Resource Manager template

Dopo aver configurato un repository di modelli di Azure Resource Manager nel laboratorio, gli utenti del laboratorio possono creare un ambiente usando il portale di Azure, seguendo questa procedura:Once an Azure Resource Manager template repository has been configured in the lab, your lab users can create an environment using Azure portal with the following steps:

  1. Accedere al portale di Azure.Sign in to the Azure portal.
  2. Selezionare Altri servizi e quindi DevTest Labs dall'elenco.Select More Services, and then select DevTest Labs from the list.
  3. Nell'elenco dei lab selezionare il lab desiderato.From the list of labs, select the desired lab.
  4. Nel pannello del lab selezionare Aggiungi+.On the lab's blade, select Add+.
  5. Il pannello Choose a base (Scegli una base) visualizza le immagini di base che è possibile usare con i modelli di Azure Resource Manager prima elencati.The Choose a base blade displays the base images you can use with the Azure Resource Manager templates listed first. Selezionare il modello di Azure Resource Manager desiderato.Select the desired Azure Resource Manager template.

    Scegli una base

  6. Nel pannello Aggiungi, immettere il nome dell'ambiente.On the Add blade, enter the Environment name value. Il nome dell'ambiente è quello visualizzato agli utenti nel laboratorio.The environment name is what is displayed to your users in the lab. I campi di input rimanenti vengono definiti nel modello di Azure Resource Manager.The remaining input fields are defined in the Azure Resource Manager template. Se i valori predefiniti sono definiti nel modello o se è presente il file azuredeploy.parameter.json, i valori predefiniti vengono visualizzati in tali campi di input.If default values are defined in the template or the azuredeploy.parameter.json file is present, default values are displayed in those input fields. Per i parametri di tipo stringa protetta, è possibile usare i segreti archiviati nell'archivio segreto personale del lab.For parameters of type secure string, you can use the secrets stored in the lab’s personal secret store.

    Pannello Aggiungi

    Nota

    Esistono diversi valori di parametro che, anche se specificati, vengono visualizzati come valori vuoti.There are several parameter values that - even if specified - are displayed as empty values. Pertanto, se gli utenti assegnano tali valori ai parametri in un modello di Azure Resource Manager, DevTest Labs non li visualizza; vengono invece mostrati campi di input vuoti nei quali gli utenti del lab devono inserire un valore al momento della creazione dell'ambiente.Therefore, if users assign those values to parameters in an Azure Resource Manager template, DevTest Labs does not display the values; instead showing blank input fields where the lab users need to enter a value when creating the environment.

    • GEN-UNIQUEGEN-UNIQUE
    • GEN-UNIQUE-[N]GEN-UNIQUE-[N]
    • GEN-SSH-PUB-KEYGEN-SSH-PUB-KEY
    • GEN-PASSWORDGEN-PASSWORD
  7. Selezionare Aggiungi per creare l'ambiente.Select Add to create the environment. L'ambiente avvia immediatamente il provisioning con lo stato visualizzato nell'elenco Macchine virtuali.The environment starts provisioning immediately with the status displaying in the My virtual machines list. Un nuovo gruppo di risorse viene creato automaticamente dal lab per eseguire il provisioning di tutte le risorse definite nel modello di Azure Resource Manager.A new resource group is automatically created by the lab to provision all the resources defined in the Azure Resource Manager template.

  8. Dopo aver creato l'ambiente, selezionarlo nell'elenco My virtual machines (Macchine virtuali personali) per aprire il pannello del gruppo delle risorse e cercare tutte le risorse di cui si è eseguito il provisioning nell'ambiente.Once the environment is created, select the environment in the My virtual machines list to open the resource group blade and browse all of the resources provisioned in the environment.

    Elenco delle macchine virtuali

    È possibile anche espandere l'ambiente per visualizzare solo l'elenco di macchine virtuali oggetto del provisioning nell'ambiente.You can also expand the environment to view just the list of VMs that are provisioned in the environment.

    Elenco delle macchine virtuali

  9. Fare clic su uno degli ambienti per visualizzare le azioni disponibili, quali l'applicazione di elementi, il collegamento di dischi dati, la modifica dell'ora di arresto automatico e altro.Click any of the environments to view the available actions - such as applying artifacts, attaching data disks, changing auto-shutdown time, and more.

    Azioni dell'ambiente

Passaggi successiviNext steps