Delen via


Bewaking voor Kubernetes-clusters inschakelen

In dit artikel wordt beschreven hoe u volledige bewaking van uw Kubernetes-clusters inschakelt met behulp van de volgende Azure Monitor-functies:

Met behulp van Azure Portal kunt u alle functies tegelijk inschakelen. U kunt ze ook afzonderlijk inschakelen met behulp van de Azure CLI, azure Resource Manager-sjabloon, Terraform of Azure Policy. Elk van deze methoden wordt beschreven in dit artikel.

Belangrijk

Kubernetes-clusters genereren veel logboekgegevens, wat kan leiden tot aanzienlijke kosten als u niet selectief bent over de logboeken die u verzamelt. Voordat u bewaking voor uw cluster inschakelt, raadpleegt u de volgende artikelen om ervoor te zorgen dat uw omgeving is geoptimaliseerd voor kosten en dat u uw logboekverzameling beperkt tot alleen de gegevens die u nodig hebt:

Ondersteunde clusters

Dit artikel bevat richtlijnen voor onboarding voor de volgende typen clusters. Eventuele verschillen in het proces voor elk type worden vermeld in de relevante secties.

Vereisten

Machtigingen

  • U hebt ten minste inzendertoegang tot het cluster nodig voor onboarding.
  • U hebt bewakingslezer of Inzender voor bewaking nodig om gegevens weer te geven nadat bewaking is ingeschakeld.

Vereisten voor beheerd Prometheus

  • Het cluster moet gebruikmaken van verificatie van beheerde identiteiten.
  • De volgende resourceproviders moeten zijn geregistreerd in het abonnement van het cluster en de Azure Monitor-werkruimte:
    • Microsoft.ContainerService
    • Microsoft.Insights
    • Microsoft.AlertsManagement
    • Microsoft.Monitor
    • De volgende resourceproviders moeten zijn geregistreerd in het abonnement van het Grafana-werkruimteabonnement:
      • Microsoft.Dashboard

Vereisten voor Kubernetes-clusters met Arc

Notitie

De beheerde Prometheus-Arc-Enabled Kubernetes-extensie biedt geen ondersteuning voor de volgende configuraties:

  • Red Hat Openshift-distributies, waaronder Azure Red Hat OpenShift (ARO)
  • Windows-knooppunten

Werkruimtes

In de volgende tabel worden de werkruimten beschreven die vereist zijn voor de ondersteuning van beheerde Prometheus- en containerinzichten. U kunt elke werkruimte maken als onderdeel van het onboardingproces of een bestaande werkruimte gebruiken. Zie Een Log Analytics-werkruimtearchitectuur ontwerpen voor hulp bij het aantal werkruimten dat moet worden gemaakt en waar ze moeten worden geplaatst.

Functie Werkplek Opmerkingen
Beheerd Prometheus Azure Monitor-werkruimte Contributor toestemming is voldoende voor het inschakelen van de invoegtoepassing om gegevens te verzenden naar de Azure Monitor-werkruimte. U hebt toestemming op Owner niveau nodig om uw Azure Monitor-werkruimte te koppelen zodat u de metrics kunt bekijken in Azure Managed Grafana. Dit is vereist omdat de gebruiker die de onboardingstap uitvoert, de rol Azure Managed Grafana System Identity Monitoring Reader in de Azure Monitor-werkruimte moet kunnen geven om een query uit te voeren op de metrische gegevens.
Containeranalyse Log Analytics-werkruimte U kunt een cluster koppelen aan een Log Analytics-werkruimte in een ander Azure-abonnement in dezelfde Microsoft Entra-tenant, maar u moet de Azure CLI of een Azure Resource Manager-sjabloon gebruiken. U kunt deze configuratie momenteel niet uitvoeren met Azure Portal.

Als u een bestaand cluster verbindt met een Log Analytics-werkruimte in een ander abonnement, moet de Resourceprovider Microsoft.ContainerService zijn geregistreerd in het abonnement met de Log Analytics-werkruimte. Zie Resourceprovider registreren voor meer informatie.

Zie Regiotoewijzingen die worden ondersteund door Container Insights voor een lijst met ondersteunde toewijzingsparen die moeten worden gebruikt voor de standaardwerkruimte.
Beheerde Grafana Azure Managed Grafana-werkruimte Koppel uw Grafana-werkruimte aan uw Azure Monitor-werkruimte om de prometheus-metrische gegevens die zijn verzameld van uw cluster beschikbaar te maken voor Grafana-dashboards.

