Skapa en anpassad avbildningsfabrik i Azure DevTest Labs

Den här artikeln visar hur du konfigurerar en anpassad avbildningsfabrik med hjälp av exempelskript som är tillgängliga på Git-lagringsplatsen.

Vad är en avbildningsfabrik?

En avbildningsfabrik är en konfigurations-som-kod-lösning som skapar och distribuerar avbildningar automatiskt regelbundet med alla önskade konfigurationer. Avbildningarna i avbildningsfabriken är alltid uppdaterade och det pågående underhållet är nästan noll när hela processen har automatiserats. Och eftersom alla nödvändiga konfigurationer redan finns i avbildningen sparar det tiden från att manuellt konfigurera systemet efter att en virtuell dator har skapats med basoperativsystemet.

Den viktiga acceleratorn för att få ett utvecklarskrivbord till ett redo tillstånd i DevTest Labs använder anpassade avbildningar. Nackdelen med anpassade avbildningar är att det finns något extra att underhålla i labbet. Utvärderingsversioner av produkter upphör till exempel att gälla med tiden (eller) nyligen släppta säkerhetsuppdateringar tillämpas inte, vilket tvingar oss att uppdatera den anpassade avbildningen med jämna mellanrum. Med en avbildningsfabrik har du en definition av avbildningen incheckad till källkodskontrollen och har en automatiserad process för att skapa anpassade avbildningar baserat på definitionen.

Lösningen möjliggör hastigheten för att skapa virtuella datorer från anpassade avbildningar samtidigt som extra löpande underhållskostnader elimineras. Med den här lösningen kan du automatiskt skapa anpassade avbildningar, distribuera dem till andra DevTest Labs och dra tillbaka de gamla bilderna. Alla Azure PowerShell-skript är fritt tillgängliga och finns här: https://aka.ms/dtlimagefactory.


Översikt över lösningen

Lösningen möjliggör hastigheten för att skapa virtuella datorer från anpassade avbildningar samtidigt som extra löpande underhållskostnader elimineras. Med den här lösningen kan du automatiskt skapa anpassade avbildningar och distribuera dem till andra DevTest Labs. Du använder Azure DevOps (tidigare Visual Studio Team Services) som orkestreringsmotor för att automatisera alla åtgärder i DevTest Labs.

High-level view of the solution.

Det finns ett VSTS-tillägg för DevTest Labs som gör att du kan utföra följande enskilda steg:

  • Skapa anpassad bild
  • Skapa en virtuell dator
  • Ta bort virtuell dator
  • Skapa miljö
  • Radera miljö
  • Fylla i miljön

Att använda DevTest Labs-tillägget är ett enkelt sätt att komma igång med att automatiskt skapa anpassade avbildningar i DevTest Labs.

Det finns en alternativ implementering med PowerShell-skript för ett mer komplext scenario. Med PowerShell kan du automatisera en avbildningsfabrik helt baserat på DevTest Labs som kan användas i din CI/CD-verktygskedja (Continuous Integration and Continuous Delivery). De principer som följs i den här alternativa lösningen är:

  • Vanliga uppdateringar bör inte kräva några ändringar i avbildningsfabriken. (Du kan till exempel lägga till en ny typ av anpassad avbildning, automatiskt dra tillbaka gamla bilder, lägga till en ny "slutpunkt" DevTest Labs för att ta emot anpassade avbildningar och så vidare.)
  • Vanliga ändringar backas upp av källkodskontroll (infrastruktur som kod)
  • DevTest Labs som tar emot anpassade avbildningar kanske inte finns i samma Azure-prenumeration (labb sträcker sig över prenumerationer)
  • PowerShell-skript måste kunna återanvändas så att du kan starta fler fabriker efter behov

Nästa steg

Gå vidare till nästa artikel i det här avsnittet: Kör en avbildningsfabrik från Azure DevOps.