Azure Fundamentals · Lektion

Identifikation og eliminering af spild

Brug anbefalinger fra Azure Cost Management og Advisor til at finde inaktive VM'er, diske uden tilknytning, overdimensionerede tjenester og zombie-ressourcer, og afvikl dem derefter.

Lektion 1 af 413 trin

Identifikation og eliminering af spild er en gratis Azure Fundamentals-lektion på CoddyKit. Dette er lektion 1 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Azure Fundamentals, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Azure Fundamentals-kurset indeholder 4 lektioner i alt.

Skyspild: Den skjulte omkostningsdriver

Undersøgelser viser konsekvent, at organisationer spilder 25–35 % af deres skyforbrug på ressourcer, der er inaktive, overdimensionerede eller glemt. I Azure omfatter almindelige kilder til spild VM'er, der kører døgnet rundt med næsten ingen CPU-anvendelse, ikke-tilknyttede administrerede diske, der er tilbage efter sletning af VM'er, forladte offentlige IP-adresser og ubrugte App Service-planer. At identificere og fjerne dette spild er det første og mest rentable skridt i enhver FinOps-praksis.

Azure Advisor-anbefalinger om omkostninger

Azure Advisor analyserer løbende din ressourceudnyttelse og genererer automatisk anbefalinger om omkostninger. Almindelige anbefalinger omfatter: tilpas størrelsen på eller luk underudnyttede VM'er (under 5 % CPU- eller 2 % hukommelsesanvendelse i 7 dage), køb reserverede instanser til VM'er, der kører konstant, slet ikke-tilknyttede offentlige IP-adresser, og fjern inaktive Application Gateway-instanser. Hver anbefaling viser de estimerede månedlige besparelser, så du kan prioritere efter effekt.

# List Advisor cost recommendations via CLI
az advisor recommendation list \
  --category Cost \
  --query '[].{Resource:resourceName, Impact:impact, Savings:extendedProperties.annualSavingsAmount}' \
  --output table

Find inaktive og underudnyttede VM'er

Azure Monitor indsamler målinger for CPU-procent og netværk ind/ud for hver VM. En VM, der konstant ligger under 5 % CPU, er en oplagt kandidat til størrelsestilpasning eller lukning. Brug funktionen Virtual Machine Insights i Azure Monitor til at se en samlet oversigt over CPU- og hukommelsesudnyttelsen for alle VM'er over 24 timer, 7 dage eller 30 dage. Advisor-anbefalingen for underudnyttede VM'er linker direkte til ydeevnediagrammerne, så du kan bekræfte mønsteret, før du handler.

# Query average CPU for a VM over the last 7 days
az monitor metrics list \
  --resource /subscriptions/<sub>/resourceGroups/myRG/providers/Microsoft.Compute/virtualMachines/myVM \
  --metric 'Percentage CPU' \
  --interval PT1H \
  --start-time 2024-06-01T00:00:00Z \
  --end-time 2024-06-08T00:00:00Z \
  --aggregation Average

Ikke-tilknyttede diske og snapshots

Når en VM slettes uden at vælge at slette dens diske, forbliver de administrerede diske og fortsætter med at medføre omkostninger. I Azure-portalen kan du filtrere Disks efter Disk state: Unattached for at finde disse forladte diske. På samme måde bliver gamle snapshots, der er taget til sikkerhedskopiering eller migrering, ofte glemt. Snapshotlager er billigere end lager til administrerede diske, men et års glemte snapshots på tværs af et stort abonnement kan samlet koste flere tusinde dollars om året.

# Find all unattached managed disks in a subscription
az disk list \
  --query '[?diskState == `Unattached`].{Name:name, RG:resourceGroup, SizeGB:diskSizeGb}' \
  --output table

Forladte offentlige IP-adresser og NIC'er

Der opkræves betaling for offentlige IP-adresser i Azure, selv når de ikke er knyttet til en kørende ressource. Når VM'er eller load balancere slettes, kan deres offentlige IP'er og netværksgrænseflader blive tilbage. Filtrer Public IP Addresses efter Associated to: None i portalen, og slet dem, du ikke længere har brug for. På samme måde kan forladte netværksgrænseflader, der ikke er knyttet til en VM eller tjeneste, fjernes uden problemer. De enkelte omkostninger er små, men løber op på tværs af hundredvis af ressourcer.

# Find unassociated public IP addresses
az network public-ip list \
  --query '[?ipConfiguration == null].{Name:name, RG:resourceGroup, SKU:sku.name}' \
  --output table

Zombie-ressourcer: Staging- og udviklingsmiljøer

Zombie-ressourcer er langvarige staging-, test- eller proof-of-concept-miljøer, der blev oprettet og derefter glemt. I modsætning til inaktive produktions-VM'er kan de have moderat udnyttelse i arbejdstiden, men de tjener ikke længere noget aktivt projekt. Implementer en politik for ressource-tags, der kræver tagsene Environment og Project på alle ressourcer, og planlæg derefter automatiske alarmer for ressourcer, hvor Environment=Dev eller Environment=Test, og som er mere end 90 dage gamle.

# Find resources tagged as Dev that are over 90 days old (approximate via createdTime)
az resource list \
  --tag Environment=Dev \
  --query '[].{Name:name, Type:type, RG:resourceGroup}' \
  --output table

Automatisk lukning af udviklings- og test-VM'er

