Gegevensverzameling en kostenoptimalisatie configureren in Container Insights met behulp van een regel voor gegevensverzameling
In dit artikel wordt beschreven hoe u gegevensverzameling in Container Insights configureert met behulp van de regel voor gegevensverzameling (DCR) voor uw Kubernetes-cluster. Dit omvat vooraf ingestelde configuraties voor het optimaliseren van uw kosten. Er wordt een DCR gemaakt wanneer u een cluster onboardt naar Container Insights. Deze DCR wordt door de containeragent gebruikt om gegevensverzameling voor het cluster te definiƫren.
De DCR wordt voornamelijk gebruikt voor het configureren van gegevensverzameling van prestatie- en inventarisgegevens en voor het configureren van kostenoptimalisatie.
Specifieke configuratie die u kunt uitvoeren met de DCR omvat:
- Verzamelings- en naamruimtefilters in- of uitschakelen voor prestatie- en inventarisgegevens.
- Verzamelingsinterval definiƫren voor prestatie- en inventarisgegevens
- Syslog-verzameling in- of uitschakelen
- Logboekschema selecteren
Belangrijk
Voor een volledige configuratie van het verzamelen van gegevens in Container Insights moet mogelijk zowel de DCR als de ConfigMap voor het cluster worden bewerkt, omdat elke methode configuratie van een andere set instellingen toestaat.
Zie Gegevensverzameling configureren in Container Insights met behulp van ConfigMap voor een lijst met instellingen en het proces voor het configureren van gegevensverzameling met behulp van ConfigMap. Klanten mogen hun DCR-resource niet verwijderen of handmatig bewerken.
Vereisten
- AKS-clusters moeten een door het systeem toegewezen of door de gebruiker toegewezen beheerde identiteit gebruiken. Als het cluster een service-principal gebruikt, moet u het cluster bijwerken om een door het systeem toegewezen beheerde identiteit of een door de gebruiker toegewezen beheerde identiteit te gebruiken.
Gegevensverzameling configureren
De DCR die wordt gemaakt wanneer u Container Insights inschakelt, heeft de naam MSCI-cluster-region-cluster-name><<>. U kunt deze bekijken in Azure Portal door de optie Regels voor gegevensverzameling te selecteren in het menu Monitor in Azure Portal. In plaats van de DCR rechtstreeks te wijzigen, moet u een van de onderstaande methoden gebruiken om gegevensverzameling te configureren. Zie parameters voor gegevensverzameling voor meer informatie over de verschillende beschikbare instellingen die door elke methode worden gebruikt.
Waarschuwing
De standaardervaring voor Container Insights is afhankelijk van alle bestaande gegevensstromen. Als u een of meer van de standaardstromen verwijdert, is de Container Insights-ervaring niet beschikbaar en moet u andere hulpprogramma's zoals Grafana-dashboards en logboekquery's gebruiken om verzamelde gegevens te analyseren.
U kunt Azure Portal gebruiken om kostenoptimalisatie in te schakelen op uw bestaande cluster nadat Container Insights is ingeschakeld, of u kunt Container insights inschakelen in het cluster, samen met kostenoptimalisatie.
Selecteer het cluster in Azure Portal.
Selecteer de optie Inzichten in de sectie Bewaking van het menu.
Als Container Insights al is ingeschakeld op het cluster, selecteert u de knop Bewakingsinstellingen . Als dat niet zo is, selecteert u Azure Monitor configureren en raadpleegt u Bewaking inschakelen in uw Kubernetes-cluster met Azure Monitor voor meer informatie over het inschakelen van bewaking.
Voor Kubernetes met AKS en Arc selecteert u Beheerde identiteit gebruiken als u het cluster nog niet hebt gemigreerd naar beheerde identiteitsverificatie.
Selecteer een van de kostenvoorinstellingen die worden beschreven in vooraf ingestelde kosten.
Als u de instellingen wilt aanpassen, klikt u op Verzamelingsinstellingen bewerken. Zie parameters voor gegevensverzameling voor meer informatie over elke instelling. Zie Verzamelde gegevens hieronder voor verzamelde gegevens.
Klik op Configureren om de instellingen op te slaan.
Vooraf ingestelde kosten
Wanneer u Azure Portal gebruikt om kostenoptimalisatie te configureren, kunt u kiezen uit de volgende vooraf ingestelde configuraties. U kunt een van deze selecteren of uw eigen aangepaste instellingen opgeven. Container insights maakt standaard gebruik van de standaardvoorinstelling .
Vooraf ingestelde kosten | Verzamelingsfrequentie | Naamruimtefilters | Syslog-verzameling | Verzamelde gegevens |
---|---|---|---|---|
Standaard | 1 m | Geen | Niet ingeschakeld | Alle standaardtabellen voor containerinzichten |
Geoptimaliseerd voor kosten | 5 m | Sluit kube-system, gatekeeper-system, azure-arc uit | Niet ingeschakeld | Alle standaardtabellen voor containerinzichten |
Syslog | 1 m | Geen | Standaard ingeschakeld | Alle standaardtabellen voor containerinzichten |
Logboeken en gebeurtenissen | 1 m | Geen | Niet ingeschakeld | ContainerLog/ContainerLogV2 KubeEvents KubePodInventory |
Verzamelde gegevens
Met de optie Verzamelde gegevens kunt u de tabellen selecteren die voor het cluster zijn ingevuld. Dit is het equivalent van de parameter bij het uitvoeren van de streams
configuratie met CLI of ARM. Als u een andere optie dan Alle (standaard) selecteert, is de Container Insights-ervaring niet meer beschikbaar en moet u Grafana of andere methoden gebruiken om verzamelde gegevens te analyseren.
Groepering | Tabellen | Opmerkingen |
---|---|---|
Alles (standaard) | Alle standaardtabellen voor containerinzichten | Vereist voor het inschakelen van de standaardvisualisaties van Container Insights |
Prestaties | Prestatie, InsightsMetrics | |
Logboeken en gebeurtenissen | ContainerLog of ContainerLogV2, KubeEvents, KubePodInventory | Aanbevolen als u beheerde prometheus-metrische gegevens hebt ingeschakeld |
Workloads, implementaties en HPA's | InsightsMetrics, KubePodInventory, KubeEvents, ContainerInventory, ContainerNodeInventory, KubeNodeInventory, KubeServices | |
Permanente volumes | InsightsMetrics, KubePVInventory |
Parameters voor gegevensverzameling
In de volgende tabel worden de ondersteunde instellingen voor gegevensverzameling en de naam beschreven die voor elk voor verschillende onboardingopties wordt gebruikt.
Name | Beschrijving |
---|---|
Verzamelingsfrequentie CLI: interval ARM: dataCollectionInterval |
Bepaalt hoe vaak de agent gegevens verzamelt. Geldige waarden zijn 1m - 30m in intervallen van 1 min. De standaardwaarde is 1 min. Als de waarde buiten het toegestane bereik valt, wordt deze standaard ingesteld op 1 m. |
Naamruimtefiltering CLI: namespaceFilteringMode ARM: namespaceFilteringModeForDataCollection |
Opnemen: verzamelt alleen gegevens van de waarden in het veld naamruimten . Uitsluiten: verzamelt gegevens van alle naamruimten, met uitzondering van de waarden in het veld naamruimten . Uit: negeert selecties van naamruimten en verzamelt gegevens op alle naamruimten. |
Naamruimtefiltering CLI: namespaces ARM: namespacesForDataCollection |
Matrix van door komma's gescheiden Kubernetes-naamruimten voor het verzamelen van inventaris- en prestatiegegevens op basis van de naamruimteFilteringMode. Naamruimten = ["kube-system", "default"] met een include-instelling verzamelt bijvoorbeeld alleen deze twee naamruimten. Met de instelling Uitsluiten verzamelt de agent gegevens van alle andere naamruimten, met uitzondering van kube-system en standaard. Met een instelling Uit verzamelt de agent gegevens van alle naamruimten, waaronder kube-system en standaard. Ongeldige en niet-herkende naamruimten worden genegeerd. |
ContainerLogV2 inschakelen CLI: enableContainerLogV2 ARM: enableContainerLogV2 |
Booleaanse vlag om het ContainerLogV2-schema in te schakelen. Als deze optie is ingesteld op true, worden de stdout/stderr-logboeken opgenomen in de tabel ContainerLogV2 . Zo niet, dan worden de containerlogboeken opgenomen in de ContainerLog-tabel , tenzij anders opgegeven in de ConfigMap. Wanneer u de afzonderlijke streams opgeeft, moet u de bijbehorende tabel voor ContainerLog of ContainerLogV2 opnemen. |
Verzamelde gegevens CLI: streams ARM: streams |
Een matrix van containerinzichttabelstromen. Zie de ondersteunde streams hierboven voor tabeltoewijzing. |
Toepasselijke tabellen en metrische gegevens
De instellingen voor verzamelingsfrequentie en naamruimtefiltering zijn niet van toepassing op alle Container Insights-gegevens. De volgende tabellen bevatten de tabellen in de Log Analytics-werkruimte die wordt gebruikt door Container Insights en de metrische gegevens die worden verzameld, samen met de instellingen die op elk van toepassing zijn.
Notitie
Met deze functie worden instellingen geconfigureerd voor alle containerinzichttabellen, met uitzondering van ContainerLog en ContainerLogV2. Als u instellingen voor deze tabellen wilt configureren, werkt u de ConfigMap bij die wordt beschreven in de instellingen voor het verzamelen van agentgegevens.
Tabelnaam | Interval? | Naamruimten? | Opmerkingen |
---|---|---|---|
ContainerInventory | Ja | Ja | |
ContainerNodeInventory | Ja | Nr. | De instelling voor het verzamelen van gegevens voor naamruimten is niet van toepassing omdat Kubernetes Node geen resource met naamruimtebereik is |
KubeNodeInventory | Ja | Nr. | Instelling voor gegevensverzameling voor naamruimten is niet van toepassing op Kubernetes Node is geen resource met een naamruimtebereik |
KubePodInventory | Ja | Ja | |
KubePVInventory | Ja | Ja | |
KubeServices | Ja | Ja | |
KubeEvents | Nr. | Ja | Instelling voor gegevensverzameling voor interval is niet van toepassing op de Kubernetes-gebeurtenissen |
Perf | Ja | Ja | De instelling voor het verzamelen van gegevens voor naamruimten is niet van toepassing op de gerelateerde metrische gegevens van Kubernetes Node, omdat het Kubernetes-knooppunt geen object met een naamruimtebereik is. |
InsightsMetrics | Ja | Ja | Instellingen voor gegevensverzameling zijn alleen van toepassing op de metrische gegevens die de volgende naamruimten verzamelen: container.azm.ms/kubestate, container.azm.ms/pv en container.azm.ms/gpu |
Metrische naamruimte | Interval? | Naamruimten? | Opmerkingen |
---|---|---|---|
Insights.container/nodes | Ja | Nr. | Node is geen resource met naamruimtebereik |
Insights.container/pods | Ja | Ja | |
Insights.container/containers | Ja | Ja | |
Insights.container/persistentvolumes | Ja | Ja |
Waarden streamen
Wanneer u de tabellen opgeeft die moeten worden verzameld met behulp van CLI of ARM, geeft u een stroomnaam op die overeenkomt met een bepaalde tabel in de Log Analytics-werkruimte. De volgende tabel bevat de streamnaam voor elke tabel.
Notitie
Als u bekend bent met de structuur van een regel voor gegevensverzameling, worden de stroomnamen in deze tabel opgegeven in de sectie gegevensstromen van de DCR.
Stream | Tabel containerinzichten |
---|---|
Microsoft-ContainerInventory | ContainerInventory |
Microsoft-ContainerLog | ContainerLog |
Microsoft-ContainerLogV2 | ContainerLogV2 |
Microsoft-ContainerNodeInventory | ContainerNodeInventory |
Microsoft-InsightsMetrics | InsightsMetrics |
Microsoft-KubeEvents | KubeEvents |
Microsoft-KubeMonAgentEvents | KubeMonAgentEvents |
Microsoft-KubeNodeInventory | KubeNodeInventory |
Microsoft-KubePodInventory | KubePodInventory |
Microsoft-KubePVInventory | KubePVInventory |
Microsoft-KubeServices | KubeServices |
Microsoft-Perf | Perf |
Gevolgen voor visualisaties en waarschuwingen
Als u momenteel de bovenstaande tabellen gebruikt voor andere aangepaste waarschuwingen of grafieken, kan het wijzigen van uw instellingen voor gegevensverzameling deze ervaringen verminderen. Als u naamruimten uitsluit of de frequentie van gegevensverzameling verlaagt, controleert u uw bestaande waarschuwingen, dashboards en werkmappen met behulp van deze gegevens.
Als u wilt scannen op waarschuwingen die naar deze tabellen verwijzen, voert u de volgende Azure Resource Graph-query uit:
resources
| where type in~ ('microsoft.insights/scheduledqueryrules') and ['kind'] !in~ ('LogToMetric')
| extend severity = strcat("Sev", properties["severity"])
| extend enabled = tobool(properties["enabled"])
| where enabled in~ ('true')
| where tolower(properties["targetResourceTypes"]) matches regex 'microsoft.operationalinsights/workspaces($|/.*)?' or tolower(properties["targetResourceType"]) matches regex 'microsoft.operationalinsights/workspaces($|/.*)?' or tolower(properties["scopes"]) matches regex 'providers/microsoft.operationalinsights/workspaces($|/.*)?'
| where properties contains "Perf" or properties contains "InsightsMetrics" or properties contains "ContainerInventory" or properties contains "ContainerNodeInventory" or properties contains "KubeNodeInventory" or properties contains"KubePodInventory" or properties contains "KubePVInventory" or properties contains "KubeServices" or properties contains "KubeEvents"
| project id,name,type,properties,enabled,severity,subscriptionId
| order by tolower(name) asc
Volgende stappen
- Zie Gegevensverzameling configureren in Container Insights met behulp van ConfigMap om gegevensverzameling te configureren met behulp van ConfigMap in plaats van de DCR.
Feedback
https://aka.ms/ContentUserFeedback.
Binnenkort beschikbaar: In de loop van 2024 zullen we GitHub-problemen geleidelijk uitfaseren als het feedbackmechanisme voor inhoud en deze vervangen door een nieuw feedbacksysteem. Zie voor meer informatie:Feedback verzenden en weergeven voor