Insamling av loggar i hög skala i Container Insights (förhandsversion)
Högskalat läge är en funktion i Container Insights som gör att du kan samla in containerkonsolloggar (stdout & stderr) med högt dataflöde från dina AKS-klusternoder (Azure Kubernetes Service). Med den här funktionen kan du samla in upp till 50 000 loggar per nod.
Kommentar
Den här funktionen är för närvarande i allmänt tillgänglig förhandsversion. Mer information finns i Kompletterande användningsvillkor för Förhandsversioner av Microsoft Azure.
Översikt
När läget för hög skalning är aktiverat utför Container Insights flera konfigurationsändringar som resulterar i ett högre övergripande dataflöde. Detta omfattar användning av en uppgraderad agent och Azure Monitor-datapipeline med skalningsförbättringar. Alla dessa ändringar görs i bakgrunden av Azure Monitor och kräver inte indata eller konfiguration när funktionen har aktiverats.
Högskalningsläget påverkar endast datainsamlingslagret. Resten av Container Insights-upplevelsen förblir densamma, med loggar som matas in i samma ContainerLogV2
tabell. Befintliga frågor och aviseringar fortsätter att fungera eftersom samma data samlas in.
För att uppnå maximalt dataflöde för loggar som stöds bör du använda avancerade VM-SKU:er med 16 CPU-kärnor eller mer för dina AKS-klusternoder. Om du använder SKU:er för virtuella datorer med låg slutnivå påverkas loggdataflödet.
Kvalificerar mitt kluster?
Insamling av högskalningsloggar passar för miljöer som skickar mer än 2 000 loggar per sekund (eller 2 MB/s) per nod i sina Kubernetes-kluster och har utformats och testats för att skicka upp till 50 000 loggar per nod. Använd följande loggfrågor för att avgöra om klustret är lämpligt för insamling av loggar i hög skala.
Loggar per sekund och per nod
ContainerLogV2
| where _ResourceId = "<cluster-resource-id>"
| summarize count() by bin(TimeGenerated, 1s), Computer
| render timechart
Loggstorlek (i MB) per sekund per nod
ContainerLogV2
| where _ResourceId = "<cluster-resource-id>"
| summarize BillableDataMB = sum(_BilledSize)/1024/1024 by bin(TimeGenerated, 1s), Computer
| render timechart
Förutsättningar
- Azure CLI version 2.63.0 eller senare.
- AKS-förhandsversionen av CLI-tillägget måste vara 7.0.0b4 eller högre om ett CLI-tillägg för aks-preview är installerat.
- Klusterschemat måste konfigureras för ContainerLogV2.
- Om standardresursgränserna (CPU och minne) på daemonuppsättningscontainern ama-logs inte uppfyller dina krav på loggskalning kontaktar du Microsofts supportkanal för att öka resursgränserna för din ama-logs-container.
Krav för nätverksbrandvägg
Utöver kraven för nätverksbrandväggen för övervakning av ett Kubernetes-kluster krävs ytterligare konfigurationer i följande tabell för att aktivera högskalningsläge beroende på ditt moln.
Moln | Slutpunkt | Port |
---|---|---|
Offentligt Azure-moln | <dce-name>-<suffix>.<cluster-region-name>-<suffix>.ingest.monitor.azure.com |
443 |
Microsoft Azure drivs av 21Vianet-molnet | <dce-name>-<suffix>.<cluster-region-name>-<suffix>.ingest.monitor.azure.cn |
443 |
Azure Government-moln | <dce-name>-<suffix>.<cluster-region-name>-<suffix>.ingest.monitor.azure.us |
443 |
Slutpunkten är slutpunkten Logs Ingestion från datainsamlingens slutpunkt (DCE) för den datainsamlingsregel (DCR) som används av klustret. Denna DCE skapas när du aktiverar högskalningsläge för klustret och börjar med prefixet MSCI-ingest
.
Begränsningar
Följande scenarier stöds inte under förhandsversionen. Dessa åtgärdas när funktionen blir allmänt tillgänglig.
- AKS-kluster med Arm64-noder
- Azure Arc-aktiverade Kubernetes
- HTTP-proxy med betrott certifikat
- Registrering via Azure Portal, Azure Policy, Terraform och Bicep
- Konfigurera via Övervakningsinställningar i AKS Insights-portalen
- Automatisk migrering från befintliga Container Insights
Aktivera insamling av loggar i hög skala
Följ de två stegen i följande avsnitt för att aktivera högskalningsläge för klustret.
Kommentar
Läge för hög loggskalning kräver en datainsamlingsslutpunkt (DCE) för inmatning. En inmatnings-DCE skapas med prefixet MSCI-ingest
för varje kluster när du registrerar dem. Om Azure Monitor private link-omfånget har konfigurerats skapas även konfigurations-DCE med prefixet MSCI-config
.
Uppdatera konfigurationskarta
Det första steget är att uppdatera konfigurationskartan för klustret för att instruera containerinsikterna ama-logs deamonset poddar att köras i högskalningsläge.
Följ riktlinjerna i Konfigurera och distribuera ConfigMap för att ladda ned och uppdatera ConfigMap för klustret. Den enda ändring du behöver göra för storskaliga loggar är att aktivera agent_settings.high_log_scale
under agent-settings
som i följande:
[agent_settings.high_log_scale]
enabled = true
När du har tillämpat den här konfigurationskartan ama-logs-*
startas poddar om automatiskt och konfigurerar daemonset-poddarna för ama-loggar så att de körs i högskalat läge.
Aktivera högskalningsläge för övervakning av tillägg
Aktivera övervakningstillägget med hög skalningsläge med hjälp av följande Azure CLI-kommandon för att aktivera loggläge i hög skala för tillägget Övervakning beroende på din AKS-konfiguration.
Kommentar
I stället för CLI kan du använda en ARM-mall för att aktivera högskalningsläge för tillägget Övervakning. Mer information om hur du aktiverar Container Insights med hjälp av en ARM-mall finns i Aktivera containerinsikter . Om du vill aktivera högskalningsläge använder du Microsoft-ContainerLogV2-HighScale
i stället för Microsoft-ContainerLogV2
i parametern enligt beskrivningen streams
i Konfigurera DCR med ARM-mallar.
Befintligt AKS-kluster
az aks enable-addons -a monitoring -g <resource-group-name> -n <cluster-name> --enable-high-log-scale-mode
Befintligt privat AKS-kluster
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>
Nytt AKS-kluster
az aks create -g <cluster-name> -n <cluster-name> enable-addons -a monitoring --enable-high-log-scale-mode
Nytt privat AKS-kluster
Mer information om hur du skapar ett privat AKS-kluster (AKS) finns i Skapa ett privat Azure Kubernetes Service-kluster (AKS). Använd de ytterligare parametrarna --enable-high-scale-mode
och --ampls-resource-id
för att konfigurera läget för hög loggskalning med Resurs-ID för Azure Monitor Private Link-omfång.
Migrering
Om Container Insights redan är aktiverat för klustret måste du inaktivera det och sedan återaktivera det med högskalningsläge.
- Eftersom högskalat läge använder en annan datapipeline måste du se till att pipelineslutpunkter inte blockeras av en brandvägg eller andra nätverksanslutningar.
- Högskalningsläge kräver en datainsamlingsslutpunkt (DCE) för inmatning utöver standard-DCR för datainsamling. Om du har skapat domänkontrollanter som använder
Microsoft.ContainerLogV2
måste du ersätta detta medMicrosoft.ContainerLogV2-HighScale
eller så dupliceras data. Du bör också skapa en DCE för inmatning och länka den till DCR om DCR inte redan använder en. Mer information om beroenden finns i Container Insights-registrering via Azure Resource Manager.
Nästa steg
- Dela feedback eller problem med högskalningsläge i https://aka.ms/cihsfeedback.