Delen via


Metrische gegevens van het besturingsvlak van Azure Kubernetes Service (AKS) bewaken (preview)

De status van het AKS-besturingsvlak (Azure Kubernetes Service) is essentieel voor de prestaties en betrouwbaarheid van het cluster. Metrische gegevens van besturingsvlak (preview) bieden meer inzicht in de beschikbaarheid en prestaties, zodat u de algehele waarneembaarheid kunt maximaliseren en operationele uitmuntendheid kunt behouden. Deze metrische gegevens zijn volledig compatibel met Prometheus en Grafana en kunnen worden aangepast om alleen op te slaan wat u nodig acht. Met deze nieuwe metrische gegevens kunt u alle metrische gegevens verzamelen van API-server, ETCD, Scheduler, Autoscaler en controllerbeheer.

In dit artikel krijgt u inzicht in deze nieuwe functie, hoe u deze implementeert en hoe u de verzamelde telemetrie kunt observeren.

Vereisten en beperkingen

De aks-preview Azure CLI-extensie installeren of bijwerken

Belangrijk

AKS preview-functies zijn beschikbaar op selfservice, opt-in basis. Previews worden geleverd 'zoals is' en 'als beschikbaar' en ze worden uitgesloten van de serviceovereenkomsten en beperkte garantie. AKS-previews worden gedeeltelijk gedekt door klantondersteuning op basis van best effort. Daarom zijn deze functies niet bedoeld voor productiegebruik. Zie de volgende ondersteuningsartikelen voor meer informatie:

Installeer de aks-preview Azure CLI-extensie met behulp van de az extension add opdracht.

az extension add --name aks-preview

Als u de extensieversie wilt bijwerken, kunt u dit doen met behulp van de az extension update opdracht.

az extension update --name aks-preview

De functievlag 'AzureMonitorMetricsControlPlanePreview' registreren

Registreer de AzureMonitorMetricsControlPlanePreview functievlag met behulp van de opdracht az feature register , zoals wordt weergegeven in het volgende voorbeeld:

az feature register --namespace "Microsoft.ContainerService" --name "AzureMonitorMetricsControlPlanePreview"

Het duurt enkele minuten voordat de status Geregistreerd wordt weergegeven. Controleer de registratiestatus met behulp van de opdracht az feature show :

az feature show --namespace "Microsoft.ContainerService" --name "AzureMonitorMetricsControlPlanePreview"

Wanneer de status Geregistreerd is, vernieuwt u de registratie van de Resourceprovider Microsoft.ContainerService met behulp van de opdracht az provider register:

az provider register --namespace "Microsoft.ContainerService"

Metrische gegevens van het besturingsvlak inschakelen in uw AKS-cluster

U kunt metrische gegevens van het besturingsvlak inschakelen met de beheerde Azure Monitor-service voor Prometheus-invoegtoepassing tijdens het maken van het cluster of voor een bestaand cluster. Zie Prometheus- en Grafana-clusters inschakelen voor Kubernetes-clusters en de stappen op het CLI-tabblad voor een AKS-cluster om metrische prometheus-gegevens van uw Kubernetes-cluster te verzamelen.

Als in uw cluster al de Prometheus-invoegtoepassing is geïmplementeerd, kunt u gewoon een az aks update opdracht uitvoeren om ervoor te zorgen dat de clusterupdates worden uitgevoerd om metrische gegevens van het besturingsvlak te verzamelen.

az aks update --name <cluster-name> --resource-group <resource-group>

Notitie

In tegenstelling tot de metrische gegevens die zijn verzameld van clusterknooppunten, worden metrische besturingsvlakgegevens verzameld door een onderdeel dat geen deel uitmaakt van de invoegtoepassing ama-metrics . Door de AzureMonitorMetricsControlPlanePreview functievlag en de beheerde prometheus-invoegtoepassing in te schakelen, worden metrische gegevens van het besturingsvlak verzameld. Nadat het verzamelen van metrische gegevens is ingeschakeld, kan het enkele minuten duren voordat de gegevens in de werkruimte worden weergegeven.

Metrische gegevens van besturingsvlak opvragen

Metrische gegevens van het besturingsvlak worden opgeslagen in een Azure Monitor-werkruimte in de regio van het cluster. Ze kunnen rechtstreeks vanuit de werkruimte worden opgevraagd of via het Azure Managed Grafana-exemplaar dat is verbonden met de werkruimte. Als u de Azure Monitor-werkruimte wilt zoeken die is gekoppeld aan het cluster, gaat u in het linkerdeelvenster van het geselecteerde AKS-cluster naar de sectie Bewaking en selecteert u Inzichten. Selecteer Controle-instellingen op de pagina Container Insights voor het cluster.

Schermopname van Azure Monitor-werkruimte.

Als u Azure Managed Grafana gebruikt om de gegevens te visualiseren, kunt u de volgende dashboards importeren. AKS biedt dashboardsjablonen om u te helpen uw telemetriegegevens van het besturingsvlak in realtime weer te geven en te analyseren.

