Kostnadsoptimering i Azure Monitor

Kostnadsoptimering syftar på sätt att minska onödiga utgifter och förbättra drifteffektiviteten. Du kan avsevärt minska kostnaderna för Azure Monitor genom att förstå dina olika konfigurationsalternativ och möjligheter att minska mängden data som samlas in. Innan du använder den här artikeln bör du se Kostnader och användning för Azure Monitor för att förstå de olika sätt som Azure Monitor debiterar och hur du visar din månadsfaktura.

I den här artikeln beskrivs kostnadsoptimering för Azure Monitor som en del av Azure Well-Architected Framework. Azures välstrukturerade ramverk består av en uppsättning vägledande principer som kan användas för att förbättra kvaliteten på en arbetsbelastning. Ramverket består av fem grundpelare för arkitekturkvalitet:

  • Tillförlitlighet
  • Säkerhet
  • Kostnadsoptimering
  • Driftseffektivitet
  • Prestandaeffektivitet

Azure Monitor-loggar

Checklista för design

  • Ta reda på om du vill kombinera dina driftdata och säkerhetsdata på samma Log Analytics-arbetsyta.
  • Konfigurera prisnivån för mängden data som varje Log Analytics-arbetsyta vanligtvis samlar in.
  • Konfigurera datakvarhållning och arkivering.
  • Konfigurera tabeller som används för felsökning, felsökning och granskning som grundläggande loggar.
  • Begränsa datainsamling från datakällor för arbetsytan.
  • Analysera regelbundet insamlade data för att identifiera trender och avvikelser.
  • Skapa en avisering när datainsamlingen är hög.
  • Överväg ett dagligt tak som ett förebyggande mått för att säkerställa att du inte överskrider en viss budget.
  • Konfigurera aviseringar om Kostnadsrekommendationer för Azure Advisor för Log Analytics-arbetsytor.

Konfigurationsrekommendationer

Rekommendation Förmån
Ta reda på om du vill kombinera dina driftdata och säkerhetsdata på samma Log Analytics-arbetsyta. Eftersom alla data på en Log Analytics-arbetsyta omfattas av Microsoft Sentinel-priser om Sentinel är aktiverat kan det finnas kostnadskonsekvenser för att kombinera dessa data. Mer information om hur du fattar det här beslutet för din miljö att balansera den med kriterier i andra pelare finns i Utforma en Log Analytics-arbetsytestrategi .
Konfigurera prisnivån för mängden data som varje Log Analytics-arbetsyta vanligtvis samlar in. Som standard använder Log Analytics-arbetsytor betala per användning-priser utan minsta datavolym. Om du samlar in tillräckligt med data kan du avsevärt minska kostnaden med hjälp av en åtagandenivå, vilket gör att du kan checka in till ett dagligt minimum av data som samlas in i utbyte mot en lägre ränta. Om du samlar in tillräckligt med data mellan arbetsytor i en enda region kan du länka dem till ett dedikerat kluster och kombinera deras insamlade volym med hjälp av klusterpriser.

Se Kostnadsberäkningar och alternativ för Azure Monitor-loggar för mer information om åtagandenivåer och vägledning för att avgöra vilken som passar bäst för din användningsnivå. Se Användning och uppskattade kostnader för att visa uppskattade kostnader för din användning på olika prisnivåer.
Konfigurera datakvarhållning och arkivering. Det kostar att behålla data på en Log Analytics-arbetsyta utöver standardvärdet 31 dagar (90 dagar om Sentinel är aktiverat på arbetsytan och 90 dagar för Application Insights-data). Överväg dina särskilda krav för att ha data som är lättillgängliga för loggfrågor. Du kan minska kostnaderna avsevärt genom att konfigurera arkiverade loggar, vilket gör att du kan behålla data i upp till sju år och fortfarande komma åt dem ibland med hjälp av sökjobb eller återställa en uppsättning data till arbetsytan.
Konfigurera tabeller som används för felsökning, felsökning och granskning som grundläggande loggar. Tabeller i en Log Analytics-arbetsyta som konfigurerats för grundläggande loggar har en lägre inmatningskostnad i utbyte mot begränsade funktioner och en avgift för loggfrågor. Om du frågar dessa tabeller sällan och inte använder dem för aviseringar kan den här frågekostnaden vara mer än förskjuten av den minskade inmatningskostnaden.
Begränsa datainsamling från datakällor för arbetsytan. Den främsta faktorn för kostnaden för Azure Monitor är mängden data som du samlar in på Log Analytics-arbetsytan, så du bör se till att du inte samlar in fler data som du behöver för att utvärdera hälsotillståndet och prestandan för dina tjänster och program. Mer information om hur du fattar det här beslutet för din miljö som balanserar den med kriterier i andra pelare finns i Utforma en Log Analytics-arbetsytearkitektur .