Prometheus en Grafana inschakelen

Gebruik een van de volgende methoden om scraping van prometheus-metrische gegevens uit uw cluster in te schakelen en Managed Grafana in te schakelen om de metrische gegevens te visualiseren. Zie Een Grafana-werkruimte koppelen voor opties om uw Azure Monitor-werkruimte en Azure Managed Grafana-werkruimte te verbinden.

Notitie

Als u één Azure Monitor-resource hebt die privé is gekoppeld, werkt prometheus-activering niet als het cluster en de Azure Monitor-werkruimte zich in verschillende regio's bevinden. De configuratie die nodig is voor de Prometheus-invoegtoepassing is niet beschikbaar voor meerdere regio's vanwege de beperking voor privékoppelingen. U kunt dit oplossen door een nieuwe DCE te maken in de clusterlocatie en een nieuwe DCRA (koppeling) in dezelfde clusterregio. Koppel de nieuwe DCE aan het cluster en noem de nieuwe koppeling (DCRA) als configurationAccessEndpoint. Zie Private Link inschakelen voor Kubernetes-bewaking in Azure Monitor voor volledige instructies over het configureren van de DC's die zijn gekoppeld aan uw Azure Monitor-werkruimte voor het gebruik van een Private Link voor gegevensopname.

Inschakelen met CLI

Als u in de volgende opdrachten geen bestaande Azure Monitor-werkruimte opgeeft, wordt de standaardwerkruimte voor de resourcegroep gebruikt. Als er nog geen standaardwerkruimte in de regio van het cluster bestaat, wordt er een met een naam in de indeling DefaultAzureMonitorWorkspace-<mapped_region> gemaakt in een resourcegroep met de naam DefaultRG-<cluster_region>.

Vereisten

  • Az CLI-versie van 2.49.0 of hoger is vereist.
  • De aks-preview-extensie moet worden verwijderd uit AKS-clusters met behulp van de opdracht az extension remove --name aks-preview.
  • De extensie k8s-extension moet worden geïnstalleerd met behulp van de opdracht az extension add --name k8s-extension.
  • De k8s-extension versie 1.4.1 of hoger is vereist.

Optionele parameters

Elk van de opdrachten voor AKS en Arc-Enabled Kubernetes staat de volgende optionele parameters toe. De parameternaam is voor elke parameter anders, maar het gebruik ervan is hetzelfde.

Parameter Naam en beschrijving
Aantekeningssleutels AKS: --ksm-metric-annotations-allow-list
Boog: --AzureMonitorMetrics.KubeStateMetrics.MetricAnnotationsAllowList

Komma-gescheiden lijst van Kubernetes-aantekeningensleutels die in de metriek van de resource kube_resource_annotations worden gebruikt. Kube_pod_annotations is bijvoorbeeld de annotatiemetriek voor de pods-resource. Deze metrische waarde bevat standaard alleen naam- en naamruimtelabels. Als u meer aantekeningen wilt opnemen, geeft u een lijst met resourcenamen op in hun meervoudvorm en kubernetes-annotatiesleutels die u wilt toestaan. Er kan één * worden opgegeven voor elke resource om aantekeningen toe te staan, maar dit heeft ernstige prestatie-implicaties. Bijvoorbeeld: pods=[kubernetes.io/team,...],namespaces=[kubernetes.io/team],....
Label sleutels AKS: --ksm-metric-labels-allow-list
Boog: --AzureMonitorMetrics.KubeStateMetrics.MetricLabelsAllowlist

Door komma's gescheiden lijst met aanvullende Kubernetes-labelsleutels die worden gebruikt in de metriek van kube_resource_labels van de resource. Kube_pod_labels is de labelmetriek voor bijvoorbeeld de pods-resource. Deze metrische waarde bevat standaard alleen naam- en naamruimtelabels. Als u meer labels wilt opnemen, geeft u een lijst op met resourcenamen in hun meervoudsvorm en Kubernetes-labelsleutels die u voor hen wilt toestaan. Een enkel * kan voor elke resource worden verstrekt om alle labels toe te staan, maar dit heeft ernstige prestatie-implicaties. Bijvoorbeeld: pods=[app],namespaces=[k8s-label-1,k8s-label-n,...],....
Opnameregels AKS: --enable-windows-recording-rules

