Dela via


Azure-landningszoner – designöverväganden för Bicep-moduler

I den här artikeln beskrivs designöverväganden för den modulariserade Azure-landningszoner (ALZ) – Bicep-lösning som du kan använda för att distribuera och hantera kärnplattformsfunktionerna i azure-landningszonens konceptuella arkitektur enligt beskrivningen i Cloud Adoption Framework (CAF).

Bicep är ett domänspecifikt språk (DSL) som använder deklarativ syntax för att distribuera Azure-resurser. Den har koncis syntax, tillförlitlig typsäkerhet och stöd för återanvändning av kod.

GitHub logo En implementering av den här arkitekturen är tillgänglig på GitHub: Azure-landningszoner (ALZ) – Bicep-implementering. Du kan använda den som utgångspunkt och konfigurera den enligt dina behov.

Kommentar

Det finns implementeringar för flera distributionstekniker , inklusive portalbaserade ARM-mallar och Terraform-moduler. Valet av distributionsteknik bör inte påverka den resulterande distributionen av Azure-landningszoner.

ALZ Bicep Accelerator

Du hittar stegvisa anvisningar om hur du implementerar, automatiserar och underhåller din ALZ Bicep-modul med ALZ Bicep Accelerator.

ALZ Bicep Accelerator-ramverket har utvecklats för att ge slutanvändarna stöd för registrering och distribution av ALZ Bicep med fullfjädrade CI/CD-pipelines, stöd för GitHub Actions och Azure DevOps Pipelines, dedikerat ramverk för att hålla sig synkroniserat med nya ALZ Bicep-versioner och ändra eller lägga till anpassade moduler och ger vägledning för förgreningsstrategi och pipelines för pull-begäranden för linting och validering av Bicep-moduler.

Designa

Diagram showing the bicep modules for deploying Azure landing zones.

Arkitekturen drar nytta av den modulära karaktären hos Azure Bicep och består av flera moduler. Varje modul kapslar in en kärnfunktion i den konceptuella arkitekturen för Azure-landningszoner. Modulerna kan distribueras individuellt, men det finns beroenden att känna till.

Arkitekturen föreslår införandet av orchestrator-moduler för att förenkla distributionsupplevelsen. Orchestrator-modulerna kan användas för att automatisera distributionen av modulerna och kapsla in olika distributionstopologier.

Moduler

Ett grundläggande begrepp i Bicep är användningen av moduler. Med moduler kan du ordna distributioner i logiska grupper. Med moduler kan du förbättra läsbarheten för dina Bicep-filer genom att kapsla in komplex information om distributionen. Du kan också enkelt återanvända moduler för olika distributioner.

Möjligheten att återanvända moduler ger en verklig fördel när du definierar och distribuerar landningszoner. Det möjliggör repeterbara, konsekventa miljöer i kod samtidigt som du minskar den ansträngning som krävs för att distribuera i stor skala.

Lager och mellanlagring

Förutom moduler är Bicep-landningszonens arkitektur strukturerad med hjälp av ett koncept med lager. Lager är grupper av Bicep-moduler som är avsedda att distribueras tillsammans. Dessa grupper utgör logiska steg i implementeringen.

Diagram showing the deployment layers.

En fördel med den här skiktade metoden är möjligheten att lägga till i din miljö stegvis över tid. Du kan till exempel börja med ett litet antal av lagren. Du kan lägga till de återstående lagren i ett senare skede när du är redo.

Modulbeskrivningar

Det här avsnittet innehåller en översikt på hög nivå över kärnmodulerna i den här arkitekturen.

Skikt Modul beskrivning Användbara länkar
Kärna Hanteringsgrupper Hanteringsgrupper är de högsta resurserna i en Azure-klientorganisation. Med hanteringsgrupper kan du enklare hantera dina resurser. Du kan tillämpa principen på hanteringsgruppsnivå och resurser på lägre nivå ärver den principen. Mer specifikt kan du använda följande objekt på hanteringsgruppsnivå som ska ärvas av prenumerationer under hanteringsgruppen:
  • Azure-principer
  • Rolltilldelningar för rollbaserade åtkomstkontroller (RBAC) i Azure
  • Kostnadskontroller

Den här modulen distribuerar hanteringsgruppshierarkin enligt definitionen i den konceptuella arkitekturen för Azure-landningszonen.
Kärna Anpassade principdefinitioner DeployIfNotExists (DINE) eller Ändra principer hjälper till att säkerställa att de prenumerationer och resurser som utgör landningszoner är kompatibla. Politiken underlättar också hanteringen av landningszoner.