Metrische gegevens van het besturingsvlak aanpassen

AKs bevatten standaard een vooraf geconfigureerde set metrische gegevens voor het verzamelen en opslaan van elk onderdeel. API server en etcd zijn standaard ingeschakeld. Deze lijst kan worden aangepast via de ama-settings-configmap. De lijst met minimal-ingestion metrische profielgegevens is hier beschikbaar.

Hieronder ziet u de standaarddoelen:

controlplane-apiserver = true
controlplane-cluster-autoscaler = false
controlplane-kube-scheduler = false
controlplane-kube-controller-manager = false
controlplane-etcd = true

De verschillende opties zijn vergelijkbaar met Azure Managed Prometheus die hier worden vermeld.

Alle ConfigMaps moeten worden toegepast op kube-system naamruimte voor elk cluster.

Alleen minimale metrische gegevens opnemen voor de standaarddoelen

Dit is het standaardgedrag met de instelling default-targets-metrics-keep-list.minimalIngestionProfile="true". Alleen metrische gegevens die verderop in dit artikel worden vermeld, worden opgenomen voor elk van de standaarddoelen, in dit geval controlplane-apiserver en controlplane-etcd.

Alle metrische gegevens van alle doelen opnemen

Voer de volgende stappen uit om alle metrische gegevens van alle doelen in het cluster te verzamelen.

  1. Download het ConfigMap-bestand ama-metrics-settings-configmap.yaml en wijzig de naam ervan in configmap-controlplane.yaml.

  2. Stel minimalingestionprofile = false de doelen onder default-scrape-settings-enabled die u wilt scrapen in trueen controleer deze op . De enige doelen die u kunt opgeven zijn: , , , en controlplane-etcdcontrolplane-kube-controller-manager. controlplane-kube-schedulercontrolplane-cluster-autoscalercontrolplane-apiserver

  3. Pas de ConfigMap toe door de opdracht kubectl apply uit te voeren.

    kubectl apply -f configmap-controlplane.yaml
    

    Nadat de configuratie is toegepast, duurt het enkele minuten voordat de metrische gegevens van de opgegeven doelen uit het besturingsvlak worden verwijderd in de Azure Monitor-werkruimte.

Enkele andere metrische gegevens opnemen naast minimale metrische gegevens

Minimal ingestion profile is een instelling die helpt het opnamevolume van metrische gegevens te verminderen, omdat alleen metrische gegevens die standaarddashboards worden gebruikt, standaardopnameregels en standaardwaarschuwingen worden verzameld. Voer de volgende stappen uit om dit gedrag aan te passen.

  1. Download het ConfigMap-bestand ama-metrics-settings-configmap en wijzig de naam in configmap-controlplane.yaml.

  2. Stel minimalingestionprofile = true de doelen in default-scrape-settings-enabled en controleer of u de doelen wilt instellen trueen controleren waarop u wilt schrooten. De enige doelen die u kunt opgeven zijn: , , , en controlplane-etcdcontrolplane-kube-controller-manager. controlplane-kube-schedulercontrolplane-cluster-autoscalercontrolplane-apiserver

  3. Geef onder de default-targets-metrics-keep-listlijst met metrische gegevens voor de true doelen op. Voorbeeld:

    controlplane-apiserver= "apiserver_admission_webhook_admission_duration_seconds| apiserver_longrunning_requests"
    
  • Pas de ConfigMap toe door de opdracht kubectl apply uit te voeren.

    kubectl apply -f configmap-controlplane.yaml
    

    Nadat de configuratie is toegepast, duurt het enkele minuten voordat de metrische gegevens van de opgegeven doelen uit het besturingsvlak worden verwijderd in de Azure Monitor-werkruimte.

Alleen specifieke metrische gegevens van sommige doelen opnemen

  1. Download het ConfigMap-bestand ama-metrics-settings-configmap en wijzig de naam in configmap-controlplane.yaml.

  2. Stel minimalingestionprofile = false de doelen in default-scrape-settings-enabled en controleer of u de doelen wilt instellen trueen controleren waarop u wilt schrooten. De enige doelen die u hier kunt opgeven, zijncontrolplane-apiserver, controlplane-cluster-autoscaler, controlplane-kube-scheduleren controlplane-etcdcontrolplane-kube-controller-manager.

  3. Geef onder de default-targets-metrics-keep-listlijst met metrische gegevens voor de true doelen op. Voorbeeld:

    controlplane-apiserver= "apiserver_admission_webhook_admission_duration_seconds| apiserver_longrunning_requests"
    
  • Pas de ConfigMap toe door de opdracht kubectl apply uit te voeren.

    kubectl apply -f configmap-controlplane.yaml
    

    Nadat de configuratie is toegepast, duurt het enkele minuten voordat de metrische gegevens van de opgegeven doelen uit het besturingsvlak worden verwijderd in de Azure Monitor-werkruimte.

