Bewakingskosten optimaliseren voor Container Insights
Kubernetes-clusters genereren een grote hoeveelheid gegevens die worden verzameld door Container Insights. Omdat er kosten in rekening worden gebracht voor de opname en retentie van deze gegevens, wilt u uw omgeving configureren om uw kosten te optimaliseren. U kunt de bewakingskosten aanzienlijk verlagen door gegevens te filteren die u niet nodig hebt en door de configuratie van de Log Analytics-werkruimte waar u uw gegevens opslaat, te optimaliseren.
Nadat u uw verzamelde gegevens hebt geanalyseerd en hebt vastgesteld of er gegevens zijn die u verzamelt die u niet nodig hebt, zijn er verschillende opties om gegevens te filteren die u niet wilt verzamelen. Dit varieert van het selecteren uit een set vooraf gedefinieerde kostenconfiguraties om verschillende functies te gebruiken om gegevens te filteren op basis van specifieke criteria. Dit artikel bevat een overzicht van richtlijnen voor het analyseren en optimaliseren van uw gegevensverzameling voor Container Insights.
Uw gegevensopname analyseren
Als u uw beste kansen voor kostenbesparingen wilt identificeren, analyseert u de hoeveelheid gegevens die in verschillende tabellen worden verzameld. Met deze informatie kunt u bepalen welke tabellen de meeste gegevens verbruiken en kunt u weloverwogen beslissingen nemen over het verlagen van de kosten.
U kunt visualiseren hoeveel gegevens in elke werkruimte worden opgenomen met behulp van het Container Insights Usage-runbook , dat beschikbaar is op de werkruimtepagina van een bewaakt cluster.
In het rapport kunt u het gegevensgebruik bekijken op basis van verschillende categorieën, zoals tabel, naamruimte en logboekbron. Gebruik deze verschillende weergaven om te bepalen welke gegevens u niet gebruikt en kunnen worden gefilterd om de kosten te verlagen.
Selecteer de optie om de query te openen in Log Analytics, waar u gedetailleerdere analyses kunt uitvoeren, inclusief het weergeven van de afzonderlijke records die worden verzameld. Bekijk querylogboeken van Container Insights voor aanvullende query's die u kunt gebruiken om uw verzamelde gegevens te analyseren.
In de volgende schermopname ziet u bijvoorbeeld een wijziging in de logboekquery die wordt gebruikt voor Tabel , waarin de gegevens per naamruimte en tabel worden weergegeven.
Verzamelde gegevens filteren
Nadat u gegevens hebt geïdentificeerd die u kunt filteren, gebruikt u verschillende configuratieopties in Container Insights om gegevens te filteren die u niet nodig hebt. Er zijn opties beschikbaar om vooraf gedefinieerde configuraties te selecteren, afzonderlijke parameters in te stellen en aangepaste logboekquery's te gebruiken voor gedetailleerde filters.
Vooraf ingestelde kosten
De eenvoudigste manier om gegevens te filteren, is het gebruik van de vooraf ingestelde kosten in Azure Portal. Elke voorinstelling bevat verschillende sets tabellen die moeten worden verzameld op basis van verschillende bewerkings- en kostenprofielen. De vooraf ingestelde kosten zijn ontworpen om u te helpen uw gegevensverzameling snel te configureren op basis van algemene scenario's.
Tip
Als u uw cluster hebt geconfigureerd voor het gebruik van de Prometheus-ervaring voor Container Insights, kunt u prestatieverzameling uitschakelen omdat prestatiegegevens door Prometheus worden verzameld.
Zie DCR configureren met Azure Portal voor meer informatie over het selecteren van een vooraf ingestelde kosten
Filteropties
Nadat u een geschikte kostenvoorinstelling hebt gekozen, kunt u extra gegevens filteren met behulp van de verschillende methoden in de volgende tabel. Met elke optie kunt u gegevens filteren op basis van verschillende criteria. Wanneer u klaar bent met uw configuratie, moet u alleen gegevens verzamelen die u nodig hebt voor analyse en waarschuwingen.
Filteren op | Beschrijving |
---|---|
Tabellen | Wijzig de DCR handmatig als u afzonderlijke tabellen wilt selecteren om andere tabellen te vullen dan de vooraf ingestelde kostengroepen. U kunt bijvoorbeeld ContainerLogV2 verzamelen, maar geen KubeEvents verzamelen die is opgenomen in dezelfde kostenvoorinstelling. Zie Stream-waarden in DCR voor een lijst met de streams die moeten worden gebruikt in de DCR en gebruik de richtlijnen in . |
Containerlogboeken | ContainerLogV2 slaat de stdout/stderr-records op die zijn gegenereerd door de containers in het cluster. Hoewel u het verzamelen van de hele tabel met behulp van de DCR kunt uitschakelen, kunt u de verzameling stderr- en stdout-logboeken afzonderlijk configureren met behulp van de ConfigMap voor het cluster. Aangezien stdout en stderr instellingen afzonderlijk kunnen worden geconfigureerd, kunt u ervoor kiezen om de ene en niet de andere in te schakelen.Zie Containerlogboeken filteren voor meer informatie over het filteren van containerlogboeken. |
Naamruimte | Naamruimten in Kubernetes worden gebruikt om resources binnen een cluster te groeperen. U kunt gegevens uit resources filteren in specifieke naamruimten die u niet nodig hebt. Met de DCR kunt u alleen prestatiegegevens filteren op naamruimte als u verzameling voor de Perf tabel hebt ingeschakeld. Gebruik ConfigMap om gegevens te filteren op bepaalde naamruimten in stdout en stderr logboeken.Zie Containerlogboeken filteren voor meer informatie over het filteren van logboeken op naamruimte en platformlogboekfiltering (System Kubernetes-naamruimten) voor meer informatie over de systeemnaamruimte. |
Pods en containers | Met aantekeningsfilters kunt u containerlogboeken filteren op basis van aantekeningen die u aanbrengt in de pod. Met behulp van de ConfigMap kunt u opgeven of stdout- en stderr-logboeken moeten worden verzameld voor afzonderlijke pods en containers. Zie Aantekeningen filteren op basis van aantekeningen voor workloads voor meer informatie over het bijwerken van uw ConfigMap en het instellen van aantekeningen in uw pods. |
Transformaties
Met opnametijdtransformaties kunt u een KQL-query toepassen om gegevens in de Azure Monitor-pijplijn te filteren en transformeren voordat deze worden opgeslagen in de Log Analytics-werkruimte. Hiermee kunt u gegevens filteren op basis van criteria die u niet met de andere opties kunt uitvoeren.
U kunt er bijvoorbeeld voor kiezen om containerlogboeken te filteren op basis van het logboekniveau in ContainerLogV2. U kunt een transformatie toevoegen aan uw Container Insights DCR die de functionaliteit in het volgende diagram zou uitvoeren. In dit voorbeeld worden alleen error
gebeurtenissen critical
op niveau verzameld, terwijl andere gebeurtenissen worden genegeerd.
Een alternatieve strategie is om de minder belangrijke gebeurtenissen op te slaan in een afzonderlijke tabel die is geconfigureerd voor basislogboeken. De gebeurtenissen zijn nog steeds beschikbaar voor probleemoplossing, maar met een aanzienlijke kostenbesparing voor gegevensopname.
Zie Gegevenstransformaties in Container Insights voor meer informatie over het toevoegen van een transformatie aan uw Container Insights DCR, inclusief voorbeeld-DCR's met behulp van transformaties.
Prijscategorieën configureren
Basislogboeken in Azure Monitor bieden een aanzienlijke kostenkorting voor het opnemen van gegevens in uw Log Analytics-werkruimte voor gegevens die u af en toe gebruikt voor foutopsporing en probleemoplossing. Tabellen die zijn geconfigureerd voor basislogboeken bieden een aanzienlijke kostenkorting voor gegevensopname in ruil voor kosten voor logboekquery's, wat betekent dat ze ideaal zijn voor gegevens die u nodig hebt, maar die u niet vaak opent.
ContainerLogV2 kan worden geconfigureerd voor basislogboeken die u aanzienlijke kostenbesparingen kunnen bieden als u de gegevens onregelmatig opvraagt. Met behulp van transformaties kunt u gegevens opgeven die moeten worden verzonden naar alternatieve tabellen die zijn geconfigureerd voor basislogboeken. Zie Gegevenstransformaties in Container Insights voor een voorbeeld van deze strategie.
Volgende stappen
Zie Gebruik analyseren in een Log Analytics-werkruimte om te begrijpen wat de kosten waarschijnlijk zijn op basis van recente gebruikspatronen van gegevens die zijn verzameld met Container Insights.