Limity zasobów, rozmiary maszyn wirtualnych i regiony dla usługi AKS włączone przez usługę Azure Arc
Dotyczy: usługa AKS w usłudze Azure Stack HCI 22H2, AKS w systemie Windows Server
Ten artykuł zawiera informacje o przetestowanych konfiguracjach, limitach zasobów, rozmiarach maszyn wirtualnych i regionach dla usługi Azure Kubernetes Service (AKS) włączonej przez usługę Azure Arc. Testy używały najnowszej wersji usługi AKS w usłudze Azure Local.
Maksymalna specyfikacja
Usługa AKS włączona przez wdrożenia usługi Arc została zweryfikowana przy użyciu następujących konfiguracji, w tym określonych wartości maksymalnych. Należy pamiętać, że przekroczenie tych wartości maksymalnych jest zagrożone i może prowadzić do nieoczekiwanych zachowań i niepowodzeń. Ten artykuł zawiera wskazówki dotyczące unikania typowych błędów konfiguracji i może pomóc w utworzeniu większej konfiguracji. Jeśli masz wątpliwości, skontaktuj się z lokalnym biurem firmy Microsoft, aby uzyskać pomoc lub przesłać pytanie w społeczności lokalnej platformy Azure.
Zasób | Maksymalnie |
---|---|
Serwery fizyczne na klaster | 8 |
Łączna liczba maszyn wirtualnych | 200 |
Zalecane limity zostały przetestowane przy użyciu domyślnych rozmiarów maszyn wirtualnych w oparciu o poniższą tabelę:
Rola systemu | Rozmiar maszyny wirtualnej |
---|---|
Host usługi AKS | Standard_A4_v2 |
Docelowy węzeł płaszczyzny sterowania klastrem | Wartość domyślna |
Docelowy moduł równoważenia obciążenia haProxy klastra docelowego (opcjonalnie) | Standard_A4_v2 |
Docelowy węzeł roboczy klastra systemu Linux | Standard_K8S3_v1 |
Docelowy węzeł roboczy klastra systemu Windows | Standard_K8S3_v1 |
Konfiguracja sprzętowa każdego węzła fizycznego w klastrze lokalnym platformy Azure jest następująca:
- Obudowa: Dell PowerEdge R650 Server lub podobny.
- PAMIĘĆ RAM: RDIMM, 3200 MT/s, Podwójna ranga, łącznie 256 GB.
- Procesor: Dwa (2) Intel Xeon Silver 4316 2.3G, 20C/40T, 10.4 GT/s, 30M Cache, Turbo, HT (150 W) DDR4-2666.
- Dysk: dyski HDD 8x (2 TB lub większe) i 2x 1.6 TB NVMe do obsługi konfiguracji magazynu S2D.
- Sieć: cztery (4) 100-gbitowe karty sieciowe (Mellanox lub Intel).
Firma Microsoft przetestowała usługę AKS włączoną przez usługę Arc przy użyciu powyższej konfiguracji. W przypadku pojedynczego węzła. 2 węzły, 4 węzły i 8 węzłów klastry trybu failover systemu Windows. Jeśli wymagana jest przekroczenie przetestowanej konfiguracji, zobacz Skalowanie usługi AKS w usłudze Azure Local.
Ważne
Podczas uaktualniania wdrożenia usługi AKS dodatkowe zasoby są tymczasowo używane. Każda maszyna wirtualna jest uaktualniana w przepływie aktualizacji stopniowej, począwszy od węzłów płaszczyzny sterowania. Dla każdego węzła w klastrze Kubernetes zostanie utworzona nowa maszyna wirtualna węzła. Stara maszyna wirtualna węzła jest ograniczona, aby zapobiec wdrażaniu obciążeń. Ograniczona maszyna wirtualna jest następnie opróżniana ze wszystkich kontenerów, aby dystrybuować kontenery do innych maszyn wirtualnych w systemie. Opróżniona maszyna wirtualna zostanie następnie usunięta z klastra, zamknięta i zastąpiona przez nową zaktualizowaną maszynę wirtualną. Ten proces powtarza się do momentu zaktualizowania wszystkich maszyn wirtualnych.
Dostępne rozmiary maszyn wirtualnych
Następujące rozmiary maszyn wirtualnych dla węzłów płaszczyzny sterowania, węzłów procesu roboczego systemu Linux i węzłów procesu roboczego systemu Windows są dostępne dla usługi AKS w środowisku lokalnym platformy Azure. Chociaż rozmiary maszyn wirtualnych, takie jak Standard_K8S2_v1 i Standard_K8S_v1 , są obsługiwane w przypadku wdrożeń testowania i niskich wymagań dotyczących zasobów, należy używać tych rozmiarów z ostrożnością i stosować rygorystyczne testy, ponieważ mogą one spowodować nieoczekiwane awarie z powodu braku pamięci.
Rozmiar maszyny wirtualnej | Procesor CPU | Pamięć (GB) | Typ procesora GPU | Liczba procesorów GPU |
---|---|---|---|---|
Wartość domyślna | 4 | 4 | ||
Standardowa_A2_v2 | 2 | 4 | ||
Standardowa_A4_v2 | 4 | 8 | ||
Standardowa_D2s_v3 | 2 | 8 | ||
Standardowa_D4s_v3 | 100 | 16 | ||
Standardowa_D8s_v3 | 8 | 32 | ||
Standardowa_D16s_v3 | 16 | 64 | ||
Standard_D32s_v3 | 32 | 128 | ||
Standard_DS2_v2 | 2 | 7 | ||
Standardowa_DS3_v2 | 2 | 14 | ||
Standardowa_DS4_v2 | 8 | 28 | ||
Standardowa_DS5_v2 | 16 | 56 | ||
Standardowa_DS13_v2 | 8 | 56 | ||
Standard_K8S_v1 | 4 | 2 | ||
Standard_K8S2_v1 | 2 | 2 | ||
Standard_K8S3_v1 | 100 | 6 | ||
Standard_NK6 | 6 | 12 | Tesla T4 | 1 |
Standard_NK12 | 12 | 24 | Tesla T4 | 2 |
Obsługiwane regiony platformy Azure na potrzeby rejestracji na platformie Azure
Usługa AKS włączona przez usługę Arc jest obsługiwana w następujących regionach świadczenia usługi Azure:
- Australia Wschodnia
- Wschodnie stany USA
- Southeast Asia
- West Europe
Skalowanie usługi AKS w środowisku lokalnym platformy Azure
Skalowanie wdrożenia usługi AKS na platformie Azure w środowisku lokalnym polega na planowaniu z wyprzedzeniem przez poznanie obciążeń i docelowego wykorzystania klastra. Ponadto rozważ zasoby sprzętowe w podstawowej infrastrukturze, takie jak łączna liczba rdzeni procesora CPU, łączna ilość pamięci, magazyn, adresy IP itd.
W poniższych przykładach przyjęto założenie, że w podstawowej infrastrukturze są wdrażane tylko obciążenia oparte na usłudze AKS. Wdrażanie obciążeń innych niż AKS, takich jak autonomiczne lub klastrowane maszyny wirtualne lub serwery baz danych, zmniejsza zasoby dostępne dla usługi AKS, które należy wziąć pod uwagę.
Przed rozpoczęciem należy wziąć pod uwagę następujące kwestie, aby określić maksymalną skalę i liczbę klastrów docelowych, które należy obsługiwać:
- Liczba adresów IP dostępnych dla zasobników w klastrze docelowym.
- Liczba adresów IP dostępnych dla usług Kubernetes w klastrze docelowym.
- Liczba zasobników potrzebnych do uruchomienia obciążeń.
Aby określić rozmiar maszyny wirtualnej hosta usługi Azure Kubernetes Service, musisz znać liczbę węzłów procesu roboczego i klastrów docelowych, ponieważ określa rozmiar maszyny wirtualnej hosta usługi AKS. Na przykład:
- Liczba klastrów docelowych w ostatnim wdrożonym systemie.
- Liczba węzłów, w tym płaszczyzny sterowania, modułu równoważenia obciążenia i węzłów roboczych we wszystkich klastrach docelowych.
Uwaga
Pojedynczy host usługi AKS może zarządzać tylko klastrami docelowymi na tej samej platformie.
Ponadto, aby określić rozmiar docelowego węzła płaszczyzny sterowania klastra, musisz znać liczbę zasobników, kontenerów i węzłów roboczych, które planujesz wdrożyć w każdym klastrze docelowym.
Ustawienia domyślne, których obecnie nie można zmienić w usłudze AKS
Istnieją domyślne konfiguracje i ustawienia, które nie są obecnie dostępne dla kontroli klienta podczas wdrażania lub po nim. Te ustawienia mogą ograniczać skalę dla danego klastra docelowego.
- Liczba adresów IP zasobników Kubernetes w klastrze docelowym jest ograniczona do podsieci
10.244.0.0/16
. Oznacza to, że dla zasobników można używać 255 adresów IP na węzeł roboczy we wszystkich przestrzeniach nazw platformy Kubernetes. Aby wyświetlić zasobnik CIDR przypisany do każdego węzła roboczego w klastrze, użyj następującego polecenia w programie PowerShell:
kubectl get nodes -o json | findstr 'hostname podCIDR'
"kubernetes.io/hostname": "moc-lip6cotjt0f",
"f:podCIDR": {},
"f:podCIDRs": {
"f:kubernetes.io/hostname": {},
"podCIDR": "10.244.2.0/24",
"podCIDRs": [
"kubernetes.io/hostname": "moc-lmb6zqozk4m",
"f:podCIDR": {},
"f:podCIDRs": {
"f:kubernetes.io/hostname": {},
"podCIDR": "10.244.4.0/24",
"podCIDRs": [
"kubernetes.io/hostname": "moc-wgwhhijxtfv",
"f:podCIDR": {},
"f:podCIDRs": {
"f:kubernetes.io/hostname": {},
"podCIDR": "10.244.5.0/24",
"podCIDRs": [
W tym przykładzie można zobaczyć trzy węzły z trzema regułami CIDR, z których każdy może hostować 254 zasobniki. Dokumentacja skalowania platformy Kubernetes zaleca, aby ze względów wydajności nie przekraczać 110 zasobników na węzeł. Zobacz Zagadnienia dotyczące dużych klastrów.
Inne zagadnienia:
- Liczba adresów IP dla usług Kubernetes spoza przydzielonej puli adresów VIP pochodzi z
10.96.0.0/16
puli adresów. System korzysta z jednego z 255 dostępnych adresów serwera interfejsu API Kubernetes. - Rozmiar maszyny wirtualnej hosta usługi AKS można ustawić tylko podczas instalacji po pierwszym uruchomieniu polecenia Set-AksHciConfig . Nie można go zmienić później.
- Rozmiar docelowej płaszczyzny sterowania klastra i maszyn wirtualnych modułu równoważenia obciążenia można ustawić tylko podczas tworzenia klastra docelowego.
Przykład skalowania
Poniższy przykład skalowania jest oparty na tych ogólnych założeniach/przypadkach użycia:
- Chcesz mieć możliwość całkowitego tolerowania utraty jednego węzła fizycznego w klastrze lokalnym platformy Azure.
- Chcesz obsługiwać uaktualnianie klastrów docelowych do nowszych wersji.
- Chcesz zezwolić na wysoką dostępność węzłów płaszczyzny sterowania klastra docelowego i węzłów modułu równoważenia obciążenia.
- Chcesz zarezerwować część ogólnej pojemności lokalnej platformy Azure w tych przypadkach.
Sugestie
Aby uzyskać optymalną wydajność, upewnij się, że ustawiono co najmniej 15 procent (100/8=12,5) pojemności klastra, aby umożliwić ponowne dystrybuowanie wszystkich zasobów z jednego węzła fizycznego do pozostałych siedmiu węzłów (7). Ta konfiguracja gwarantuje, że masz pewną rezerwę dostępną do przeprowadzenia uaktualnienia lub innego dnia dwóch operacji usługi AKS.
Jeśli chcesz przekroczyć limit 200 maszyn wirtualnych dla maksymalnego rozmiaru sprzętu ośmiu (8) węzłów klastra lokalnego platformy Azure, zwiększ rozmiar maszyny wirtualnej hosta usługi AKS. Podwojenie rozmiaru powoduje mniej więcej dwukrotnie większą liczbę maszyn wirtualnych, którymi może zarządzać. W klastrze lokalnym platformy Azure z 8 węzłami można uzyskać dostęp do 8192 (8x1024) maszyn wirtualnych na podstawie zalecanych limitów zasobów platformy Azure lokalnych opisanych w artykule Maksymalna obsługiwana specyfikacja sprzętu. Należy zarezerwować około 30% pojemności, co pozostawia teoretyczny limit 5734 maszyn wirtualnych we wszystkich węzłach.
- Standard_D32s_v3 dla hosta usługi AKS z 32 rdzeniami i 128 GB — może obsługiwać maksymalnie 1600 węzłów.
Uwaga
Ponieważ ta konfiguracja nie została przetestowana w szerokim zakresie, wymaga starannego podejścia i weryfikacji.
W takiej skali można podzielić środowisko na co najmniej 8 klastrów docelowych z 200 węzłami roboczymi.
Aby uruchomić 200 węzłów roboczych w jednym klastrze docelowym, można użyć domyślnej płaszczyzny sterowania i rozmiaru modułu równoważenia obciążenia. W zależności od liczby zasobników na węzeł można przejść w górę co najmniej jeden rozmiar na płaszczyźnie sterowania i użyć Standard_D8s_v3.
W zależności od liczby usług Kubernetes hostowanych w każdym klastrze docelowym może być konieczne zwiększenie rozmiaru maszyny wirtualnej modułu równoważenia obciążenia, a także podczas tworzenia klastra docelowego, aby upewnić się, że usługi mogą być dostępne z wysoką wydajnością i odpowiednio kierowany ruch.
Wdrożenie usługi AKS włączone przez usługę Arc dystrybuuje węzły robocze dla każdej puli węzłów w klastrze docelowym w dostępnych węzłach lokalnych platformy Azure przy użyciu logiki umieszczania lokalnego platformy Azure.
Ważne
Umieszczanie węzła nie jest zachowywane podczas uaktualniania platformy i usługi AKS i zmienia się w czasie. Węzeł fizyczny, który zakończył się niepowodzeniem, będzie również mieć wpływ na dystrybucję maszyn wirtualnych w pozostałych węzłach klastra.
Uwaga
Nie uruchamiaj więcej niż czterech klastrów docelowych w tym samym czasie, jeśli klaster fizyczny jest już pełny o 50%, ponieważ może to prowadzić do tymczasowej rywalizacji o zasoby. Podczas skalowania w górę docelowych pul węzłów klastra według dużych liczb weź pod uwagę dostępne zasoby fizyczne, ponieważ usługa AKS nie weryfikuje dostępności zasobów dla równoległych procesów tworzenia/skalowania. Zawsze zapewnij wystarczającą ilość rezerw, aby zezwolić na uaktualnienia i tryb failover. Szczególnie w bardzo dużych środowiskach te operacje, gdy są uruchamiane równolegle, mogą prowadzić do szybkiego wyczerpania zasobów.
Jeśli masz wątpliwości, skontaktuj się z lokalnym biurem firmy Microsoft, aby uzyskać pomoc lub opublikować go na forum społeczności lokalnej platformy Azure.