Kompromiss: Det kan finnas en kompromiss mellan kostnaden och dina övervakningskrav. Du kanske till exempel kan identifiera ett prestandaproblem snabbare med en hög exempelfrekvens, men du kanske vill ha en lägre exempelfrekvens för att spara kostnader. De flesta miljöer har flera datakällor med olika typer av samling, så du måste balansera dina specifika krav med dina kostnadsmål för var och en. Se Kostnadsoptimering i Azure Monitor för rekommendationer om hur du konfigurerar insamling för olika datakällor.
Analysera regelbundet insamlade data för att identifiera trender och avvikelser. Använd Log Analytics-arbetsyteinsikter för att regelbundet granska mängden data som samlas in på din arbetsyta. Förutom att hjälpa dig att förstå mängden data som samlas in av olika källor kommer den att identifiera avvikelser och uppåtgående trender i datainsamling som kan leda till överkostnader. Analysera datainsamling ytterligare med hjälp av metoder i Analysera användning i Log Analytics-arbetsytan för att avgöra om det finns ytterligare konfiguration som kan minska din användning ytterligare. Detta är särskilt viktigt när du lägger till en ny uppsättning datakällor, till exempel en ny uppsättning virtuella datorer eller registrerar en ny tjänst.
Skapa en avisering när datainsamlingen är hög. För att undvika oväntade fakturor bör du meddelas proaktivt när du upplever överdriven användning. Med meddelandet kan du åtgärda eventuella avvikelser före faktureringsperiodens slut.
Överväg ett dagligt tak som ett förebyggande mått för att säkerställa att du inte överskrider en viss budget. Ett dagligt tak inaktiverar datainsamling på en Log Analytics-arbetsyta resten av dagen efter att den konfigurerade gränsen har nåtts. Detta bör inte användas som en metod för att minska kostnaderna enligt beskrivningen i När du ska använda ett dagligt tak.

Om du anger ett dagligt tak ska du, förutom att skapa en avisering när taket nås, även skapa en aviseringsregel som ska meddelas när en viss procentandel har nåtts (till exempel 90 %). Detta ger dig möjlighet att undersöka och åtgärda orsaken till de ökade data innan taket stänger av datainsamlingen.
Konfigurera aviseringar om Kostnadsrekommendationer för Azure Advisor för Log Analytics-arbetsytor. Azure Advisor-rekommendationer för Log Analytics-arbetsytor varnar dig proaktivt när det finns en möjlighet att optimera dina kostnader. Skapa Azure Advisor-aviseringar för dessa kostnadsrekommendationer:
  • Överväg att konfigurera den kostnadseffektiva basic-loggplanen för valda tabeller – Vi har identifierat inmatning på mer än 1 GB per månad till tabeller som är berättigade till den lågkostnadsbaserade grundläggande loggdataplanen. Med den grundläggande loggplanen får du sökfunktioner för felsökning och felsökning till en lägre kostnad.
  • Överväg att ändra prisnivå – Baserat på din aktuella användningsvolym undersöker du hur du ändrar prisnivån (åtagande) för att få rabatt och minska kostnaderna.
  • Överväg att ta bort oanvända återställda tabeller – Du har en eller flera tabeller med återställda data aktiva på din arbetsyta. Om du inte längre använder återställde data tar du bort tabellen för att undvika onödiga avgifter.
  • Datainmatningsavvikelse identifierades – Vi har identifierat en mycket högre inmatningshastighet under den senaste veckan, baserat på din inmatning under de tre föregående veckorna. Notera den här ändringen och den förväntade ändringen av dina kostnader.
Du kan också visa automatiskt genererade rekommendationer genom att välja Översikt> Rekommendationer eller Advisor-rekommendationer från resursmenyn för Log Analytics-arbetsytan.

Azure-resurser

Checklista för design

  • Samla endast in viktiga resursloggdata från Azure-resurser.

