Använda ARM-mallar för att skapa virtuella DevTest Labs-datorer
Du kan använda ARM-mallar (Azure Resource Manager) för att skapa förkonfigurerade virtuella Azure-datorer (VM) i Azure DevTest Labs.
En Azure Resource Manager-mall är en JSON-fil (JavaScript Object Notation) som definierar infrastrukturen och konfigurationen för projektet. Mallen använder deklarativ syntax. Du beskriver den avsedda distributionen utan att skriva sekvensen med programmeringskommandon för att skapa distributionen.
ARM-mallar med en virtuell dator använder resurstypen Microsoft.DevTestLab/labs/virtualmachines . Varje virtuell dator som skapas med den här resurstypen visas som ett separat objekt i labblistan Mina virtuella datorer .
Du kan skapa egna ARM-mallar för en virtuell dator, komma åt den offentliga DevTest Labs GitHub-lagringsplatsen för förkonfigurerade mallar eller ändra befintliga ARM-mallar efter dina behov. Labbanvändare kan använda arm-mallar för att skapa och distribuera virtuella Azure-datorer.
I den här artikeln beskrivs hur du:
- Visa, redigera och spara ARM-mallar för virtuella Azure-datorer.
- Lagra ARM-mallar i källkontrolldatabaser.
- Anslut ARM-malldatabaser till Azure DevTest Labs så att labbanvändare kan komma åt mallarna.
Visa, redigera och spara ARM-mallar för virtuella datorer
Du kan anpassa och använda en ARM-mall från valfri Azure VM-bas för att distribuera mer av samma VM-typ i DevTest Labs.
På labbsidan Översikt väljer du Lägg till i det övre verktygsfältet.
På sidan Välj en bas väljer du den typ av virtuell dator som du vill använda.
På sidan Skapa labbresurs konfigurerar du inställningar och lägger till önskade artefakter i den virtuella malldatorn.
På fliken Avancerade inställningar väljer du Visa ARM-mall.
Kopiera och spara ARM-mallen som ska användas för att skapa fler virtuella datorer.
Om du vill skapa en instans av den virtuella datorn nu väljer du Skapa på fliken Grundläggande inställningar.
Ange förfallodatum för virtuell dator
För scenarier som träning, demonstrationer och utvärderingsversioner kanske du vill ta bort virtuella datorer automatiskt efter ett visst datum så att de inte fortsätter att medföra kostnader. När du skapar en virtuell labbdator från Azure-portalen kan du ange ett förfallodatum genom att ange egenskapen Förfallodatum på fliken Avancerade inställningar . En ARM-mall som definierar expirationDate
egenskapen finns i Skapar en ny virtuell dator i ett labb med ett angivet förfallodatum.
Lagra ARM-mallar i Git-lagringsplatser
Som bästa praxis för infrastruktur som kod och konfiguration som kod lagrar du ARM-mallarna i källkontrollen. DevTest Labs kan läsa in ARM-mallarna direkt från din GitHub- eller Azure Repos-lagringsplats för källkontroll. Sedan kan du använda mallarna under hela versionscykeln, från utveckling till test till produktionsmiljöer.
Använd följande filstruktur för att lagra en ARM-mall på en lagringsplats för källkontroll:
Namnge huvudmallfilen azuredeploy.json.
Om du vill återanvända ARM-mallen måste du uppdatera avsnittet i
parameters
azuredeploy.json. Du kan skapa en parameter.json fil som bara anpassar parametrarna, utan att behöva redigera huvudmallfilen. Ge parameterfilen namnet azuredeploy.parameters.json.I parameterfilen kan du använda parametrarna
_artifactsLocation
och_artifactsLocationSasToken
skapa ettparametersLink
URI-värde för automatisk hantering av kapslade mallar. Mer information om kapslade mallar finns i Distribuera kapslade Azure Resource Manager-mallar för testmiljöer.Du kan definiera metadata som anger mallens visningsnamn och beskrivning i en fil med namnet metadata.json.
{ "itemDisplayName": "<template name>", "description": "<template description>" }
Följande skärmbild visar en typisk ARM-mallmappstruktur på en lagringsplats.
Lägga till malllagringsplatser i labb
Lägg till dina malllagringsplatser i labbet så att alla labbanvändare kan komma åt mallarna.
På labbsidan Översikt väljer du Konfiguration och principer i det vänstra navigeringsfältet.
På sidan Konfiguration och principer väljer du Lagringsplatser under Externa resurser i det vänstra navigeringsfältet.
På skärmen Lagringsplatser finns lagringsplatsen Offentlig artefaktlagringsplats och lagringsplats för offentlig miljö automatiskt för alla labb och ansluter till den offentliga GitHub-lagringsplatsen DevTest Labs. Om dessa lagringsplatser inte är aktiverade för labbet kan du aktivera dem genom att markera kryssrutorna bredvid Lagringsplats för offentlig artefakt och lagringsplats för offentlig miljö och sedan välja Aktivera på den översta menyraden. Mer information finns i Aktivera och konfigurera offentliga miljöer.
Om du vill lägga till din privata ARM-malllagringsplats i labbet väljer du Lägg till i den översta menyraden.
I fönstret Lagringsplatser anger du följande information:
- Namn: Ange ett lagringsplatsnamn som ska användas i labbet.
- Url för Git-klon: Ange Git HTTPS-klonings-URL:en från GitHub eller Azure Repos.
- Gren (valfritt): Ange grenen som har arm-malldefinitionerna.
- Personlig åtkomsttoken: Ange den personliga åtkomsttoken för säker åtkomst till lagringsplatsen.
- Om du vill hämta en token från Azure Repos väljer du Användarinställningar>Personliga åtkomsttoken.
- Om du vill hämta din token från GitHub går du till din profil och väljer Inställningar>Utvecklarinställningar>Personliga åtkomsttoken.
- Mappsökvägar: Ange mappen för ARM-malldefinitionerna i förhållande till Git-klonens URI.
Välj Spara.
Lagringsplatsen visas nu i listan Lagringsplatser för labbet. Användare kan nu använda lagringsplatsens mallar för att skapa DevTest Labs-miljöer för flera virtuella datorer. Labbadministratörer kan använda mallarna för att automatisera labbdistribution och hanteringsuppgifter.
Hur skapar jag flera virtuella datorer från samma mall samtidigt?
Du har två alternativ för att samtidigt skapa flera virtuella datorer från samma mall:
- Du kan använda Azure DevOps Tasks-tillägget.
- Du kan generera en Resource Manager-mall när du skapar en virtuell dator och distribuera Resource Manager-mallen från Windows PowerShell.
- Du kan också ange mer än en instans av en dator som ska skapas när den virtuella datorn skapas. Mer information om hur du skapar flera instanser av virtuella datorer finns i dokumentet om hur du skapar en virtuell labbdator.