Protokollerfassung mit hohem Durchsatz in Container Insights (Vorschau)
Der Modus mit hohem Protokolldurchsatz ist ein Feature in Container Insights, mit dem Sie Containerkonsolenprotokolle („stdout“ und „stderr“) mit hohem Durchsatz von Ihren Azure Kubernetes Service (AKS)-Clusterknoten erfassen können. Mit diesem Feature können Sie pro Knoten bis zu 50.000 Protokolle pro Sekunde erfassen.
Hinweis
Dieses Feature ist zurzeit als öffentliche Preview verfügbar. Weitere Informationen finden Sie in den Ergänzenden Nutzungsbedingungen für Microsoft Azure-Vorschauversionen.
Übersicht
Wenn der Modus mit hohem Durchsatz aktiviert ist, führt Container Insights mehrere Konfigurationsänderungen durch, was zu einem höheren Gesamtdurchsatz führt. Zu diesen Änderungen zählt die Verwendung eines aktualisierten Agents und einer Azure Monitor-Datenpipeline mit Skalierungsverbesserungen. Die Änderungen werden alle im Hintergrund von Azure Monitor vorgenommen und erfordern keine Eingabe oder Konfiguration, nachdem das Feature aktiviert wurde.
Der Modus mit hohem Protokolldurchsatz wirkt sich nur auf die Datensammlungsebene aus. Ansonsten bleibt die Funktionsweise von Container-Insights gleich, und Protokolle werden in derselben Tabelle ContainerLogV2
erfasst. Vorhandene Abfragen und Warnungen funktionieren weiterhin, da dieselben Daten gesammelt werden.
Um den maximalen unterstützten Protokolldurchsatz zu erzielen, sollten Sie High-End-VM-SKUs mit mindestens 16 CPU-Kernen für Ihre AKS-Clusterknoten verwenden. Die Verwendung von Low-End-VM-SKUs wirkt sich auf den Protokolldurchsatz aus.
Ist mein Cluster qualifiziert?
Die Protokollerfassung mit hohem Durchsatz eignet sich für Umgebungen, die mehr als 2.000 Protokolle/Sekunde (oder 2 MB/s) pro Knoten in ihren Kubernetes-Clustern senden, und wurde für das Senden von bis zu 50.000 Protokollen/Sekunde pro Knoten entwickelt und getestet. Verwenden Sie die folgenden Protokollabfragen, um zu ermitteln, ob Ihr Cluster für die Protokollerfassung mit hohem Durchsatz geeignet ist.
Protokolle pro Sekunde und pro Knoten
ContainerLogV2
| where _ResourceId = "<cluster-resource-id>"
| summarize count() by bin(TimeGenerated, 1s), Computer
| render timechart
Protokollgröße (in MB) pro Sekunde pro Knoten
ContainerLogV2
| where _ResourceId = "<cluster-resource-id>"
| summarize BillableDataMB = sum(_BilledSize)/1024/1024 by bin(TimeGenerated, 1s), Computer
| render timechart
Voraussetzungen
- Version 2.63.0 oder höher der Azure CLI (Command Line Interface, Befehlszeilenschnittstelle).
- Wenn eine „aks-preview“-CLI-Erweiterung installiert ist, muss es sich dabei um Version 7.0.0b4 oder höher handeln.
- Das Clusterschema muss für ContainerLogV2 konfiguriert sein.
- Wenn die Standardressourcengrenzwerte (CPU und Arbeitsspeicher) für den ama-logs-DaemonSet-Container nicht Ihren Anforderungen an den Protokolldurchsatz entsprechen, fordern Sie über den Microsoft-Supportkanal eine Erhöhung der Ressourcengrenzwerte Ihres ama-logs-Containers an.
Netzwerkfirewallanforderungen
Zusätzlich zu den Netzwerkfirewallanforderungen für die Überwachung eines Kubernetes-Clusters sind je nach Cloud die in der folgenden Tabelle aufgeführten zusätzlichen Konfigurationen erforderlich, um den Modus mit hohem Durchsatz zu aktivieren.
Cloud | Endpunkt | Port |
---|---|---|
Öffentliche Azure-Cloud | <dce-name>-<suffix>.<cluster-region-name>-<suffix>.ingest.monitor.azure.com |
443 |
Cloud Microsoft Azure, betrieben von 21Vianet | <dce-name>-<suffix>.<cluster-region-name>-<suffix>.ingest.monitor.azure.cn |
443 |
Azure Government-Cloud | <dce-name>-<suffix>.<cluster-region-name>-<suffix>.ingest.monitor.azure.us |
443 |
Der Endpunkt ist der Protokollerfassungsendpunkt des Datensammlungsendpunkts (Data Collection Endpoint, DCE) für die vom Cluster verwendete Datensammlungsregel (Data Collection Rule, DCR). Dieser Datensammlungsendpunkt wird erstellt, wenn Sie den Modus mit hohem Durchsatz für den Cluster aktivieren, und beginnt mit dem Präfix MSCI-ingest
.
Begrenzungen
Die folgenden Szenarien werden in der Vorschauversion nicht unterstützt. Dies wird behoben, wenn das Feature allgemein verfügbar wird.
- AKS-Cluster mit Arm64-Knoten
- Azure Arc-fähiges Kubernetes
- HTTP-Proxy mit vertrauenswürdigem Zertifikat
- Onboarding über das Azure-Portal, Azure Policy, Terraform und Bicep
- Konfiguration über die Überwachungseinstellungen in der Benutzeroberfläche des AKS-Insights-Portals
- Automatische Migration einer vorhandenen Container Insights-Instanz
Aktivieren der Protokollerfassung mit hohem Durchsatz
Führen Sie die beiden Schritte in den folgenden Abschnitten aus, um den Modus mit hohem Durchsatz für Ihren Cluster zu aktivieren.
Hinweis
Für den Modus mit hohem Protokolldurchsatz ist ein Datensammlungsendpunkt (DCE) für die Datenerfassung erforderlich. Wenn Sie das Onboarding der Cluster durchführen, wird für jeden Cluster ein Datensammlungsendpunkt für die Datenerfassung mit dem Präfix MSCI-ingest
erstellt. Wenn der Azure Monitor-Private Link-Bereich konfiguriert ist, wird auch ein Datensammlungsendpunkt für die Konfiguration mit dem Präfix MSCI-config
erstellt.
Aktualisieren der ConfigMap
Der erste Schritt besteht darin, die ConfigMap für den Cluster zu aktualisieren, um die Ausführung der ama-logs-DeamonSet-Pods von Container Insights im Modus mit hohem Durchsatz anzuweisen.
Befolgen Sie die Anweisungen unter Konfigurieren und Bereitstellen einer ConfigMap, um die ConfigMap für den Cluster herunterzuladen und zu aktualisieren. Die einzige Änderung, die Sie für die Protokollerfassung mit hohem Durchsatz vornehmen müssen, besteht darin, unter agent-settings
wie folgt agent_settings.high_log_scale
zu aktivieren:
[agent_settings.high_log_scale]
enabled = true
Nachdem Sie diese ConfigMap angewendet haben, werden ama-logs-*
-Pods automatisch neu gestartet und die ama-logs-DaemonSet-Pods zur Ausführung im Modus mit hohem Durchsatz konfiguriert.
Aktivieren des Modus mit hohem Durchsatz für das Überwachungs-Add-On
Verwenden Sie je nach AKS-Konfiguration einen der folgenden Azure CLI-Befehle, um den Modus mit hohem Protokolldurchsatz für das Überwachungs-Add-On zu aktivieren.
Hinweis
Anstelle der CLI können Sie eine Resource Manager (ARM)-Vorlage verwenden, um den Modus mit hohem Durchsatz für das Überwachungs-Add-On zu aktivieren. Einen Leitfaden zum Aktivieren von Container Insights mithilfe einer ARM-Vorlage finden Sie unter Aktivieren von Container Insights. Verwenden Sie zum Aktivieren des Modus mit hohem Durchsatz wie unter Konfigurieren einer Datensammlungsregel mit ARM-Vorlagen beschrieben im streams
-Parameter Microsoft-ContainerLogV2-HighScale
anstelle von Microsoft-ContainerLogV2
.
Vorhandener AKS-Cluster
az aks enable-addons -a monitoring -g <resource-group-name> -n <cluster-name> --enable-high-log-scale-mode
Vorhandener privater AKS-Cluster
az aks enable-addons -a monitoring -g <resource-group-name> -n <cluster-name> --enable-high-scale-mode --ampls-resource-id /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/privatelinkscopes/<resourceName>
Neuer AKS-Cluster
az aks create -g <cluster-name> -n <cluster-name> enable-addons -a monitoring --enable-high-log-scale-mode
Neuer privater AKS-Cluster
Informationen zum Erstellen eines privaten AKS-Clusters finden Sie unter Erstellen eines privaten Azure Kubernetes Service (AKS)-Clusters. Verwenden Sie die zusätzlichen Parameter --enable-high-scale-mode
und --ampls-resource-id
, um den Modus mit hohem Protokolldurchsatz mit der Ressourcen-ID des Azure Monitor-Private Link-Bereichs zu konfigurieren.
Migration
Wenn Container Insights bereits für Ihren Cluster aktiviert ist, müssen Sie es deaktivieren und dann mit dem Modus mit hohem Durchsatz erneut aktivieren.
- Da der Modus mit hohem Durchsatz eine andere Datenpipeline verwendet, müssen Sie sicherstellen, dass die Pipelineendpunkte nicht durch eine Firewall oder andere Netzwerkverbindungen blockiert werden.
- Für den Modus mit hohem Protokolldurchsatz ist zusätzlich zur Standard-Datensammlungsregel für die Datensammlung ein Datensammlungsendpunkt für die Datenerfassung erforderlich. Wenn Sie bereits Datensammlungsregeln mit
Microsoft.ContainerLogV2
erstellt haben, müssen Sie dies durchMicrosoft.ContainerLogV2-HighScale
ersetzen. Andernfalls werden Daten dupliziert. Sie sollten auch einen Datensammlungsendpunkt für die Datenerfassung erstellen und mit der Datensammlungsregel verknüpfen, sofern diese noch keinen solchen Endpunkt verwendet. Informationen zu den Abhängigkeiten finden Sie im Artikel zum Container Insights-Onboarding über Azure Resource Manager.
Nächste Schritte
- Teilen Sie Ihr Feedback oder Probleme mit dem Modus mit hohem Durchsatz unter https://aka.ms/cihsfeedback.