Konfigurationsrekommendationer

Rekommendation Förmån
Samla endast in viktiga resursloggdata från Azure-resurser. När du skapar diagnostikinställningar för att skicka resursloggar för dina Azure-resurser till en Log Analytics-databas anger du bara de kategorier som du behöver. Eftersom diagnostikinställningar inte tillåter detaljerad filtrering av resursloggar kan du använda en arbetsytetransformering för att filtrera onödiga data för de resurser som använder en tabell som stöds. Mer information om hur du konfigurerar diagnostikinställningar och använder transformeringar för att filtrera data finns i Diagnostikinställningar i Azure Monitor .

Aviseringar

Checklista för design

  • Aktivitetsloggaviseringar, servicehälsoaviseringar och resurshälsoaviseringar är kostnadsfria.
  • När du använder loggsökningsaviseringar minimerar du aviseringsfrekvensen för loggsökning.
  • När du använder måttaviseringar minimerar du antalet resurser som övervakas.

Konfigurationsrekommendationer

Rekommendation Förmån
Tänk på att aktivitetsloggaviseringar, hälsoaviseringar för tjänsten och aviseringar om resurshälsa är kostnadsfria. Azure Monitor-aktivitetsaviseringar, tjänsthälsoaviseringar och resurshälsoaviseringar är kostnadsfria. Om det du vill övervaka kan uppnås med dessa aviseringstyper använder du dem.
När du använder loggsökningsaviseringar minimerar du aviseringsfrekvensen för loggsökning. När du konfigurerar loggsökningsaviseringar bör du tänka på att ju oftare regelutvärderingen är, desto högre blir kostnaden. Konfigurera dina regler i enlighet med detta.
När du använder måttaviseringar minimerar du antalet resurser som övervakas. Vissa resurstyper stöder måttaviseringsregler som kan övervaka flera resurser av samma typ. För dessa resurstyper bör du tänka på att regeln kan bli dyr om regeln övervakar många resurser. För att minska kostnaderna kan du antingen minska omfattningen för måttaviseringsregeln eller använda aviseringsregler för loggsökning, som är billigare för att övervaka ett stort antal resurser.

Virtuella datorer

Checklista för design

  • Migrera från Log Analytics-agenten till Azure Monitor-agenten för detaljerad datafiltrering.
  • Filtrera data som du inte behöver från agenter.
  • Ta reda på om du ska använda VM-insikter och vilka data som ska samlas in.
  • Minska avsökningsfrekvensen för prestandaräknare.
  • Kontrollera att virtuella datorer inte skickar duplicerade data.
  • Använd Log Analytics-arbetsyteinsikter för att analysera fakturerbara kostnader och identifiera möjligheter att spara kostnader.
  • Migrera din SCOM-miljö till Azure Monitor SCOM Managed Instance.

Konfigurationsrekommendationer