Hiermee kunt u de opnameregelgroepen inschakelen die vereist zijn voor de juiste werking van de Windows-dashboards.

AKS-cluster

Gebruik de -enable-azure-monitor-metrics optie az aks create of az aks update (afhankelijk van of u een nieuw cluster maakt of een bestaand cluster bijwerkt) om de invoegtoepassing met metrische gegevens te installeren die prometheus-metrische gegevens scrapt.

### Use default Azure Monitor workspace
az aks create/update --enable-azure-monitor-metrics --name <cluster-name> --resource-group <cluster-resource-group>

### Use existing Azure Monitor workspace
az aks create/update --enable-azure-monitor-metrics --name <cluster-name> --resource-group <cluster-resource-group> --azure-monitor-workspace-resource-id <workspace-name-resource-id>

### Use an existing Azure Monitor workspace and link with an existing Grafana workspace
az aks create/update --enable-azure-monitor-metrics --name <cluster-name> --resource-group <cluster-resource-group> --azure-monitor-workspace-resource-id <azure-monitor-workspace-name-resource-id> --grafana-resource-id  <grafana-workspace-name-resource-id>

### Use optional parameters
az aks create/update --enable-azure-monitor-metrics --name <cluster-name> --resource-group <cluster-resource-group> --ksm-metric-labels-allow-list "namespaces=[k8s-label-1,k8s-label-n]" --ksm-metric-annotations-allow-list "pods=[k8s-annotation-1,k8s-annotation-n]"

Arc-ingeschakelde cluster

### Use default Azure Monitor workspace
az k8s-extension create --name azuremonitor-metrics --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers.Metrics

## Use existing Azure Monitor workspace
az k8s-extension create --name azuremonitor-metrics --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers.Metrics --configuration-settings azure-monitor-workspace-resource-id=<workspace-name-resource-id>

### Use an existing Azure Monitor workspace and link with an existing Grafana workspace
az k8s-extension create --name azuremonitor-metrics --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers.Metrics --configuration-settings azure-monitor-workspace-resource-id=<workspace-name-resource-id> grafana-resource-id=<grafana-workspace-name-resource-id>

### Use optional parameters
az k8s-extension create --name azuremonitor-metrics --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers.Metrics --configuration-settings azure-monitor-workspace-resource-id=<workspace-name-resource-id> grafana-resource-id=<grafana-workspace-name-resource-id> AzureMonitorMetrics.KubeStateMetrics.MetricAnnotationsAllowList="pods=[k8s-annotation-1,k8s-annotation-n]" AzureMonitorMetrics.KubeStateMetrics.MetricLabelsAllowlist "namespaces=[k8s-label-1,k8s-label-n]"

De volgende aanvullende optionele parameters zijn beschikbaar voor clusters met Azure Arc:

Parameter Beschrijving Verstek Instelling voor Arc-cluster stroomopwaarts
ClusterDistribution De distributie van het cluster. Azure.Cluster.Distribution ja
CloudEnvironment De cloudomgeving voor het cluster. Azure.Cluster.Cloud ja
MountCATrustAnchorsDirectory Of de CA trust anchors-directory moet worden gekoppeld. true Nee
MountUbuntuCACertDirectory Of u de ca-certificaatmap van Ubuntu wilt koppelen. true tenzij een aks_edge distributie. Nee

Containerinzichten inschakelen

Gebruik een van de volgende methoden om Container Insights in te schakelen in uw cluster. Zodra dit is voltooid, raadpleegt u Agentgegevensverzameling configureren voor Container Insights om uw configuratie aan te passen om ervoor te zorgen dat u niet meer gegevens verzamelt dan u nodig hebt.

Notitie

Als u één Azure Monitor-resource hebt die privé is gekoppeld, werkt containerinzichten niet via Azure Portal. Zie Private Link inschakelen voor Kubernetes-bewaking in Azure Monitor voor volledige instructies voor het configureren van Container Insights met Private Link.

Gebruik een van de volgende opdrachten om bewaking van uw AKS- en Arc-clusters in te schakelen. Als u geen bestaande Log Analytics-werkruimte opgeeft, wordt de standaardwerkruimte voor de resourcegroep gebruikt. Als er nog geen standaardwerkruimte bestaat in de regio van het cluster, wordt er een gemaakt met een naam in de indeling DefaultWorkspace-<GUID>-<Region>.

