Zbieranie dzienników o dużej skali w usłudze Container Insights (wersja zapoznawcza)
Tryb skalowania o dużej skali to funkcja w usłudze Container Insights, która umożliwia zbieranie dzienników konsoli kontenera (stdout i stderr) o wysokiej przepływności z węzłów klastra usługi Azure Kubernetes Service (AKS). Ta funkcja umożliwia zbieranie maksymalnie 50 000 dzienników na sekundę na węzeł.
Uwaga
Ta funkcja jest obecnie w publicznej wersji zapoznawczej. Aby uzyskać dodatkowe informacje, zapoznaj się z dodatkowymi warunkami użytkowania dla wersji zapoznawczych platformy Microsoft Azure.
Omówienie
Po włączeniu trybu dużej skali usługa Container Insights wykonuje wiele zmian konfiguracji, co powoduje zwiększenie ogólnej przepływności. Obejmuje to użycie uaktualnionego agenta i potoku danych usługi Azure Monitor z ulepszeniami skalowania. Wszystkie te zmiany są wprowadzane w tle przez usługę Azure Monitor i nie wymagają danych wejściowych ani konfiguracji po włączeniu funkcji.
Tryb skalowania wysokiego ma wpływ tylko na warstwę zbierania danych. Pozostałe środowisko usługi Container Insights pozostaje takie samo, a dzienniki są pozyskiwane do tej samej ContainerLogV2
tabeli. Istniejące zapytania i alerty nadal działają, ponieważ zbierane są te same dane.
Aby uzyskać maksymalną obsługiwaną przepływność dzienników, należy użyć jednostek SKU maszyn wirtualnych wysokiej klasy z 16 rdzeniami procesora CPU lub więcej dla węzłów klastra usługi AKS. Użycie jednostek SKU maszyn wirtualnych o niskim poziomie będzie miało wpływ na przepływność dzienników.
Czy mój klaster kwalifikuje się?
Kolekcja dzienników o dużej skali jest odpowiednia dla środowisk wysyłających ponad 2000 dzienników na sekundę (lub 2 MB/s) na węzeł w klastrach Kubernetes i została zaprojektowana i przetestowana pod kątem wysyłania do 50 000 dzienników na sekundę na węzeł. Użyj następujących zapytań dziennika, aby określić, czy klaster jest odpowiedni dla kolekcji dzienników o dużej skali.
Dzienniki na sekundę i na węzeł
ContainerLogV2
| where _ResourceId = "<cluster-resource-id>"
| summarize count() by bin(TimeGenerated, 1s), Computer
| render timechart
Rozmiar dziennika (w MB) na sekundę na węzeł
ContainerLogV2
| where _ResourceId = "<cluster-resource-id>"
| summarize BillableDataMB = sum(_BilledSize)/1024/1024 by bin(TimeGenerated, 1s), Computer
| render timechart
Wymagania wstępne
- Interfejs wiersza polecenia platformy Azure w wersji 2.63.0 lub nowszej.
- Jeśli zainstalowano rozszerzenie interfejsu wiersza polecenia aks-preview, musi to być wersja 7.0.0b4 lub nowsza.
- Schemat klastra należy skonfigurować dla konteneraLogV2.
- Jeśli domyślne limity zasobów (procesor i pamięć) w kontenerze zestawu demonów ama-logs nie spełniają wymagań dotyczących skalowania dzienników, skontaktuj się z kanałem pomocy technicznej firmy Microsoft, aby zwiększyć limity zasobów kontenera ama-logs.
Wymagania dotyczące zapory
Oprócz wymagań zapory sieciowej na potrzeby monitorowania klastra Kubernetes potrzebne są dodatkowe konfiguracje w poniższej tabeli w celu włączenia trybu wysokiej skali w zależności od chmury.
Chmura | Punkt końcowy | Port |
---|---|---|
Chmura publiczna platformy Azure | <dce-name>-<suffix>.<cluster-region-name>-<suffix>.ingest.monitor.azure.com |
443 |
Platforma Microsoft Azure obsługiwana przez chmurę 21Vianet | <dce-name>-<suffix>.<cluster-region-name>-<suffix>.ingest.monitor.azure.cn |
443 |
Chmura platformy Azure Dla instytucji rządowych | <dce-name>-<suffix>.<cluster-region-name>-<suffix>.ingest.monitor.azure.us |
443 |
Punkt końcowy to punkt końcowy pozyskiwania dzienników z punktu końcowego zbierania danych (DCE) dla reguły zbierania danych (DCR) używanej przez klaster. Ten tryb DCE jest tworzony podczas włączania trybu wysokiej skali dla klastra i rozpocznie się od prefiksu MSCI-ingest
.
Ograniczenia
Poniższe scenariusze nie są obsługiwane w wersji zapoznawczej. Zostaną one rozwiązane, gdy funkcja stanie się ogólnie dostępna.
- Klastry usługi AKS z węzłami Arm64
- Platforma Kubernetes z obsługą usługi Azure Arc
- Serwer proxy HTTP z zaufanym certyfikatem
- Dołączanie za pośrednictwem witryny Azure Portal, usługi Azure Policy, programu Terraform i aplikacji Bicep
- Konfigurowanie za pomocą ustawień monitorowania w środowisku portalu usługi AKS Insights
- Automatyczna migracja z istniejącej usługi Container Insights
Włączanie zbierania dzienników o dużej skali
Wykonaj dwa kroki opisane w poniższych sekcjach, aby włączyć tryb wysokiej skali dla klastra.
Uwaga
Tryb skalowania wysokiego dziennika wymaga punktu końcowego zbierania danych (DCE) na potrzeby pozyskiwania. Pozyskiwanie danych dcE jest tworzone z prefiksem MSCI-ingest
dla każdego klastra podczas dołączania. Jeśli skonfigurowano zakres łącza prywatnego usługi Azure Monitor, zostanie również utworzona konfiguracja dcE z prefiksem MSCI-config
.
Aktualizuj configmap
Pierwszym krokiem jest zaktualizowanie mapy konfiguracji klastra w celu poinstruowania zasobników deamonset usługi Container Insights w celu uruchomienia ich w trybie dużej skali.
Postępuj zgodnie ze wskazówkami w temacie Konfigurowanie i wdrażanie narzędzia ConfigMap, aby pobrać i zaktualizować ConfigMap dla klastra. Jedyną zmianą, którą należy wprowadzić w przypadku dzienników o dużej skali, jest włączenie agent_settings.high_log_scale
w następujący agent-settings
sposób:
[agent_settings.high_log_scale]
enabled = true
Po zastosowaniu tej mapy ama-logs-*
konfiguracji zasobniki zostaną automatycznie uruchomione ponownie i skonfigurują zasobniki demona ama-logs do uruchamiania w trybie dużej skali.
Włączanie trybu wysokiego skalowania dla dodatku Monitorowania
Włącz dodatek Monitorowanie w trybie dużej skali przy użyciu następujących poleceń interfejsu wiersza polecenia platformy Azure, aby włączyć tryb dzienników o dużej skali dla dodatku Monitorowanie w zależności od konfiguracji usługi AKS.
Uwaga
Zamiast interfejsu wiersza polecenia można użyć szablonu usługi ARM, aby włączyć tryb skalowania wysokiego dla dodatku Monitorowanie. Zobacz Włączanie szczegółowych informacji o kontenerze, aby uzyskać wskazówki dotyczące włączania usługi Container Insights przy użyciu szablonu usługi ARM. Aby włączyć tryb skalowania na dużą skalę, użyj Microsoft-ContainerLogV2-HighScale
zamiast Microsoft-ContainerLogV2
w parametrze zgodnie z opisem streams
w temacie Konfigurowanie kontrolera domeny przy użyciu szablonów usługi ARM.
Istniejący klaster usługi AKS
az aks enable-addons -a monitoring -g <resource-group-name> -n <cluster-name> --enable-high-log-scale-mode
Istniejący klaster prywatny usługi AKS
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>
Nowy klaster usługi AKS
az aks create -g <cluster-name> -n <cluster-name> enable-addons -a monitoring --enable-high-log-scale-mode
Nowy klaster prywatny usługi AKS
Zobacz Tworzenie prywatnego klastra usługi Azure Kubernetes Service (AKS), aby uzyskać szczegółowe informacje na temat tworzenia klastra prywatnego usługi AKS. Użyj dodatkowych parametrów --enable-high-scale-mode
i --ampls-resource-id
skonfiguruj tryb skalowania wysokiego dziennika przy użyciu identyfikatora zasobu zakresu usługi Private Link usługi Azure Monitor.
Migracja
Jeśli usługa Container Insights jest już włączona dla klastra, należy ją wyłączyć, a następnie ponownie włączyć ją w trybie dużej skali.
- Ponieważ tryb skalowania wysokiego używa innego potoku danych, należy upewnić się, że punkty końcowe potoku nie są blokowane przez zaporę lub inne połączenia sieciowe.
- Tryb skalowania wysokiego wymaga punktu końcowego zbierania danych (DCE) na potrzeby pozyskiwania oprócz standardowego kontrolera domeny na potrzeby zbierania danych. Jeśli utworzono dowolne kontrolery domeny, które używają
Microsoft.ContainerLogV2
metody , musisz zastąpić ją wartościąMicrosoft.ContainerLogV2-HighScale
lub dane zostaną zduplikowane. Należy również utworzyć kontroler domeny na potrzeby pozyskiwania i połączyć go z kontrolerem domeny, jeśli kontroler domeny nie jest jeszcze używany. Aby uzyskać informacje na temat zależności, zapoznaj się z tematem Dołączanie usługi Container Insights za pośrednictwem usługi Azure Resource Manager.
Następne kroki
- Podziel się opinią lub problemami z trybem skalowania na dużą skalę w witrynie https://aka.ms/cihsfeedback.