Autoskalering og egendefinerte domener
Konfigurer regler for utskalering basert på CPU- og HTTP-kømålinger, knytt et egendefinert domene til webappen, og knytt et kostnadsfritt App Service Managed Certificate.
Autoskalering og egendefinerte domener er en gratis leksjon i Cloud & IT Cert Prep på CoddyKit. Dette er leksjon 3 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Cloud & IT Cert Prep, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Cloud & IT Cert Prep inneholder totalt 4 leksjoner.
Hvorfor automatisk skalering er viktig
Automatisk skalering justerer automatisk antallet App Service-instanser som kjører applikasjonen, basert på etterspørsel i sanntid. Uten automatisk skalering må De dimensjonere for maksimal belastning og betale for ubrukt kapasitet utenom rushtiden. Med automatisk skalering legger Azure til instanser når belastningen øker, og fjerner dem når den synker, noe som optimaliserer både ytelse og kostnader. Automatisk skalering krever Standard-nivået eller høyere.
Utskalering kontra oppskalering
Azure tilbyr to skaleringsdimensjoner. Utskalering (horisontal skalering) legger til flere identiske instanser av appen for å dele belastningen — dette er det automatisk skalering hovedsakelig gjør. Oppskalering (vertikal skalering) går over til en større VM-størrelse med mer CPU og RAM ved å endre SKU-en for App Service-planen. Utskalering foretrekkes av hensyn til robusthet fordi flere instanser kan tåle enkeltstående feil; oppskalering har maskinvarebegrensninger.
# Scale out to 5 instances manually
az appservice plan update \
--name MyAppServicePlan \
--resource-group MyRG \
--number-of-workers 5
# Scale up: change the SKU tier
az appservice plan update \
--name MyAppServicePlan \
--resource-group MyRG \
--sku P2V3Regler og profiler for automatisk skalering
Automatisk skalering i Azure konfigureres gjennom innstillinger for automatisk skalering som er knyttet til en App Service-plan. En innstilling for automatisk skalering inneholder én eller flere profiler (vanlig, fast dato eller gjentakelse), som hver inneholder regler. En regel for utskalering utløses når en måleverdi overskrider en terskel (for eksempel CPU > 70 %), mens en regel for innskalering utløses når verdien faller under en lavere terskel (for eksempel CPU < 30 %). Definer alltid både regler for utskalering og innskalering for å unngå ukontrollert vekst eller unødvendige kostnader.
# Create an autoscale setting with CPU-based rules
az monitor autoscale create \
--name MyAutoscale \
--resource-group MyRG \
--resource MyAppServicePlan \
--resource-type Microsoft.Web/serverfarms \
--min-count 2 \
--max-count 10 \
--count 2
# Add scale-out rule: CPU > 70% for 5 minutes
az monitor autoscale rule create \
--autoscale-name MyAutoscale \
--resource-group MyRG \
--scale out 2 \
--condition 'CpuPercentage > 70 avg 5m'Tidsplanbasert automatisk skalering
Tidsplanbasert automatisk skalering (gjentakelsesprofiler) lar Dem skalere på forhånd for forutsigbare trafikkmønstre. De kan for eksempel skalere ut til 10 instanser hver ukedag kl. 08:00 og skalere inn til 2 kl. 18:00. Ved å kombinere tidsplanbaserte og måleverdibaserte profiler får De det beste fra begge: forhåndssskalert kapasitet for kjente toppbelastninger og en elastisk reaksjon på uventede økninger.
# Add a recurrence profile for weekday peak hours
az monitor autoscale profile create \
--autoscale-name MyAutoscale \
--resource-group MyRG \
--name 'WeekdayPeak' \
--min-count 5 \
--max-count 15 \
--count 5 \
--recurrence week mon tue wed thu fri \
--start 08:00 \
--end 18:00 \
--timezone 'UTC'Nedkjølingsperioder
En nedkjølingsperiode er en forsinkelse etter en skaleringshandling, der ingen ytterligere skalering finner sted. Den hindrer «flapping» — raske, gjentatte utskaleringer eller innskaleringer som utløses av kortvarige topper i måleverdier. Standard nedkjølingsperiode er 5 minutter for utskalering og 5 minutter for innskalering. Angi en lengre nedkjølingsperiode for innskalering (for eksempel 10–15 minutter) slik at instansene får tid til å avslutte aktive tilkoblinger før de fjernes.
# Scale-in rule with 10-minute cooldown
az monitor autoscale rule create \
--autoscale-name MyAutoscale \
--resource-group MyRG \
--scale in 1 \
--condition 'CpuPercentage < 30 avg 10m' \
--cooldown 10Konfigurere et egendefinert domene
App Service-apper får vertsnavnet azurewebsites.net som standard. Hvis De vil bruke Deres eget domene (for eksempel www.contoso.com), legger De til et egendefinert domene i App Service-innstillingene og oppretter de tilsvarende DNS-postene hos domeneleverandøren. De må bekrefte eierskapet ved å opprette en CNAME- eller TXT-post (kalt en bekreftelsespost) i DNS-sonen, og deretter opprette den faktiske rutingsposten av typen CNAME eller A.
# DNS records at your registrar:
# CNAME www MyUniqueWebApp.azurewebsites.net
# TXT asuid.www <verification_id from Azure portal>
# After DNS propagation, add the custom domain in Azure
az webapp config hostname add \
--webapp-name MyUniqueWebApp \
--resource-group MyRG \
--hostname www.contoso.comTLS-sertifikater for egendefinerte domener
Når et egendefinert domene er tilordnet, trenger De et TLS-sertifikat for å aktivere HTTPS. App Service tilbyr tre alternativer: App Service Managed Certificate (gratis, fornyes automatisk og er begrenset til standarddomener), App Service Certificate (kjøpes gjennom Azure og lagres i Key Vault) eller opplasting av tredjepartssertifikat (Deres eget sertifikat fra Let's Encrypt eller en sertifikatutsteder). Modus for kun HTTPS omdirigerer all HTTP-trafikk til HTTPS automatisk.
# Create a free App Service Managed Certificate
az webapp config ssl create \
--name MyUniqueWebApp \
--resource-group MyRG \
--hostname www.contoso.com
# Bind the certificate to enforce HTTPS
az webapp config ssl bind \
--name MyUniqueWebApp \
--resource-group MyRG \
--certificate-thumbprint <THUMBPRINT> \
--ssl-type SNI
# Enforce HTTPS only
az webapp update \
--name MyUniqueWebApp \
--resource-group MyRG \
--https-only trueHTTP-kømåledata for automatisk skalering
Selv om CPU er en vanlig måleverdi for automatisk skalering, er HTTP-kølens lengde ofte et bedre signal for webapplikasjoner. Når køen er lang, venter nye forespørsler fordi instansene er fullt opptatt. Skalering basert på HttpQueueLength oppdager overbelastning raskere enn CPU, siden CPU-belastningen kan variere uten nødvendigvis å indikere ventetid som brukerne merker. Bruk begge måleverdiene sammen for robust automatisk skalering.
# Scale out when HTTP queue length exceeds 100
az monitor autoscale rule create \
--autoscale-name MyAutoscale \
--resource-group MyRG \
--scale out 2 \
--condition 'HttpQueueLength > 100 avg 1m' \
--cooldown 5
# Scale in when queue drops below 10
az monitor autoscale rule create \
--autoscale-name MyAutoscale \
--resource-group MyRG \
--scale in 1 \
--condition 'HttpQueueLength < 10 avg 10m' \
--cooldown 10Varsler for automatisk skalering
Konfigurer varsler for automatisk skalering for å motta e-post- eller webhook-varsler når skaleringshendelser oppstår. Dette hjelper team med å forstå trafikkmønstre og bekrefte at den automatiske skaleringen fungerer som forventet. Varsler konfigureres i varslingsdelen av innstillingen for automatisk skalering og kan sendes til flere e-postadresser og webhook-endepunkter (for integrasjon med Slack, PagerDuty eller egendefinerte verktøy).
# Add email notification to autoscale setting
az monitor autoscale update \
--name MyAutoscale \
--resource-group MyRG \
--add-condition '{"email": {"sendToSubscriptionAdministrator": true, "customEmails": ["ops@contoso.com"]}, "webhooks": []}'Apex-domener og Traffic Manager
Hvis et apex-domene (for eksempel contoso.com uten www) skal knyttes til App Service, kreves det en A-post som peker til App Service-IP-adressen, i tillegg til en TXT-verifiseringspost. Ettersom App Service-IP-adresser kan endres, anbefaler Microsoft å bruke Azure Traffic Manager eller Azure Front Door som mellomledd — apex-domenets CNAME-ekvivalent (ALIAS/ANAME-post) peker til Traffic Manager-profilen, som ruter trafikken til App Service.
# Get the App Service inbound IP (for A record)
az webapp show \
--name MyUniqueWebApp \
--resource-group MyRG \
--query 'inboundIpAddress' -o tsv
# DNS at registrar (apex domain with A record approach)
# A contoso.com <inboundIpAddress>
# TXT asuid <verification_id>Teste autoskaleringsatferd
Etter at De har konfigurert autoskalering, bør De teste at den fungerer som den skal, ved å generere kunstig belastning. Bruk verktøy som Apache JMeter, k6 eller Azure Load Testing til å simulere samtidige brukere. Følg med på måleverdien Instance count for App Service-planen i Azure Monitor for å bekrefte at antallet instanser øker når belastningen øker, og reduseres når belastningen avtar. Dokumenter observert RPS (forespørsler per sekund) per instans for å validere skaleringsgrensene.
# Run a quick load test with curl (basic)
for i in {1..100}; do curl -o /dev/null -s https://www.contoso.com/health & done
wait
# Monitor current instance count
az monitor metrics list \
--resource '/subscriptions/.../providers/Microsoft.Web/serverfarms/MyAppServicePlan' \
--metric 'InstanceCount' \
--interval PT1MHurtigsjekk
Test forståelsen Deres av konseptene fra Microsoft Azure Fundamentals (AZ-900) i denne leksjonen.
Oppsummering av leksjonen
I denne leksjonen har De lært at autoskaleringsregler i App Service-planer legger til eller fjerner instanser basert på utløsere for CPU, HTTP-kø eller tidsplan, at egendefinerte domener krever DNS CNAME-/A-poster samt en TXT-verifiseringspost i DNS-sonen, og at TLS-sertifikater (inkludert kostnadsfrie administrerte sertifikater) aktiverer HTTPS for egendefinerte domener. Neste tema er autentisering og nettverk i App Service.
Lær deg Cloud & IT Cert Prep med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 150
- Leksjoner
- 600
Ofte stilte spørsmål
Er leksjonen «Autoskalering og egendefinerte domener» gratis?
Ja – hele teksten i «Autoskalering og egendefinerte domener» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Cloud & IT Cert Prep-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Cloud & IT Cert Prep inneholder totalt 4 leksjoner.
Hva lærer jeg i «Autoskalering og egendefinerte domener»?
Konfigurer regler for utskalering basert på CPU- og HTTP-kømålinger, knytt et egendefinert domene til webappen, og knytt et kostnadsfritt App Service Managed Certificate. Du øver på Cloud & IT Cert Prep med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Cloud & IT Cert Prep?
Ingen tidligere erfaring er nødvendig. Cloud & IT Cert Prep på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 3 av 4.
Hvor lang tid tar leksjonen «Autoskalering og egendefinerte domener»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Cloud & IT Cert Prep-leksjonen?
Ja. Alle Cloud & IT Cert Prep-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Opprette en App Service-plan og en webapp
- Distribusjonsspor og bytte
- Autoskalering og egendefinerte domener
- App Service-autentisering og nettverk