Vereisten

  • Azure CLI versie 2.43.0 of hoger
  • Verificatie van beheerde identiteit is standaard in CLI versie 2.49.0 of hoger.
  • Azure k8s-extension versie 1.3.7 of hoger
  • Verificatie van beheerde identiteit is de standaardwaarde in k8s-extension versie 1.43.0 of hoger.
  • Verificatie van beheerde identiteit wordt niet ondersteund voor Arc-ingeschakelde Kubernetes-clusters met ARO (Azure Red Hat Openshift) of Windows-knooppunten. Gebruik verouderde verificatie.
  • Voor CLI-versie 2.54.0 of hoger wordt het schema voor logboekregistratie geconfigureerd voor ContainerLogV2 met behulp van ConfigMap.

Notitie

U kunt het ContainerLogV2-schema voor een cluster inschakelen met behulp van de DCR (Data Collection Rule) of ConfigMap van het cluster. Als beide instellingen zijn ingeschakeld, heeft de ConfigMap voorrang. Stdout- en stderr-logbestanden worden alleen opgenomen in de ContainerLog-tabel wanneer zowel de DCR als de ConfigMap expliciet zijn uitgeschakeld.

AKS-cluster

### Use default Log Analytics workspace
az aks enable-addons --addon monitoring --name <cluster-name> --resource-group <cluster-resource-group-name>

### Use existing Log Analytics workspace
az aks enable-addons --addon monitoring --name <cluster-name> --resource-group <cluster-resource-group-name> --workspace-resource-id <workspace-resource-id>

### Use legacy authentication
az aks enable-addons --addon monitoring --name <cluster-name> --resource-group <cluster-resource-group-name> --workspace-resource-id <workspace-resource-id> --enable-msi-auth-for-monitoring false

Voorbeeld

az aks enable-addons --addon monitoring --name "my-cluster" --resource-group "my-resource-group" --workspace-resource-id "/subscriptions/my-subscription/resourceGroups/my-resource-group/providers/Microsoft.OperationalInsights/workspaces/my-workspace"

Cluster met Arc

### Use default Log Analytics workspace
az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers

### Use existing Log Analytics workspace
az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings logAnalyticsWorkspaceResourceID=<workspace-resource-id>

### Use managed identity authentication (default as k8s-extension version 1.43.0)
az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings amalogs.useAADAuth=true

### Use advanced configuration settings
az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings  amalogs.resources.daemonset.limits.cpu=150m amalogs.resources.daemonset.limits.memory=600Mi amalogs.resources.deployment.limits.cpu=1 amalogs.resources.deployment.limits.memory=750Mi

### With custom mount path for container stdout & stderr logs
### Custom mount path not required for Azure Stack Edge version > 2318. Custom mount path must be /home/data/docker for Azure Stack Edge cluster with version <= 2318
az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings amalogs.logsettings.custommountpath=<customMountPath>

Zie de sectie over resourceaanvragen en limieten van het Helm-chart voor de beschikbare configuratie-instellingen.

Voorbeeld

az k8s-extension create --name azuremonitor-containers --cluster-name "my-cluster" --resource-group "my-resource-group" --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings logAnalyticsWorkspaceResourceID="/subscriptions/my-subscription/resourceGroups/my-resource-group/providers/Microsoft.OperationalInsights/workspaces/my-workspace"

Arc-ingeschakelde cluster met doorstuurproxy

Als het cluster is geconfigureerd met een doorstuurproxy, worden proxy-instellingen automatisch toegepast op de extensie. In het geval van een cluster met AMPLS + proxy moet de proxyconfiguratie worden genegeerd. Installeer de extensie met de configuratie amalogs.ignoreExtensionProxySettings=true.

az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings amalogs.ignoreExtensionProxySettings=true

Arc-ingeschakelde cluster met ARO-, OpenShift- of Windows-knooppunten

Verificatie van beheerde identiteit wordt niet ondersteund voor Arc-enabled Kubernetes-clusters met ARO (Azure Red Hat OpenShift), OpenShift of Windows-knooppunten. Gebruik verouderde authenticatie door amalogs.useAADAuth=false te specificeren zoals in het volgende voorbeeld.

az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings amalogs.useAADAuth=false

Extensie-exemplaar verwijderen

Met de volgende opdracht wordt alleen het extensie-exemplaar verwijderd, maar wordt de Log Analytics-werkruimte niet verwijderd. De gegevens in de Log Analytics-resource blijven intact.