Rekommendation beskrivning
Migrera från Log Analytics-agenten till Azure Monitor-agenten för detaljerad datafiltrering. Om du fortfarande har virtuella datorer med Log Analytics-agenten migrerar du dem till Azure Monitor-agenten så att du kan dra nytta av bättre datafiltrering och använda unika konfigurationer med olika uppsättningar virtuella datorer. Konfigurationen för datainsamling av Log Analytics-agenten görs på arbetsytan, så alla agenter får samma konfiguration. Datainsamlingsregler som används av Azure Monitor-agenten kan justeras efter de specifika övervakningskraven för olika uppsättningar med virtuella datorer. Med Azure Monitor-agenten kan du också använda transformeringar för att filtrera data som samlas in.
Filtrera data som du inte behöver från agenter. Minska kostnaderna för datainmatning genom att filtrera data som du inte använder för aviseringar eller analyser. Se Övervaka virtuella datorer med Azure Monitor: Samla in data för vägledning om data som ska samlas in för olika övervakningsscenarier och Kontrollera kostnader för specifik vägledning om filtrering av data för att minska dina kostnader.
Ta reda på vilka data som ska samlas in med VM-insikter. VM-insikter är en bra funktion för att snabbt komma igång med övervakning av dina virtuella datorer och ger kraftfulla funktioner som map - och prestandatrendvyer. Om du inte använder map-funktionen eller de data som den samlar in bör du inaktivera insamling av processer och beroendedata i konfigurationen av vm-insikter för att spara på datainmatningskostnader.
Minska avsökningsfrekvensen för prestandaräknare. Om du använder en datainsamlingsregel för att skicka prestandadata till din Log Analytics-arbetsyta kan du minska deras avsökningsfrekvens för att minska mängden data som samlas in.
Kontrollera att virtuella datorer inte skickar duplicerade data. Om du har flera hemagenter eller om du skapar liknande regler för datainsamling kontrollerar du att du skickar unika data till varje arbetsyta. Mer information om hur du analyserar dina insamlade data finns i Analysera användning i Log Analytics-arbetsytan för att se till att du inte samlar in dubblettdata. Om du migrerar mellan agenter fortsätter du att använda Log Analytics-agenten tills du migrerar till Azure Monitor-agenten i stället för att använda båda tillsammans om du inte kan se till att var och en samlar in unika data.
Använd Log Analytics-arbetsyteinsikter för att analysera fakturerbara kostnader och identifiera möjligheter att spara kostnader. Log Analytics-arbetsyteinsikter visar de fakturerbara data som samlas in i varje tabell och från varje virtuell dator. Använd den här informationen för att identifiera dina främsta datorer och tabeller eftersom de representerar din bästa möjlighet att minska kostnaderna genom att filtrera data. Använd den här insikts- och loggfrågorna i Analysera användning på Log Analytics-arbetsytan för att ytterligare analysera effekterna av konfigurationsändringar.
Migrera din SCOM-miljö till Azure Monitor SCOM Managed Instance. Migrera din befintliga SCOM-miljö till Azure Monitor SCOM Managed Instance för att stödja hanteringspaket som inte kan ersättas av Azure Monitor. SCOM-hanterad instans tar bort kravet på att underhålla lokala hanteringsservrar och databasservrar, vilket minskar den totala kostnaden för att underhålla SCOM-infrastrukturen.

Containers

Checklista för design

  • Aktivera inte Container Insights-samling med Prometheus-mått.
  • Konfigurera agentinsamling för att ändra datainsamling i Container Insights.
  • Ändra inställningar för insamling av måttdata efter Container Insights.
  • Inaktivera Container Insights-insamling av måttdata om du inte använder containerinsikter i Azure-portalen.
  • Om du inte frågar containerloggtabellen regelbundet eller använder den för aviseringar konfigurerar du den som grundläggande loggar.
  • Begränsa insamling av resursloggar som du inte behöver.
  • Använd resursspecifik loggning för AKS-resursloggar och konfigurera tabeller som grundläggande loggar.
  • Använd OpenCost för att samla in information om dina Kubernetes-kostnader.

Konfigurationsrekommendationer

Rekommendation Förmån
Aktivera inte Container Insights-samling med Prometheus-mått på Log Analytics-arbetsytan om du har aktiverat skrapning av mått med Prometheus. Förutom att skrapa Prometheus-mått från klustret med azure monitor-hanterad tjänst för Prometheus kan du konfigurera Container insights för att samla in Prometheus-mått på din Log Analytics-arbetsyta. Detta är redundant med data i Managed Prometheus och resulterar i ytterligare kostnader.
Konfigurera agenten för att ändra datainsamling i Container Insights. Analysera data som samlas in av Container Insights enligt beskrivningen i Kontrollera inmatning för att minska kostnaderna och justera konfigurationen för att stoppa insamling av data som du inte behöver.
Ändra inställningar för insamling av måttdata efter Container Insights. Mer information om hur du ändrar både hur ofta måttdata samlas in och de namnområden som samlas in av Container Insights finns i Aktivera inställningar för kostnadsoptimering .
Inaktivera Container Insights-insamling av måttdata om du inte använder containerinsikter i Azure-portalen. Containerinsikter samlar in många av samma måttvärden som Managed Prometheus. Du kan inaktivera insamling av dessa mått genom att konfigurera containerinsikter för att endast samla in loggar och händelser enligt beskrivningen i Aktivera inställningar för kostnadsoptimering i Container insights. Den här konfigurationen inaktiverar Container Insights-upplevelsen i Azure-portalen, men du kan använda Grafana för att visualisera Prometheus-mått och Log Analytics för att analysera loggdata som samlas in av Container Insights.
Om du inte frågar containerloggtabellen regelbundet eller använder den för aviseringar konfigurerar du den som grundläggande loggar. Konvertera ditt Container Insights-schema till ContainerLogV2 som är kompatibelt med Basic-loggar och kan ge betydande kostnadsbesparingar enligt beskrivningen i Kontrollera inmatning för att minska kostnaderna.
Begränsa insamling av resursloggar som du inte behöver. Kontrollplansloggar för AKS-kluster implementeras som resursloggar i Azure Monitor. Skapa en diagnostikinställning för att skicka dessa data till en Log Analytics-arbetsyta. Se Samla in kontrollplansloggar för AKS-kluster för rekommendationer om vilka kategorier du bör samla in.
Använd resursspecifik loggning för AKS-resursloggar och konfigurera tabeller som grundläggande loggar. AKS stöder antingen Azure-diagnostikläge eller resursspecifikt läge för resursloggar. Ange resursloggar för att aktivera alternativet att konfigurera tabellerna för grundläggande loggar, vilket ger en reducerad inmatningsavgift för loggar som du bara ibland frågar efter och inte använder för aviseringar.
Använd OpenCost för att samla in information om dina Kubernetes-kostnader. OpenCost är ett cncf-sandbox-projekt med öppen källkod som är leverantörsneutralt för att förstå dina Kubernetes-kostnader och stödja din förmåga att för AKS-kostnadssynlighet. Den exporterar detaljerade kostnadsdata utöver kundspecifika Azure-priser till Azure Storage för att hjälpa klusteradministratören att analysera och kategorisera kostnader.

