Beskriv Azure Resource Manager- og Azure ARM-skabeloner
Azure Resource Manager (ARM) er udrulnings- og administrationstjeneste til Azure. Den indeholder et administrationslag, der giver dig mulighed for at oprette, opdatere og slette ressourcer på din Azure-konto. Hver gang du gør noget med dine Azure-ressourcer, er ARM involveret.
Når en bruger sender en anmodning fra et af Azure-værktøjerne, API'erne eller SDK'erne, modtager ARM anmodningen. ARM godkender og godkender anmodningen. ARM sender derefter anmodningen til Azure-tjenesten, som udfører den ønskede handling. Du kan se ensartede resultater og egenskaber i alle de forskellige værktøjer, fordi alle anmodninger håndteres via den samme API.
Fordele ved Azure Resource Manager
Med Azure Resource Manager kan du:
- Administrer din infrastruktur via deklarative skabeloner i stedet for scripts. En Resource Manager-skabelon er en JSON-fil, der definerer, hvad du vil udrulle på Azure.
- Udrul, administrer og overvåg alle ressourcer til din løsning som en gruppe i stedet for at håndtere disse ressourcer individuelt.
- Udrul din løsning igen i hele udviklingslivscyklussen, og hav tillid til, at dine ressourcer udrulles i en ensartet tilstand.
- Definer afhængighederne mellem ressourcer, så de udrulles i den korrekte rækkefølge.
- Anvend adgangskontrol på alle tjenester, fordi RBAC er indbygget integreret i administrationsplatformen.
- Anvend mærker på ressourcer for logisk at organisere alle ressourcerne i dit abonnement.
- Tydeliggør din organisations fakturering ved at få vist omkostninger for en gruppe ressourcer, der deler det samme tag.
Følgende video indeholder en oversigt over Azure Resource Manager.
Infrastruktur som kode
Infrastruktur som kode er et koncept, hvor du administrerer din infrastruktur som kodelinjer. På introduktionsniveau er det ting som at bruge Azure Cloud Shell, Azure PowerShell eller Azure CLI til at administrere og konfigurere dine ressourcer. Når du bliver mere fortrolig med cloudmiljøet, kan du bruge infrastrukturen som kodekoncept til at administrere hele udrulninger ved hjælp af gentagne skabeloner og konfigurationer. ARM-skabeloner og Bicep er to eksempler på brug af infrastruktur som kode med Azure Resource Manager til at vedligeholde dit miljø.
ARM-skabeloner
Ved hjælp af ARM-skabeloner kan du beskrive de ressourcer, du vil bruge i et deklarativt JSON-format. Med en ARM-skabelon bekræftes udrulningskoden, før en kode køres. Dette sikrer, at ressourcerne oprettes og forbindes korrekt. Skabelonen organiserer derefter oprettelsen af disse ressourcer parallelt. Hvis du har brug for 50 forekomster af den samme ressource, oprettes alle 50 forekomster på samme tid.
I sidste ende skal udvikleren, DevOps professional eller it-fagfolk kun definere den ønskede tilstand og konfiguration af hver ressource i ARM-skabelonen, og skabelonen udfører resten. Skabeloner kan endda udføre PowerShell- og Bash-scripts, før eller efter ressourcen er konfigureret.
Fordele ved at bruge ARM-skabeloner
ARM-skabeloner giver mange fordele, når du planlægger at udrulle Azure-ressourcer. Nogle af disse fordele omfatter:
- deklarativ syntaks: ARM-skabeloner giver dig mulighed for at oprette og udrulle en hel Azure-infrastruktur deklarativt. Deklarativ syntaks betyder, at du deklarerer det, du vil installere, men ikke behøver at skrive de faktiske programmeringskommandoer og sekvensen for at installere ressourcerne.
- resultater, der kan gentages,: Udrul gentagne gange din infrastruktur i hele udviklingslivscyklussen, og hav tillid til, at dine ressourcer udrulles på en ensartet måde. Du kan bruge den samme ARM-skabelon til at udrulle flere udviklings-/testmiljøer, vel vidende at alle miljøer er ens.
- Orchestration: Du behøver ikke at bekymre dig om kompleksiteten ved bestillingshandlinger. Azure Resource Manager orkestrerer udrulningen af indbyrdes afhængige ressourcer, så de oprettes i den korrekte rækkefølge. Når det er muligt, udruller Azure Resource Manager ressourcer parallelt, så dine udrulninger afsluttes hurtigere end serielle udrulninger. Du udruller skabelonen via én kommando i stedet for gennem flere essentielle kommandoer.
- Modulfiler: Du kan opdele dine skabeloner i mindre komponenter, der kan genbruges, og knytte dem sammen på udrulningstidspunktet. Du kan også indlejre én skabelon i en anden skabelon. Du kan f.eks. oprette en skabelon til en VM-stak og derefter indlejre skabelonen i skabeloner, der udruller hele miljøer, og den VM-stak installeres konsekvent i hver af miljøskabelonerne.
- Udvidelsesmulighed: Med installationsscripts kan du føje PowerShell- eller Bash-scripts til dine skabeloner. Udrulningsscriptene udvider din mulighed for at konfigurere ressourcer under udrulningen. Et script kan inkluderes i skabelonen eller gemmes i en ekstern kilde og refereres til i skabelonen. Udrulningsscripts giver dig mulighed for at fuldføre konfigurationen af dit komplette miljø i en enkelt ARM-skabelon.
Bicep
Bicep er et sprog, der bruger deklarativ syntaks til at installere Azure-ressourcer. En Bicep-fil definerer infrastrukturen og konfigurationen. ARM udruller derefter dette miljø baseret på din Bicep-fil. Selvom det ligner en ARM-skabelon, som er skrevet i JSON, har Bicep-filer en tendens til at bruge en enklere og mere præcis stil.
Nogle af fordelene ved Bicep er:
- Understøttelse af alle ressourcetyper og API-versioner: Bicep understøtter straks alle prøveversioner og GA-versioner til Azure-tjenester. Så snart en ressourceudbyder introducerer nye ressourcetyper og API-versioner, kan du bruge dem i din Bicep-fil. Du behøver ikke at vente på, at værktøjerne opdateres, før du bruger de nye tjenester.
- Enkel syntaks: Når Bicep-filer sammenlignes med den tilsvarende JSON-skabelon, er de mere præcise og nemmere at læse. Bicep kræver ikke tidligere kendskab til programmeringssprog. Bicep-syntaksen er deklarativ og angiver, hvilke ressourcer og ressourceegenskaber du vil installere.
- resultater, der kan gentages,: Udrul gentagne gange din infrastruktur i hele udviklingslivscyklussen, og hav tillid til, at dine ressourcer udrulles på en ensartet måde. Bicep-filer er idempotent, hvilket betyder, at du kan installere den samme fil mange gange og få de samme ressourcetyper i samme tilstand. Du kan udvikle én fil, der repræsenterer den ønskede tilstand, i stedet for at udvikle mange separate filer til at repræsentere opdateringer.
- Orchestration: Du behøver ikke at bekymre dig om kompleksiteten ved bestillingshandlinger. Resource Manager orkestrerer udrulningen af indbyrdes afhængige ressourcer, så de oprettes i den korrekte rækkefølge. Når det er muligt, udruller Resource Manager ressourcer parallelt, så dine udrulninger afsluttes hurtigere end serielle udrulninger. Du udruller filen via én kommando i stedet for gennem flere essentielle kommandoer.
- Modularity: Du kan opdele din Bicep-kode i håndterbare dele ved hjælp af moduler. Modulet udruller et sæt relaterede ressourcer. Moduler gør det muligt for dig at genbruge kode og forenkle udviklingen. Føj modulet til en Bicep-fil, når du har brug for at installere disse ressourcer.