az k8s-extension delete --name azuremonitor-containers --cluster-type connectedClusters --cluster-name <cluster-name> --resource-group <resource-group>

Volledige bewaking inschakelen met Azure Portal

Nieuw AKS-cluster (Prometheus, Container Insights en Grafana)

Wanneer u een nieuw AKS-cluster maakt in Azure Portal, kunt u Prometheus, Container insights en Grafana inschakelen op het tabblad Bewaking. Controleer of u de selectievakjes Containerlogboeken inschakelen, Prometheus-metrische gegevens inschakelen en Grafana inschakelt.

Schermopname van het tabblad Bewaking voor een nieuw AKS-cluster.

Bestaand cluster (Prometheus, Container-inzichten en Grafana)

  1. Navigeer naar uw cluster in Azure Portal.

  2. Selecteer in het servicemenu onder Bewaking de optie Bewaking configureren van inzichten>.

  3. Containerinzichten is al ingeschakeld. Selecteer de selectievakjes Prometheus-metrieken inschakelen en Grafana inschakelen. Als u een bestaande Azure Monitor-werkruimte en Grafana-werkruimte hebt, worden deze voor u geselecteerd.

  4. Selecteer Geavanceerde instellingen als u alternatieve werkruimten wilt selecteren of nieuwe werkruimten wilt maken. Met de instelling Kostenvoorinstellingen kunt u de standaardgegevens van collecties wijzigen om uw bewakingskosten te verlagen. Zie Instellingen voor kostenoptimalisatie inschakelen in Container Insights voor meer informatie.

  5. Selecteer Configureren.

Bestaand cluster (Prometheus alleen)

  1. Navigeer naar uw cluster in Azure Portal.

  2. Selecteer in het servicemenu onder Bewaking de optie Bewaking configureren van inzichten>.

  3. Schakel het selectievakje Prometheus-metriek inschakelen in.

  4. Selecteer Geavanceerde instellingen als u alternatieve werkruimten wilt selecteren of nieuwe werkruimten wilt maken. Met de instelling Kostenvoorinstellingen kunt u de standaardinstellingen voor verzamelingen wijzigen om de bewakingskosten te verlagen.

  5. Selecteer Configureren.

Windows-metriekverzameling inschakelen (preview)

Notitie

Er is geen CPU-/geheugenlimiet in windows-exporter-daemonset.yaml, waardoor de Windows-knooppunten mogelijk overbelast kunnen raken.
Zie Resourcereservering voor meer informatie

Tijdens het implementeren van workloads stelt u resourcegeheugen- en CPU-limieten in voor containers. Dit trekt ook af van NodeAllocatable en helpt de scheduler voor het hele cluster om te bepalen welke pods op welke knooppunten moeten worden opgeslagen. Het plannen van pods zonder limieten kan de Windows-knooppunten overvoorzien en in extreme gevallen kan het de knooppunten ongezond maken.

Vanaf versie 6.4.0-main-02-22-2023-3ee44b9e van de beheerde Prometheus-invoegtoepassingscontainer (prometheus_collector) is de verzameling van Windows-metrieken ingeschakeld voor AKS-clusters. De onboarding voor de Azure Monitor Metriek-invoegtoepassing stelt de Windows DaemonSet-pods in staat om op uw node-pools te draaien. Zowel Windows Server 2019 als Windows Server 2022 worden ondersteund. Volg deze stappen om de pods in te schakelen voor het verzamelen van metrische gegevens uit uw Windows-knooppuntgroepen.

  1. Installeer Windows-exporteur handmatig op AKS-knooppunten om toegang te krijgen tot metrische Windows-gegevens door het YAML-bestand windows-exporter-daemonset te implementeren. Schakel de volgende verzamelaars in:

    • [defaults]
    • container
    • memory
    • process
    • cpu_info

    Voor aanvullende collectors zie Prometheus Exporter voor Windows-metrieken.

    Implementeer het YAML-bestand windows-exporter-daemonset. Houd er rekening mee dat als er taints zijn toegepast in het knooppunt, u de juiste toleranties moet toepassen.

        kubectl apply -f windows-exporter-daemonset.yaml
    
  2. Pas de ama-metrics-settings-configmap toe op uw cluster. Stel de Booleans windowsexporter en windowskubeproxy in op true. Zie configmap voor metrische instellingen voor invoegtoepassingen voor meer informatie.

  3. Schakel de opnameregels in die vereist zijn voor de out-of-the-box-dashboards:

    • Als u onboarding met behulp van de CLI gebruikt, neemt u de optie --enable-windows-recording-rulesop.
    • Als je onboarding doet met behulp van een ARM-sjabloon, Bicep of Azure Policy, stel enableWindowsRecordingRules in op true in het parameterbestand.
    • Als het cluster al is toegevoegd, gebruik deze ARM-sjabloon en dit parameterbestand om de regelgroepen te maken. Hiermee worden de vereiste opnameregels toegevoegd en is geen ARM-bewerking op het cluster en heeft dit geen invloed op de huidige bewakingsstatus van het cluster.

