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 beheerde Prometheus

  • Het cluster moet gebruikmaken van verificatie van beheerde identiteiten.
  • De volgende resourceproviders moeten zijn geregistreerd in het abonnement van het AKS-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 kubernetes-extensie met Beheerde Prometheus Arc (preview) biedt geen ondersteuning voor de volgende configuraties:

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

Workspaces

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 machtigingsniveau nodig Owner om uw Azure Monitor-werkruimte te koppelen om metrische gegevens weer te geven 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.
Container Insights Log Analytics-werkruimte U kunt een AKS-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 AKS-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 voor de standaardwerkruimte moeten worden gebruikt.
Managed 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 AKS-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 op de locatie van het AKS-cluster en een nieuwe DCRA (koppeling) in dezelfde AKS-clusterregio. Koppel de nieuwe DCE aan het AKS-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.

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.

Voorbeeldopdrachten

### 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]"

Cluster met Arc (preview)

### 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]"

Een van de opdrachten kan de volgende optionele parameters gebruiken:

  • AKS: --ksm-metric-annotations-allow-list
    Boog: --AzureMonitorMetrics.KubeStateMetrics.MetricAnnotationsAllowList
    Door komma's gescheiden lijst met Kubernetes-aantekeningensleutels die worden gebruikt in de kube_resource_annotations metrische gegevens van de resource. Kube_pod_annotations is bijvoorbeeld de metrische gegevens over aantekeningen 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 gevolgen voor de prestaties. Bijvoorbeeld: pods=[kubernetes.io/team,...],namespaces=[kubernetes.io/team],....
  • AKS: --ksm-metric-labels-allow-list
    Boog: --AzureMonitorMetrics.KubeStateMetrics.MetricLabelsAllowlist
    Door komma's gescheiden lijst met meer Kubernetes-labelsleutels die worden gebruikt in de kube_resource_labels metrische kube_resource_labels metrische gegevens van de resource. Kube_pod_labels is bijvoorbeeld de metrische labels voor de pods-resource. Deze metrische waarde bevat standaard alleen naam- en naamruimtelabels. Als u meer labels wilt opnemen, geeft u een lijst met resourcenamen op in hun meervoudvorm en kubernetes-labelsleutels die u wilt toestaan * voor elke resource om labels toe te staan, maar dit heeft ernstige gevolgen voor de prestaties. Bijvoorbeeld: pods=[app],namespaces=[k8s-label-1,k8s-label-n,...],....
  • AKS: --enable-windows-recording-rules Hiermee kunt u de opnameregelgroepen inschakelen die vereist zijn voor de juiste werking van de Windows-dashboards.

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.

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 Kubernetes-clusters met Arc 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-logboeken worden alleen opgenomen in de ContainerLog-tabel wanneer zowel de DCR als de ConfigMap expliciet zijn ingesteld op uit.

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 resourceaanvragen en limieten van de Helm-grafiek 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"

Cluster met arc 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. Onboarding van de extensie met de configuratie-instelling 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

Cluster met Arc met ARO- of OpenShift- of Windows-knooppunten

Verificatie van beheerde identiteit wordt niet ondersteund voor Kubernetes-clusters met Arc met ARO (Azure Red Hat OpenShift) of OpenShift- of Windows-knooppunten. Gebruik verouderde verificatie door op te amalogs.useAADAuth=false geven 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 Insights en Grafana)

  1. Navigeer naar uw AKS-cluster in Azure Portal.
  2. Selecteer in het servicemenu onder Bewaking de optie Bewaking configureren van inzichten>.
  3. Containerinzichten is al ingeschakeld. Selecteer de metrische gegevens van Prometheus inschakelen en schakel de selectievakjes Grafana in. 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 Voorinstellingen kosten kunt u de standaardgegevens voor verzamelingen wijzigen om de bewakingskosten te verlagen. Zie Instellingen voor kostenoptimalisatie inschakelen in Container Insights voor meer informatie.
  5. Selecteer Configureren.

Bestaand cluster (alleen Prometheus)

  1. Navigeer naar uw AKS-cluster in Azure Portal.
  2. Selecteer in het servicemenu onder Bewaking de optie Bewaking configureren van inzichten>.
  3. Schakel het selectievakje Prometheus-metrische gegevens inschakelen in.
  4. Selecteer Geavanceerde instellingen als u alternatieve werkruimten wilt selecteren of nieuwe werkruimten wilt maken. Met de instelling Voorinstellingen kosten kunt u de standaardgegevens voor verzamelingen wijzigen om de bewakingskosten te verlagen.
  5. Selecteer Configureren.

Verzameling met metrische Windows-gegevens inschakelen (preview)

Notitie

Er is geen CPU-/geheugenlimiet in windows-exporter-daemonset.yaml, zodat de Windows-knooppunten mogelijk te veel worden ingericht
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 te veel inrichten en in extreme gevallen kan dit ertoe leiden dat de knooppunten beschadigd raken.

Vanaf versie 6.4.0-main-02-22-2023-3ee44b9e van de beheerde Prometheus-invoegtoepassingscontainer (prometheus_collector), is de metrische windows-verzameling ingeschakeld voor de AKS-clusters. Als u onboarding uitvoert naar de invoegtoepassing met metrische gegevens van Azure Monitor, kunnen de Windows DaemonSet-pods worden uitgevoerd op uw knooppuntgroepen. 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

    Zie prometheusexporteur voor metrische Windows-gegevens voor meer collectors.

    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 windowsexporter booleaanse waarden in windowskubeproxy 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 onboarding met behulp van een ARM-sjabloon, Bicep of Azure Policy, is ingesteld enableWindowsRecordingRules true op in het parameterbestand.
    • Als het cluster al is toegevoegd, gebruikt u 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 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

Container Insights

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 informatie zoals in het volgende 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 bewaking 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 gebruikt door de bovenstaande regel voor het verzamelen van gegevens voor het opnemen van metrische gegevens uit de invoegtoepassing voor metrische gegevens

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

Resourcenaam Resourcetype 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 DCE die is gemaakt wanneer u de OSS Prometheus-server gebruikt voor extern schrijven naar Azure Monitor-werkruimte.

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 metrische geheugen-RSS-waarde. 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

Ondersteuning voor Container Insights voor het Besturingssysteem Windows Server 2022 is in preview.

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 status- en resourcegebruik van uw AKS-cluster en workloads die hierop worden uitgevoerd, leert u hoe u Container Insights gebruikt .