Den här modulen distribuerar anpassade principdefinitioner till hanteringsgrupper. Alla kunder kan inte använda DINE- eller Ändra-principer. Om så är fallet för dig ger CAF-vägledning om anpassade principer vägledning.
Kärna Definitioner för anpassad roll Rollbaserad åtkomstkontroll (RBAC) förenklar hanteringen av användarrättigheter i ett system. I stället för att hantera enskilda personers rättigheter bestämmer du vilka rättigheter som krävs för olika roller i systemet. Azure RBAC har flera inbyggda roller. Med anpassade rolldefinitioner kan du skapa anpassade roller för din miljö.

Den här modulen distribuerar anpassade rolldefinitioner. Modulen bör följa CAF-vägledningen om rollbaserad åtkomstkontroll i Azure.
Hantering Loggning, Automation och Sentinel Med Azure Monitor, Azure Automation och Microsoft Sentinel kan du övervaka och hantera din infrastruktur och dina arbetsbelastningar. Azure Monitor är en lösning som gör att du kan samla in, analysera och agera på telemetri från din miljö.

Microsoft Sentinel är en molnbaserad säkerhetsinformation och händelsehantering (SIEM). Det gör att du kan:
  • Samla in – Samla in data i hela infrastrukturen
  • Identifiera – Identifiera hot som tidigare inte identifierades
  • Svara – Svara på legitima hot med inbyggd orkestrering
  • Undersök – Undersöka hot med artificiell intelligens

Azure Automation är ett molnbaserat automatiseringssystem. Den innehåller:
  • Konfigurationshantering – Inventera och spåra ändringar för virtuella Linux- och Windows-datorer och hantera önskad tillståndskonfiguration
  • Uppdateringshantering – Utvärdera Windows- och Linux-systemefterlevnad och skapa schemalagda distributioner för att uppfylla efterlevnad
  • Processautomatisering – Automatisera hanteringsuppgifter

Den här modulen distribuerar de verktyg som krävs för att övervaka, hantera och komma åt hot mot din miljö. Dessa verktyg bör omfatta Azure Monitor, Azure Automation och Microsoft Sentinel.
Anslutning Nätverk Nätverkstopologi är en viktig faktor i distributioner av Azure-landningszoner. CAF fokuserar på två kärnnätverksmetoder:
  • Topologier baserade på Azure Virtual WAN
  • Traditionella topologier

De här modulerna distribuerar nätverkstopologin som du väljer.
Identitet Rolltilldelningar Identitets- och åtkomsthantering (IAM) är den viktigaste säkerhetsgränsen inom molnbaserad databehandling. Med Azure RBAC kan du utföra rolltilldelningar av inbyggda roller eller anpassade rolldefinitioner till säkerhetsobjekt.

Den här modulen distribuerar rolltilldelningar till tjänsthuvudnamn, hanterade identiteter eller säkerhetsgrupper mellan hanteringsgrupper och prenumerationer. Modulen bör följa CAF-vägledningen om azure-identitets- och åtkomsthantering.
Kärna Prenumerationsplacering Prenumerationer som har tilldelats till en hanteringsgrupp ärver:
  • Azure-principer
  • Rolltilldelningar för rollbaserade åtkomstkontroller (RBAC) i Azure
  • Kostnadskontroller

Den här modulen flyttar prenumerationer under lämplig hanteringsgrupp.
Kärna Inbyggda och anpassade principtilldelningar Den här modulen distribuerar azure-landningszonens standardtilldelningar till hanteringsgrupper. Den skapar också rolltilldelningar för systemtilldelade hanterade identiteter som skapats av principer.
Hantering Orchestrator-moduler Orchestrator-moduler kan avsevärt förbättra distributionsupplevelsen. Dessa moduler kapslar in distributionen av flera moduler i en enda modul. Detta döljer komplexiteten för slutanvändaren.

Anpassa Bicep-implementeringen

Implementeringarna av Azure-landningszonen som tillhandahålls som en del av Cloud Adoption Framework passar en mängd olika krav och användningsfall. Det finns dock ofta scenarier där anpassning krävs för att uppfylla specifika affärsbehov.

När plattformslandningszonen har implementerats är nästa steg att distribuera programlandningszoner som gör det möjligt för programteam under landing zones hanteringsgruppen med de skyddsräcken som centrala IT- eller PlatformOps-administratörer behöver. Hanteringsgruppen corp är avsedd för företagsanslutna program, medan online hanteringsgruppen är avsedd för program som främst är offentligt riktade, men som fortfarande kan ansluta till företagsprogram via hubbnätverk i vissa scenarier.

Implementeringen av Bicep Azure-landningszonen kan användas som grund för din anpassade distribution. Det ger dig ett sätt att påskynda implementeringen genom att ta bort behovet av att börja från början på grund av en specifik nödvändig ändring som styr ett färdigt alternativ.

GitHub logo Information om hur du anpassar modulerna finns i GitHub-lagringsplatsens Wiki GitHub: Azure Landing Zones (ALZ) Bicep – Wiki – Konsumentguide. Du kan använda den som utgångspunkt och konfigurera den enligt dina behov.