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 - Service voor containers van Microsoft
    • Microsoft.Insights
    • Microsoft-waarschuwingenbeheer
    • 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*

Voor ARC-ingeschakelde clusters met Windows-knooppunten kunt u Azure Managed Prometheus opzetten op een Linux-knooppunt binnen het cluster en de scraping van metrische gegevens configureren van endpoints die draaien op de 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.

Kenmerk Werkplek Opmerkingen
Beheerde dienst 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. Zie Azure Monitor configureren met netwerkbeveiligingsperimeter voor hulp bij het configureren van de werkruimte met netwerkbeveiligingsperimeter.
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.

Belangrijk

  • Als u implementeert met behulp van een sjabloon of Azure Policy, moet u ervoor zorgen dat de eindpunten voor gegevensverzameling, regels voor gegevensverzameling en de gegevensverzamelingsregelkoppelingen de naam MSProm-<Location of Azure Monitor Workspace>-<Name of cluster resource> krijgen, anders zal het onboardingproces niet succesvol worden voltooid.

  • Als u één Azure Monitor-resource hebt die privé is gekoppeld, werkt Prometheus-activering niet als het AKS-cluster en de Azure Monitor-werkruimte zich in verschillende regio's bevinden. Maak een nieuwe DCE en DCRA in dezelfde clusterregio. Koppel de nieuwe DCE aan het cluster en noem de nieuwe DCRA als configurationAccessEndpoint. Zie Private Link inschakelen voor Kubernetes-bewaking in Azure Monitor.

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.

Kenmerk 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:

Kenmerk 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.

Belangrijk

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"

Arc-ingeschakelde cluster

### 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, schakelt u containerlogboeken in, schakelt u metrische gegevens van Prometheus in, schakelt u Grafana in en schakelt u aanbevolen waarschuwingen in op het tabblad Bewaking.

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. SelecteerMonitor-instellingen in> het servicemenu.
  3. Metrische gegevens van Prometheus, Grafana en Container Logs en gebeurtenissen worden voor u geselecteerd. Als u een bestaande Azure Monitor-werkruimte, Grafana-werkruimte en Log Analytics-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 Logboekregistratieprofielen en klassieke profielen kunt u de standaardverzamelingsgegevens wijzigen om de bewakingskosten te verlagen. Zie Instellingen voor kostenoptimalisatie inschakelen in Container Insights voor meer informatie.
  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 planner voor het hele cluster om te bepalen welke pods op welke knooppunten moeten worden geplaatst. 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 windows-exporter-daemonset YAML-bestand. 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. Breng de ama-metrics-settings-configmap aan op uw cluster. Stel de Booleans windowsexporter en windowskubeproxy in op true. Voor meer informatie, zie configmap voor instellingen voor de metingen-invoegtoepassing.

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

    • Als u onboarding via de CLI uitvoert, neemt u de optie --enable-windows-recording-rules mee.
    • 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.
  4. [Alleen voor Windows-knooppunten in clusters met ARC] Als u Managed Prometheus inschakelt voor een cluster met ARC, kunt u Beheerde Prometheus configureren die wordt uitgevoerd op een Linux-knooppunt in het cluster om metrische gegevens te scrapen van eindpunten die worden uitgevoerd op de Windows-knooppunten. Voeg de volgende scrape-taak toe aan ama-metrics-prometheus-config-configmap.yaml en pas de configmap toe op uw cluster.

  scrape_configs:
    - job_name: windows-exporter
      scheme: http
      scrape_interval: 30s
      label_limit: 63
      label_name_length_limit: 511
      label_value_length_limit: 1023
      tls_config:
        ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
        insecure_skip_verify: true
      bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
      kubernetes_sd_configs:
      - role: node
      relabel_configs:
      - source_labels: [__meta_kubernetes_node_name]
        target_label: instance
      - action: keep
        source_labels: [__meta_kubernetes_node_label_kubernetes_io_os]
        regex: windows
      - source_labels:
        - __address__
        action: replace
        target_label: __address__
        regex: (.+?)(\:\d+)?
        replacement: $$1:9182
kubectl apply -f ama-metrics-prometheus-config-configmap.yaml

Implementatie verifiëren

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

Beheerde dienst 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 eruitzien als 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 eruitzien als 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 eruitzien als 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

Containeranalyse

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 eruitzien als 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 eruitzien als 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 eruitzien als 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 Type bron 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 Type bron Resourcegroep Regio/locatie Beschrijving
<azuremonitor-workspace-name> Gegevensverzamelingsregel <MA_azuremonitor-workspace-name>_<azuremonitor-workspace-region>_managed Hetzelfde als Azure Monitor-werkruimte DCR aangemaakt wanneer u de OSS Prometheus-server gebruikt voor Remote Write 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.