Problemen met metrische gegevens van besturingsvlak oplossen

Controleer of de functievlag AzureMonitorMetricsControlPlanePreview is ingeschakeld en of de ama-metrics pods worden uitgevoerd.

Notitie

De probleemoplossingsmethoden voor Azure Managed Service Prometheus worden hier niet rechtstreeks vertaald omdat de onderdelen die het besturingsvlak scrapen niet aanwezig zijn in de beheerde prometheus-invoegtoepassing.

ConfigMap-opmaak of -fouten

Controleer de opmaak van de ConfigMap en of de velden correct zijn ingevuld met de beoogde waarden. In het bijzonder de default-targets-metrics-keep-list, minimal-ingestion-profileen default-scrape-settings-enabled.

Besturingsvlak isoleren van gegevensvlakprobleem

Begin met het instellen van enkele metrische knooppuntgegevens om true te controleren of de metrische gegevens worden doorgestuurd naar de werkruimte. Hiermee kunt u bepalen of het probleem specifiek is voor het scrapen van metrische gegevens van het besturingsvlak.

Opgenomen gebeurtenissen

Nadat u de wijzigingen hebt toegepast, kunt u Metrics Explorer openen op de overzichtspagina van Azure Monitor of in de sectie Bewaking van het geselecteerde cluster. Selecteer metrische gegevens in de Azure-portal. Controleer op een toename of afname van het aantal gebeurtenissen dat per minuut is opgenomen. Hiermee kunt u bepalen of de specifieke metrische waarde ontbreekt of dat alle metrische gegevens ontbreken.

Specifieke metrische gegevens worden niet weergegeven

Er zijn gevallen waarin de metrische gegevens worden gedocumenteerd, maar niet worden weergegeven vanuit het doel en niet zijn doorgestuurd naar de Azure Monitor-werkruimte. In dit geval is het nodig om te controleren of andere metrische gegevens worden doorgestuurd naar de werkruimte.

Geen toegang tot de Azure Monitor-werkruimte

Wanneer u de invoegtoepassing inschakelt, hebt u mogelijk een bestaande werkruimte opgegeven waartoe u geen toegang hebt. In dat geval kan het lijken alsof de metrische gegevens niet worden verzameld en doorgestuurd. Zorg ervoor dat u een nieuwe werkruimte maakt terwijl u de invoegtoepassing inschakelt of tijdens het maken van het cluster.

Metrische gegevens van besturingsvlak uitschakelen in uw AKS-cluster

U kunt metrische gegevens van het besturingsvlak op elk gewenst moment uitschakelen door de functievlag uit te schakelen, beheerde Prometheus uit te schakelen of door het AKS-cluster te verwijderen.

Preview-vlag ingeschakeld na installatie van Beheerde Prometheus

Als de preview-vlag(AzureMonitorMetricsControlPlanePreview) is ingeschakeld voor een bestaand beheerd Prometheus-cluster, moet er een update voor het cluster worden afgedwongen om metrische gegevens van het besturingsvlak te verzenden

U kunt een az aks-update uitvoeren om ervoor te zorgen dat de clusterupdates worden bijgewerkt om metrische gegevens van het besturingsvlak te verzamelen.

az aks update -n <cluster-name> -g <resource-group>

Notitie

Met deze actie worden geen bestaande gegevens verwijderd die zijn opgeslagen in uw Azure Monitor-werkruimte.

Voer de volgende opdracht uit om de invoegtoepassing met metrische gegevens te verwijderen waarmee prometheus-metrische gegevens worden verwijderd.

az aks update --disable-azure-monitor-metrics -n <cluster-name> -g <cluster-resource-group>

Voer de volgende opdracht uit om scraping van metrische gegevens van het besturingsvlak op het AKS-cluster uit te schakelen door de registratie van de AzureMonitorMetricsControlPlanePreview functievlag ongedaan te maken met behulp van de opdracht az feature unregister .

az feature unregister "Microsoft.ContainerService" --name "AzureMonitorMetricsControlPlanePreview"

Veelgestelde vragen

  • Kunnen deze metrische gegevens worden afgeschraapt met zelf-hostende prometheus?

    • De metrische gegevens van het besturingsvlak kunnen momenteel niet worden afgeschraapt met zelf-hostende prometheus. Zelf-hostende prometheus kan het enkele exemplaar scrapen, afhankelijk van de load balancer. Deze metrische gegevens zijn notaccurate, omdat er vaak meerdere replica's van de metrische besturingsvlakgegevens zijn die alleen zichtbaar zijn via Beheerde Prometheus
  • Waarom is de gebruikersagent niet beschikbaar via de metrische gegevens van het besturingsvlak?

Volgende stappen

Nadat u deze preview-functie hebt geëvalueerd, kunt u uw feedback delen. We zijn geïnteresseerd in wat u ervan vindt.