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 Azure Kubernetes Service (AKS) włączonej przez usługę Azure Arc. Testy używały najnowszej wersji usługi AKS w usłudze Azure Stack HCI.
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 jest zagrożone i może prowadzić do nieoczekiwanych zachowań i awarii. 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 usługi Azure Stack HCI.
Zasób | Maksimum |
---|---|
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 następującą tabelę:
Rola systemu | Rozmiar maszyny wirtualnej |
---|---|
AKS-Host | Standardowa_A4_v2 |
Docelowy węzeł płaszczyzny sterowania klastrem | Default |
Docelowy klaster haProxy równoważenia obciążenia (opcjonalnie) | Standardowa_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 usługi Azure Stack HCI jest następująca:
- Obudowa: Dell PowerEdge R650 Server lub podobny.
- PAMIĘĆ RAM: RDIMM, 3200 MT/s, Podwójne rangi, łą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: 8x HDD (2 TB lub większe) i 2x 1,6 TB NVMe do obsługi konfiguracji magazynu S2D.
- Sieć: cztery (4) 100-Gbit kart sieciowych (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 masz wymóg przekroczenia przetestowanej konfiguracji, zobacz Scaling AKS on Azure Stack HCI (Skalowanie usługi AKS w usłudze Azure Stack HCI).
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 tworzona jest nowa maszyna wirtualna węzła. Stara maszyna wirtualna węzła jest ograniczona, aby uniemożliwić jej wdrażanie obciążeń. Ograniczona maszyna wirtualna jest następnie opróżniona 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 usłudze Azure Stack HCI. Chociaż rozmiary maszyn wirtualnych, takie jak Standard_K8S2_v1 i Standard_K8S_v1 , są obsługiwane w przypadku wdrożeń testowania i niskiego zapotrzebowania na zasoby, 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 |
---|---|---|---|---|
Default | 4 | 4 | ||
Standardowa_A2_v2 | 2 | 4 | ||
Standardowa_A4_v2 | 4 | 8 | ||
Standardowa_D2s_v3 | 2 | 8 | ||
Standardowa_D4s_v3 | 4 | 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 | ||
Standard_DS5_v2 | 16 | 56 | ||
Standardowa_DS13_v2 | 8 | 56 | ||
Standard_K8S_v1 | 4 | 2 | ||
Standard_K8S2_v1 | 2 | 2 | ||
Standard_K8S3_v1 | 4 | 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
- East US
- Southeast Asia
- West Europe
Skalowanie usługi AKS w usłudze Azure Stack HCI
Skalowanie wdrożenia usługi AKS w usłudze Azure Stack HCI obejmuje planowanie z wyprzedzeniem, znając obciążenia i docelowe wykorzystanie 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 założono, że w infrastrukturze bazowej 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 w usłudze AKS, co 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 uruchamiania obciążeń.
Aby określić rozmiar maszyny wirtualnej hosta 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łaszczyzna sterowania, moduł równoważenia obciążenia i węzły robocze 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ą ograniczyć 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 procesu 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.
- W momencie tworzenia klastra docelowego można ustawić tylko rozmiar docelowej płaszczyzny sterowania klastra i maszyn wirtualnych modułu równoważenia obciążenia.
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 usługi Azure Stack HCI.
- 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.
- W tych przypadkach chcesz zarezerwować część ogólnej pojemności usługi Azure Stack HCI.
Sugestie
Aby uzyskać optymalną wydajność, należy ustawić 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 (7) węzłów. Ta konfiguracja gwarantuje, że masz dostępną rezerwę, aby przeprowadzić uaktualnienie lub inne operacje drugiego dnia usługi AKS.
Jeśli chcesz przekroczyć limit 200 maszyn wirtualnych dla maksymalnego rozmiaru sprzętu o rozmiarze ośmiu (8) węzłów klastra usługi Azure Stack HCI, zwiększ rozmiar maszyny wirtualnej hosta usługi AKS. Podwojenie rozmiaru powoduje mniej więcej dwukrotność liczby maszyn wirtualnych, którymi może zarządzać. W klastrze usługi Azure Stack HCI z 8 węzłami można uzyskać dostęp do 8192 (8x1024) maszyn wirtualnych opartych na zalecanych limitach zasobów usługi Azure Stack HCI opisanych w artykule Maksymalna obsługiwana specyfikacja sprzętu. Należy zarezerwować około 30% pojemności, co pozostawia ci 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 dużym stopniu, wymaga starannego podejścia i walidacji.
W takiej skali możesz 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żesz 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 w celu zapewnienia, że usługi mogą być osiągane 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 ramach dostępnych węzłów usługi Azure Stack HCI przy użyciu logiki umieszczania usługi Azure Stack HCI.
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 tworzenia klastra docelowego w tym samym czasie, jeśli klaster fizyczny jest już pełny 50%, ponieważ może to prowadzić do tymczasowej rywalizacji o zasoby. Podczas skalowania w górę docelowych pul węzłów klastra o dużą liczbę należy wziąć 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 umożliwić uaktualnianie i tryb failover. Szczególnie w bardzo dużych środowiskach te operacje, gdy są uruchamiane równolegle, mogą prowadzić do szybkiego wyczerpania zasobów.
W razie wątpliwości skontaktuj się z lokalnym biurem firmy Microsoft, aby uzyskać pomoc lub opublikować go na forum społeczności usługi Azure Stack HCI.