Udostępnij za pośrednictwem


Rezerwacje zasobów węzłów w usłudze Azure Kubernetes Service (AKS)

Z tego artykułu dowiesz się więcej o rezerwacjach zasobów węzłów w usłudze Azure Kubernetes Service (AKS).

Rezerwacje zasobów

Usługa AKS wykorzystuje zasoby węzłów, aby węzły mogły funkcjonować w ramach klastra. To użycie może spowodować rozbieżność między całkowitymi zasobami węzła a przydzielanymi zasobami w usłudze AKS.

Usługa AKS rezerwuje dwa typy zasobów, procesora CPU i pamięci w każdym węźle, aby zachować wydajność i funkcjonalność węzła. W miarę zwiększania się rozmiaru węzła pod względem zasobów, również rosną rezerwacje zasobów ze względu na rosnącą potrzebę zarządzania zasobnikami wdrożonych przez użytkowników. Należy pamiętać, że nie można zmieniać rezerwacji zasobów w węźle.

Rezerwacje procesora CPU

Zarezerwowany CPU jest zależny od typu węzła i konfiguracji klastra, co może skutkować mniejszą ilością przydzielonego CPU ze względu na działanie dodatkowych funkcji. W poniższej tabeli przedstawiono rezerwacje procesora CPU w mili-rdzeniach.

Rdzenie CPU na hoście 1 rdzeń 2 rdzenie 4 rdzenie 8 rdzeni 16 rdzeni 32 rdzenie 64 rdzenie
Zarezerwowane CPU Kube (millicores) 60 100 140 180 260 420 740

Rezerwacje pamięci

W usłudze AKS pamięć zarezerwowana składa się z sumy dwóch wartości:

AKS 1.29 i późniejsze

  • kubeletdemon ma domyślnie regułę eksmisji pamięci dostępnej < 100 Mi. Ta reguła gwarantuje, że węzeł ma co najmniej 100 Mi allocatable zawsze. Gdy host znajduje się poniżej tego progu dostępnej pamięci, kubelet wyzwala zakończenie jednego z uruchomionych zasobników i zwalnia pamięć na maszynie hosta.

  • Szybkość rezerwacji pamięci ustawiona zgodnie z mniejszą wartością: 20 MB * Maksymalna liczba zasobników obsługiwanych w węźle + 50 MB lub 25% całkowitej ilości zasobów pamięci systemowej.

    Przykłady:

    • Jeśli maszyna wirtualna zapewnia 8 GB pamięci, a węzeł obsługuje maksymalnie 30 zasobników, usługa AKS rezerwuje 20 MB * 30 maksymalnych zasobników + 50 MB = 650 MB dla zarezerwowanego rozwiązania kube-reserved. Allocatable space = 8 GB - 0.65 GB (kube-reserved) - 0.1 GB (eviction threshold) = 7.25 GB or 90.625% allocatable.
    • Jeśli maszyna wirtualna udostępnia 4 GB pamięci, a węzeł obsługuje maksymalnie 70 podów, usługa AKS zastrzega 25% * 4 GB = 1000 MB dla kube-reserved, ponieważ jest to mniej niż 20 MB * 70 Max Pods + 50 MB = 1450 MB.

    Aby uzyskać więcej informacji, zobacz Konfigurowanie maksymalnych zasobników na węzeł w klastrze usługi AKS.

Wersje usługi AKS wcześniejsze niż 1.29

  • kubeletDaemon ma domyślnie regułę eksmisji memory.available < 750 Mi. Ta reguła gwarantuje, że węzeł ma co najmniej 750 Mi pamięci przydzielalnej w każdym momencie. Gdy host znajduje się poniżej tego progu dostępnej pamięci, kubelet wyzwala zakończenie jednego z działających podów i zwalnia pamięć na maszynie hosta.
  • Spadkowe tempo rezerwacji pamięci dla demona kubelet do jego prawidłowego działania (kube-reserved).
    • 25% z pierwszych 4 GB pamięci
    • 20% następnej 4 GB pamięci (do 8 GB)
    • 10% następnej 8 GB pamięci (do 16 GB)
    • 6% następnej 112 GB pamięci (do 128 GB)
    • 2% pamięci więcej niż 128 GB

Uwaga

Usługa AKS rezerwuje dodatkowe 2 GB dla procesów systemowych w węzłach systemu Windows, które nie są częścią pamięci obliczeniowej.

Zasady alokacji pamięci i procesora zostały zaprojektowane, aby:

  • Zachowaj kondycję węzłów agenta, w tym niektóre zasobniki systemu hostowania krytyczne dla kondycji klastra.
  • Spowoduj, aby węzeł zgłaszał mniej pamięci i CPU niż zgłaszałby, gdyby nie był częścią klastra Kubernetes.

Na przykład, jeśli węzeł oferuje 7 GB, zgłasza, że 34% pamięci nie nadaje się do przydzielenia, w tym prog eksmisji wynoszący 750 Mi.

0.75 + (0.25*4) + (0.20*3) = 0.75 GB + 1 GB + 0.6 GB = 2.35 GB / 7 GB = 33.57% reserved

Oprócz rezerwacji dla samego Kubernetes, podstawowy system operacyjny węzła również rezerwuje pewną ilość zasobów CPU i pamięci na utrzymanie funkcji systemu operacyjnego.

Aby uzyskać informacje o skojarzonych najlepszych rozwiązaniach, zobacz Najlepsze rozwiązania dotyczące podstawowych funkcji harmonogramu w usłudze AKS.

Następne kroki