Programinsikter

Checklista för design

  • Ändra till arbetsytebaserad Application Insights.
  • Använd sampling för att justera mängden data som samlas in.
  • Begränsa antalet Ajax-anrop.
  • Inaktivera onödiga moduler.
  • Föraggregera mått från alla anrop till TrackMetric.
  • Begränsa användningen av anpassade mått där det är möjligt.
  • Se till att du använder uppdaterade SDK:er (Software Development Kits).
  • Begränsa oönskad värdspårning och allmän spårningsloggning med hjälp av loggnivåer.

Konfigurationsrekommendationer

Rekommendation Förmån
Ändra till arbetsytebaserad Application Insights. Kontrollera att dina Application Insights-resurser är arbetsytebaserade. Arbetsytebaserade Application Insights-resurser kan använda nya verktyg för kostnadsbesparingar som grundläggande loggar, åtagandenivåer och kvarhållning efter datatyp och dataarkiv.
Använd sampling för att justera mängden data som samlas in. Sampling är det primära verktyget som du kan använda för att justera mängden data som samlas in av Application Insights. Använd sampling för att minska mängden telemetri som skickas från dina program med minimal förvrängning av mått.
Begränsa antalet Ajax-anrop. Begränsa antalet Ajax-anrop som kan rapporteras i varje sidvy eller inaktivera Ajax-rapportering. Om du inaktiverar Ajax-anrop inaktiverar du även JavaScript-korrelation.
Inaktivera onödiga moduler. Redigera ApplicationInsights.config för att inaktivera samlingsmoduler som du inte behöver. Du kan till exempel bestämma att prestandaräknare eller beroendedata inte krävs.
Föraggregera mått från alla anrop till TrackMetric. Om du anropar TrackMetric i ditt program kan du minska trafiken med hjälp av överbelastningen som accepterar din beräkning av medelvärdet och standardavvikelsen för en batch med mått. Du kan också använda ett föraggregeringspaket.
Begränsa användningen av anpassade mått. Alternativet Application Insights för att aktivera aviseringar för anpassade måttdimensioner kan öka kostnaderna. Om du använder det här alternativet kan du skapa fler föraggregeringsmått.
Se till att du använder uppdaterade SDK:er (Software Development Kits). Tidigare versioner av ASP.NET Core SDK och Worker Service SDK samlar som standard in många räknare som samlats in som anpassade mått. Använd senare versioner för att endast ange nödvändiga räknare.
Begränsa oönskad spårningsloggning. Application Insights har flera möjliga loggkällor. Loggnivåer kan användas för att finjustera och minska spårningsloggtelemetri. Loggning kan också gälla för värden. Kunder som använder Azure Kubernetes Service (AKS) bör till exempel justera kontrollplans- och dataplansloggar. På samma sätt bör kunder som använder Azure-funktioner anpassa loggnivåer och omfång för att optimera loggvolym och kostnader.

Gå vidare