Viktiga begrepp för Azure-distributionsmiljöer
I den här artikeln får du lära dig mer om de viktigaste begreppen och komponenterna i Azure Deployment Environments. Den här kunskapen hjälper dig att effektivt distribuera miljöer för dina scenarier.
När du lär dig mer om distributionsmiljöer kan du stöta på komponenter i Microsoft Dev Box, en kompletterande tjänst som delar vissa arkitekturkomponenter. Dev Box ger utvecklare en molnbaserad utvecklingsarbetsstation, kallad dev box, som är konfigurerad med de verktyg de behöver för sitt arbete.
Det här diagrammet visar de viktigaste komponenterna i distributionsmiljöer och hur de relaterar till varandra. Du kan lära dig mer om varje komponent i följande avsnitt.
Utvecklingscenter
Ett utvecklingscenter är en samling projekt som kräver liknande inställningar. Dev Centers gör det möjligt för plattformstekniker att:
- Använd kataloger för att hantera IaC-mallar (infrastruktur som kod) som är tillgängliga för projekten.
- Använd miljötyper för att konfigurera de typer av miljöer som utvecklingsteam kan skapa.
Microsoft Dev Box använder även dev centers för att organisera resurser. En organisation kan använda samma utvecklingscenter för båda tjänsterna.
Projekt
I Distributionsmiljöer representerar ett projekt ett team eller en affärsfunktion inom organisationen. När du associerar ett projekt med ett utvecklingscenter tillämpas alla inställningar för utvecklingscentret automatiskt på projektet.
Varje projekt kan bara associeras med ett utvecklingscenter. Plattformstekniker kan konfigurera miljöer för ett projekt genom att ange vilka miljötyper som är lämpliga för utvecklingsteamet. För att göra miljödefinitioner tillgängliga för ett specifikt utvecklingsteam kan projektadministratörer koppla en katalog till ett projekt.
Om du vill göra det möjligt för utvecklare att skapa egna distributionsmiljöer måste du ge utvecklare åtkomst till projekt genom att tilldela rollen Distributionsmiljöer.
Du kan konfigurera projekt för distributionsmiljöer och projekt för Microsoft Dev Box-resurser i samma utvecklingscenter.
Miljöer
En miljö är en samling Azure-resurser som programmet distribueras till. Om du till exempel vill distribuera ett webbprogram kan du skapa en miljö som består av Azure App Service, Azure Key Vault, Azure Cosmos DB och ett lagringskonto. En miljö kan bestå av både Azure-plattform som en tjänst (PaaS) och IaaS-resurser (infrastruktur som en tjänst), till exempel ett AKS-kluster (Azure Kubernetes Service), virtuella datorer och databaser.
Identiteter
I Azure Deployment Environments använder du hanterade identiteter för att tillhandahålla utökade privilegier. Identiteter kan hjälpa dig att tillhandahålla självbetjäningsfunktioner till dina utvecklingsteam utan att ge dem åtkomst till målprenumerationerna där Azure-resurserna skapas.
Den hanterade identitet som är kopplad till utvecklingscentret eller projektet måste beviljas lämplig åtkomst för att ansluta till katalogerna. Du bör ge deltagare och administratör för användaråtkomst åtkomst till de måldistributionsprenumerationer som har konfigurerats på projektnivå. Tjänsten Azure Deployment Environments använder den specifika hanterade identiteten för att utföra distributionen åt utvecklaren.
Miljötyper för Dev Center
Du kan definiera vilka typer av miljöer som utvecklingsteam kan skapa: till exempel utveckling, testning, sandbox-miljö, förproduktion eller produktion. Azure Deployment Environments ger flexibiliteten att namnge miljötyperna enligt den nomenklatur som företaget använder. Du kan konfigurera inställningar för olika miljötyper baserat på utvecklingsteamens specifika behov.
Projektmiljötyper
Projektmiljötyper är en delmängd av de miljötyper som du konfigurerar för utvecklingscentret. De hjälper dig att förkonfigurera de typer av miljöer som specifika utvecklingsteam kan skapa. Du kan konfigurera målprenumerationen där Azure-resurser skapas per projekt och per miljötyp.
Med projektmiljötyper kan du automatiskt tillämpa rätt uppsättning principer på miljöer och abstrahera azure-styrningsrelaterade begrepp från utvecklingsteamen. Tjänsten ger också flexibiliteten att förkonfigurera:
- Den hanterade identitet som används för att utföra distributionen.
- De åtkomstnivåer som utvecklingsteamen får när en specifik miljö har skapats.
Kataloger
Kataloger hjälper dig att tillhandahålla en uppsättning utvalda IaC-mallar för dina utvecklingsteam för att skapa miljöer. Du kan koppla en katalog till ett utvecklingscenter och göra miljödefinitioner tillgängliga för alla projekt som är associerade med utvecklingscentret. Du kan också koppla en katalog till ett projekt för att tillhandahålla miljödefinitioner till det specifika projektet.
Microsoft tillhandahåller en snabbstartskatalog som innehåller en uppsättning exempelmiljödefinitioner. Du kan koppla snabbstartskatalogen till ett utvecklingscenter eller projekt för att göra dessa miljödefinitioner tillgängliga för utvecklare. Du kan ändra exempelmiljödefinitionerna så att de passar dina behov.
Alternativt kan du bifoga en egen katalog. Du kan koppla antingen en GitHub-lagringsplats eller en Azure DevOps Services-lagringsplats som en katalog.
Distributionsmiljöer söker igenom den angivna mappen på lagringsplatsen för att hitta miljödefinitioner. Dessa miljödefinitioner är tillgängliga för alla projekt som är associerade med utvecklingscentret.
Miljödefinitioner
En miljödefinition är en kombination av en IaC-mall och en miljöfil som fungerar som ett manifest. Mallen definierar miljön och miljöfilen innehåller metadata om mallen. Dina utvecklingsteam använder de objekt som du anger i katalogen för att skapa miljöer i Azure.
Inbyggda roller
Azure Deployment Environments har stöd för tre inbyggda roller:
- Dev Center-projektadministratör: Skapar miljöer och hanterar miljötyperna för ett projekt.
- Användare av distributionsmiljöer: Skapar miljöer baserat på lämplig åtkomst.
- Läsare av distributionsmiljöer: Läser miljöer som andra användare har skapat.
Resurser som delas med Microsoft Dev Box
Azure Deployment Environments och Microsoft Dev Box är kompletterande tjänster som delar vissa arkitekturkomponenter. Utvecklingscenter och projekt är gemensamma för båda tjänsterna, och de hjälper till att organisera resurser i ett företag. Du kan konfigurera projekt för distributionsmiljöer och projekt för Dev Box-resurser i samma utvecklingscenter.
Mer information om de komponenter som är gemensamma för distributionsmiljöer och Dev Box finns i Komponenter som är gemensamma för Microsoft Dev Box- och Azure-distributionsmiljöer.