Azure-VM'er understøtter funktionen Auto-Shutdown, der automatisk stopper en VM på et konfigureret tidspunkt hver dag. Aktivér den på alle udviklings- og test-VM'er for at sikre, at de ikke kører om natten eller i weekenderne. En udviklings-VM, der for eksempel kører døgnet rundt, koster det samme som 24 timer, men en VM, der er konfigureret til automatisk lukning kl. 18 og automatisk start kl. 8 på hverdage, bruger kun 50 timer om ugen i stedet for 168 – en besparelse på cirka 70 % af beregningsomkostningerne.

# Enable auto-shutdown at 18:00 UTC on a dev VM
az vm auto-shutdown \
  --resource-group myRG \
  --name myDevVM \
  --time 1800 \
  --email admin@contoso.com

Azure Cost Management: Afvigelsesregistrering

Azure Cost Management indeholder funktionen Anomaly Detection, der bruger maskinlæring til at identificere uventede stigninger i forbruget. Når omkostningerne for et abonnement eller en ressourcegruppe afviger markant fra de forventede mønstre – for eksempel hvis nogen ved en fejl implementerer en GPU-VM eller glemmer at slette en ExpressRoute-gateway – sender Cost Management en afvigelsesalarm via e-mail. Opsætning af afvigelsesalarmer er en hurtig gevinst, der opdager løbske omkostninger, før de vises på den månedlige regning.

# Create a cost anomaly alert
az costmanagement alert create \
  --name 'AnomalyAlert' \
  --scope '/subscriptions/<subscriptionId>' \
  --type 'Anomaly' \
  --contact-emails 'finance@contoso.com'

Størrelsestilpasning af lager- og databaselag

Alt spild er ikke relateret til beregning. Azure SQL Databases, der er klargjort på niveauet Business Critical, men kun kører simple læsetunge forespørgsler, kan have samme ydeevne på niveauet General Purpose til den halve pris. Blob Storage-data, der sjældent tilgås, bør flyttes fra niveauet Hot til niveauet Cool eller Archive ved hjælp af politikker for livscyklusstyring. Azure Advisor viser anbefalinger om størrelsestilpasning af databaser og lager sammen med anbefalinger om beregning.

# Create a Blob lifecycle policy to move data to Cool tier after 30 days
az storage account management-policy create \
  --account-name mystorageacct \
  --resource-group myRG \
  --policy @- << 'POLICY'
{
  'rules': [{
    'name': 'MoveOldDataToCool',
    'type': 'Lifecycle',
    'definition': {
      'actions': { 'baseBlob': { 'tierToCool': { 'daysAfterModificationGreaterThan': 30 } } },
      'filters': { 'blobTypes': ['blockBlob'] }
    }
  }]
}
POLICY

Oprettelse af en backlog til fjernelse af spild

Betragt omkostningsoptimering som en løbende teknisk praksis, ikke som en engangshændelse. Opret en FinOps-backlog i Azure DevOps eller Jira med opgaver, der hver uge genereres ud fra Advisor-anbefalinger og alarmer om omkostningsafvigelser. Tildel hver spildopgave til det ansvarlige team, og angiv en måldato for løsning. Følg realiserede besparelser i forhold til identificerede besparelser for at måle FinOps-modningen. Planlæg en månedlig omkostningsgennemgang med tekniske ledere og økonomiafdelingen for at holde fokus på at fjerne spild i hele organisationen.

Styring for at forebygge fremtidigt spild

Forebyggelse er mere omkostningseffektiv end afhjælpning. Brug Azure Policy til at afvise oprettelse af dyre VM-SKU'er (f.eks. GPU- eller M-serien) uden godkendelse, kræve tagsene Environment og ExpiryDate på alle ressourcer og automatisk aktivere automatisk lukning på nyoprettede VM'er i udviklingsabonnementer. Kombiner politikkerne med budgetalarmer sat til 80 % og 100 % af den månedlige tildeling, så teams får besked, før overforbrug opstår.

Hurtigtjek

Test din forståelse af begreberne i Microsoft Azure Fundamentals (AZ-900) fra denne lektion.

Opsummering af lektionen

I denne lektion lærte du, at Azure Advisor viser handlingsanvisende omkostningsanbefalinger for inaktive VM'er, ikke-tilknyttede diske og overdimensionerede tjenester, at automatisk lukning af udviklings-VM'er kan reducere beregningsforbruget med 70 %, og at styringspolitikker med tags forhindrer, at fremtidigt spild ophobes. Næste gang ser vi på teknikker til størrelsestilpasning og strategier for automatisk skalering.

Gratis at komme i gang

Lær Azure Fundamentals med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
30
Lektioner
120

Ofte stillede spørgsmål

Er lektionen “Identifikation og eliminering af spild” gratis?

Ja — hele teksten til “Identifikation og eliminering af spild” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Azure Fundamentals-kurset, skal du opgradere til CoddyKit PRO. Azure Fundamentals-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Identifikation og eliminering af spild”?

Brug anbefalinger fra Azure Cost Management og Advisor til at finde inaktive VM'er, diske uden tilknytning, overdimensionerede tjenester og zombie-ressourcer, og afvikl dem derefter. Du øver dig i Azure Fundamentals med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Azure Fundamentals?

Der kræves ingen tidligere erfaring. Azure Fundamentals på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 1 af 4.

Hvor lang tid tager lektionen “Identifikation og eliminering af spild”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Azure Fundamentals-lektion?

Ja. Alle Azure Fundamentals-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Identifikation og eliminering af spild
  2. Korrekt dimensionering og autoskalering
  3. Azure Savings Plans og reservationer
  4. FinOps- og chargeback-modeller
← Tilbage til Azure Fundamentals