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:
- Beheerde Prometheus voor metrische verzameling
- Container insights voor logboekverzameling
- Beheerd Grafana voor visualisatie.
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:
- Gegevensverzameling en kostenoptimalisatie configureren in Container Insights met behulp van een regel voor gegevensverzameling
Details over het aanpassen van logboekverzameling zodra u bewaking hebt ingeschakeld, inclusief het gebruik van vooraf ingestelde configuraties voor kostenoptimalisatie. - Aanbevolen procedures voor het bewaken van Kubernetes met Azure Monitor
Best practices voor het bewaken van Kubernetes-clusters die zijn georganiseerd op basis van de vijf pijlers van het Azure Well-Architected Framework, inclusief kostenoptimalisatie. - Kostenoptimalisatie in Azure Monitor
Aanbevolen procedures voor het configureren van alle functies van Azure Monitor om uw kosten te optimaliseren en de hoeveelheid gegevens te beperken die u verzamelt.
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
- Vereisten voor Kubernetes-clusterextensies met Azure Arc.
- Controleer de firewallvereisten naast de Kubernetes-netwerkvereisten met Azure Arc.
- Als u de bewaking voor AKS eerder hebt geïnstalleerd, moet u ervoor zorgen dat u bewaking hebt uitgeschakeld voordat u doorgaat om problemen tijdens de installatie van de extensie te voorkomen.
- Als u eerder bewaking op een cluster hebt geïnstalleerd met behulp van een script zonder clusterextensies, volgt u de instructies bij Bewaking van uw Kubernetes-cluster uitschakelen om deze Helm-grafiek te verwijderen.
Notitie
De kubernetes-extensie met Beheerde Prometheus Arc 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.
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
### 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>
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
Met behulp van Azure Portal kunt u zowel beheerde Prometheus- als containerinzichten tegelijk inschakelen.
Notitie
Als u Managed Prometheus zonder Container Insights wilt inschakelen, schakelt u deze in vanuit de Azure Monitor-werkruimte , zoals hieronder wordt beschreven.
Nieuw AKS-cluster (Prometheus en Container Insights)
Wanneer u een nieuw AKS-cluster maakt in Azure Portal, kunt u Prometheus, Container Insights en Grafana inschakelen op het tabblad Integraties . Selecteer in de sectie Azure Monitor de optie Standaardconfiguratie of Aangepaste configuratie als u wilt opgeven welke werkruimten u wilt gebruiken. U kunt extra configuratie uitvoeren zodra het cluster is gemaakt.
Bestaand cluster (Prometheus en Container Insights)
Met deze optie kunt u containerinzichten en eventueel Prometheus en Grafana op een bestaand AKS-cluster inschakelen.
Selecteer Inzichten in het menu van het cluster OF selecteer Containers in het menu Monitor, tabblad Niet-bewaakte clusters en klik op Inschakelen naast een cluster.
- Als Container Insights niet is ingeschakeld voor het cluster, ziet u een scherm waarin wordt opgegeven welke functies zijn ingeschakeld. Klik op Bewaking configureren.
- Als Container Insights al is ingeschakeld op het cluster, selecteert u de knop Bewakingsinstellingen om de configuratie te wijzigen.
Containerinzichten worden ingeschakeld. Schakel de selectievakjes in voor metrische gegevens van Prometheus inschakelen en Grafana inschakelen als u ze ook wilt inschakelen voor het cluster. Als u een bestaande Azure Monitor-werkruimte en Grafana-werkruimte hebt, worden deze voor u geselecteerd.
Klik op Geavanceerde instellingen om alternatieve werkruimten te selecteren of nieuwe werkruimten te 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.
Klik op Configureren om de configuratie op te slaan.
Bestaand cluster (alleen Prometheus)
Met deze optie worden metrische Prometheus-gegevens in een cluster ingeschakeld zonder containerinzichten in te schakelen.
Open het menu Azure Monitor-werkruimten in Azure Portal en selecteer uw werkruimte.
Selecteer Bewaakte clusters in de sectie Beheerde Prometheus om een lijst met AKS-clusters weer te geven.
Selecteer Configureren naast het cluster dat u wilt inschakelen.
Bestaand cluster (Prometheus toevoegen)
- Selecteer Containers in het menu Bewaken , tabblad Bewaakte clusters en klik op Configureren naast een cluster in de kolom Beheerde Prometheus .
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.
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
Pas de ama-metrics-settings-configmap toe op uw cluster. Stel de
windowsexporter
booleaanse waarden inwindowskubeproxy
optrue
. Zie configmap voor metrische instellingen voor invoegtoepassingen voor meer informatie.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-rules
op. - 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.
- Als u onboarding met behulp van de CLI gebruikt, neemt u de optie
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/00000000-0000-0000-0000-000000000000/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> |
Regel voor gegevensverzameling | 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> |
Regel voor gegevensverzameling | 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> |
Regel voor gegevensverzameling | <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 .