Implementatie verifiëren

Gebruik het opdrachtregelprogramma kubectl om te controleren of de agent correct is geïmplementeerd.

Beheerd Prometheus

Controleer of de DaemonSet correct is geïmplementeerd in de Linux-knooppuntgroepen

kubectl get ds ama-metrics-node --namespace=kube-system

Het aantal pods moet gelijk zijn aan het aantal Linux-knooppunten in het cluster. De uitvoer moet er ongeveer uitzien als in het volgende voorbeeld:

User@aksuser:~$ kubectl get ds ama-metrics-node --namespace=kube-system
NAME               DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
ama-metrics-node   1         1         1       1            1           <none>          10h

Controleer of Windows-knooppunten correct zijn geïmplementeerd

kubectl get ds ama-metrics-win-node --namespace=kube-system

Het aantal pods moet gelijk zijn aan het aantal Windows-knooppunten in het cluster. De uitvoer moet er ongeveer zo uitzien als in het volgende voorbeeld:

User@aksuser:~$ kubectl get ds ama-metrics-node --namespace=kube-system
NAME                   DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
ama-metrics-win-node   3         3         3       3            3           <none>          10h

Controleer of de twee ReplicaSets zijn geïmplementeerd voor Prometheus

kubectl get rs --namespace=kube-system

De uitvoer moet er ongeveer uitzien als in het volgende voorbeeld:

User@aksuser:~$kubectl get rs --namespace=kube-system
NAME                            DESIRED   CURRENT   READY   AGE
ama-metrics-5c974985b8          1         1         1       11h
ama-metrics-ksm-5fcf8dffcd      1         1         1       11h

Containerinzichten

Controleer of de DaemonSets correct zijn geïmplementeerd in de Linux-knooppuntgroepen

kubectl get ds ama-logs --namespace=kube-system

Het aantal pods moet gelijk zijn aan het aantal Linux-knooppunten in het cluster. De uitvoer moet er ongeveer uitzien als in het volgende voorbeeld:

User@aksuser:~$ kubectl get ds ama-logs --namespace=kube-system
NAME       DESIRED   CURRENT   READY     UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
ama-logs   2         2         2         2            2           <none>          1d

Controleer of Windows-knooppunten correct zijn geïmplementeerd

kubectl get ds ama-logs-windows --namespace=kube-system

Het aantal pods moet gelijk zijn aan het aantal Windows-knooppunten in het cluster. De uitvoer moet er ongeveer uitzien als in het volgende voorbeeld:

User@aksuser:~$ kubectl get ds ama-logs-windows --namespace=kube-system
NAME                   DESIRED   CURRENT   READY     UP-TO-DATE   AVAILABLE   NODE SELECTOR     AGE
ama-logs-windows           2         2         2         2            2       <none>            1d

Implementatie van de Container Insights-oplossing controleren

kubectl get deployment ama-logs-rs --namespace=kube-system

De uitvoer moet er ongeveer uitzien als in het volgende voorbeeld:

User@aksuser:~$ kubectl get deployment ama-logs-rs --namespace=kube-system
NAME          READY   UP-TO-DATE   AVAILABLE   AGE
ama-logs-rs   1/1     1            1           24d

Configuratie weergeven met CLI

Gebruik de aks show opdracht om erachter te komen of de oplossing is ingeschakeld, de resource-id van de Log Analytics-werkruimte en overzichtsinformatie over het cluster.

az aks show --resource-group <resourceGroupofAKSCluster> --name <nameofAksCluster>

De opdracht retourneert JSON-geformatteerde informatie over de oplossing. De addonProfiles sectie moet informatie bevatten over de omsagent, zoals in het onderstaande voorbeeld.

"addonProfiles": {
    "omsagent": {
        "config": {
            "logAnalyticsWorkspaceResourceID": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace",
            "useAADAuth": "true"
        },
        "enabled": true,
        "identity": null
    },
}

Resources ingericht

Wanneer u monitoring inschakelt, worden de volgende resources gemaakt in uw abonnement:

Resourcenaam Resourcetype Resourcegroep Regio/locatie Beschrijving
MSCI-<aksclusterregion>-<clustername> Gegevensverzamelingsregel Hetzelfde als cluster Hetzelfde als Log Analytics-werkruimte Deze regel voor het verzamelen van gegevens is bedoeld voor logboekverzameling door de Azure Monitor-agent, die de Log Analytics-werkruimte als doel gebruikt en is gekoppeld aan de AKS-clusterresource.
MSPROM-<aksclusterregion>-<clustername> Gegevensverzamelingsregel Hetzelfde als cluster Hetzelfde als azure Monitor-werkruimte Deze regel voor gegevensverzameling is bedoeld voor het verzamelen van prometheus-metrische gegevens per invoegtoepassing voor metrische gegevens, die de gekozen Azure Monitor-werkruimte als bestemming heeft en die ook is gekoppeld aan de AKS-clusterresource
MSPROM-<aksclusterregion>-<clustername> Eindpunt voor gegevensverzameling Hetzelfde als cluster Hetzelfde als azure Monitor-werkruimte Dit eindpunt voor gegevensverzameling wordt door deze bovenstaande gegevensverzamelingsregel gebruikt voor het verwerken van Prometheus-metingen uit de metingen-add-on.

Wanneer u een nieuwe Azure Monitor-werkruimte maakt, worden de volgende extra resources gemaakt als onderdeel hiervan

Resourcenaam Bronsoort Resourcegroep Regio/locatie Beschrijving
<azuremonitor-workspace-name> Gegevensverzamelingsregel <MA_azuremonitor-workspace-name>_<azuremonitor-workspace-region>_managed Hetzelfde als Azure Monitor-werkruimte DCR die is gemaakt wanneer u OSS Prometheus-server gebruikt voor extern schrijven naar Azure Monitor-werkruimte.
<azuremonitor-workspace-name> Eindpunt voor gegevensverzameling <MA_azuremonitor-workspace-name>_<azuremonitor-workspace-region>_managed Hetzelfde als Azure Monitor-werkruimte Een DCE wordt gemaakt wanneer de OSS Prometheus-server wordt gebruikt voor remote schrijven naar Azure Monitor Workspace.

Verschillen tussen Windows- en Linux-clusters

De belangrijkste verschillen in het bewaken van een Windows Server-cluster in vergelijking met een Linux-cluster zijn:

  • Windows heeft geen RSS-geheugenmetriek. Als gevolg hiervan is het niet beschikbaar voor Windows-knooppunten en -containers. De metrische waarde voor de werkset is beschikbaar.
  • Informatie over schijfopslagcapaciteit is niet beschikbaar voor Windows-knooppunten.
  • Alleen podomgevingen worden bewaakt, niet Docker-omgevingen.
  • Met de preview-versie worden maximaal 30 Windows Server-containers ondersteund. Deze beperking geldt niet voor Linux-containers.

Notitie

Container Insights-ondersteuning voor het besturingssysteem Windows Server 2022 bevindt zich in de previewfase.

De in een container geplaatste Linux-agent (replicasetpod) maakt API-aanroepen naar alle Windows-knooppunten op kubelet beveiligde poort (10250) binnen het cluster om metrische gegevens over knooppunten en containers te verzamelen. Beveiligde Kubelet-poort (:10250) moet worden geopend in het virtuele netwerk van het cluster voor zowel binnenkomend als uitgaand verkeer voor Windows-knooppunten en verzameling met metrische gegevens met betrekking tot containerprestaties om te kunnen werken.

Als u een Kubernetes-cluster met Windows-knooppunten hebt, controleert en configureert u de netwerkbeveiligingsgroep en het netwerkbeleid om ervoor te zorgen dat de beveiligde Kubelet-poort (:10250) is geopend voor zowel inkomend als uitgaand verkeer in het virtuele netwerk van het cluster.

Volgende stappen

  • Als u problemen ondervindt tijdens het onboarden van de oplossing, raadpleegt u de gids voor probleemoplossing.
  • Als bewaking is ingeschakeld voor het verzamelen van de status en het resourcegebruik van uw AKS-cluster en van de workloads die daarop draaien, kunt u leren hoe u Container Insights gebruikt.