Używanie grup umieszczania w pobliżu w celu zmniejszenia opóźnienia klastrów usługi Azure Kubernetes Service (AKS)
Uwaga
W przypadku korzystania z grup umieszczania w pobliżu w usłudze AKS kolokacja ma zastosowanie tylko do węzłów agenta. Ulepszono opóźnienie węzła do węzła i odpowiedniego hostowanego zasobnika z opóźnieniem zasobnika. Kolokacja nie ma wpływu na rozmieszczenie płaszczyzny sterowania klastra.
Podczas wdrażania aplikacji na platformie Azure możesz utworzyć opóźnienie sieci, rozpowszechniając wystąpienia maszyn wirtualnych między regionami lub strefami dostępności, co może mieć wpływ na ogólną wydajność aplikacji. Grupa umieszczania w pobliżu to logiczne grupowanie używane do upewnienia się, że zasoby obliczeniowe platformy Azure znajdują się fizycznie blisko siebie. Niektóre aplikacje, takie jak gry, symulacje inżynieryjne i transakcje o wysokiej częstotliwości (HFT) wymagają małych opóźnień i zadań, które mogą być wykonywane szybko. W przypadku podobnych scenariuszy obliczeń o wysokiej wydajności (HPC) rozważ użycie grup umieszczania w pobliżu (PPG) dla pul węzłów klastra.
Zanim rozpoczniesz
Ten artykuł wymaga interfejsu wiersza polecenia platformy Azure w wersji 2.14 lub nowszej. Uruchom polecenie az --version
, aby dowiedzieć się, jaka wersja jest używana. Jeśli konieczna będzie instalacja lub uaktualnienie, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.
Ograniczenia
- Grupa umieszczania w pobliżu może mapować tylko na jedną strefę dostępności.
- Pula węzłów musi używać zestawów skalowania maszyn wirtualnych, aby skojarzyć grupę umieszczania w pobliżu.
- Pula węzłów może skojarzyć grupę umieszczania w pobliżu tylko w puli węzłów.
Pule węzłów i grupy umieszczania w pobliżu
Pierwszy zasób wdrażany z grupą umieszczania w pobliżu jest dołączany do określonego centrum danych. Wszystkie dodatkowe zasoby wdrażane z tą samą grupą umieszczania w pobliżu są kolokowane w tym samym centrum danych. Gdy wszystkie zasoby korzystające z grupy umieszczania w pobliżu zostaną zatrzymane (cofnięto przydział) lub usunięte, nie są już dołączone.
- Można skojarzyć wiele pul węzłów z pojedynczą grupą umieszczania w pobliżu.
- Pulę węzłów można skojarzyć tylko z pojedynczą grupą umieszczania w pobliżu.
Konfigurowanie grup umieszczania w pobliżu ze strefami dostępności
Uwaga
Grupy umieszczania w pobliżu wymagają, aby pula węzłów korzystała tylko z jednej strefy dostępności, jednak podstawowa umowa SLA maszyny wirtualnej platformy Azure o wartości 99,9% jest nadal obowiązująca dla maszyn wirtualnych w jednej strefie.
Grupy umieszczania w pobliżu to koncepcja puli węzłów i skojarzona z każdą pulą węzłów. Korzystanie z zasobu PPG nie ma wpływu na dostępność płaszczyzny sterowania usługi AKS, co może mieć wpływ na sposób projektowania klastra ze strefami. Aby zapewnić rozmieszczenie klastra w wielu strefach, zalecamy użycie następującego projektu:
- Aprowizuj klaster z pierwszą pulą systemową przy użyciu trzech stref i bez skojarzonej grupy umieszczania w pobliżu, aby zapewnić, że zasobniki systemu znajdują się w dedykowanej puli węzłów, która rozprzestrzenia się w wielu strefach.
- Dodaj dodatkowe pule węzłów użytkownika z unikatową strefą i grupą umieszczania w pobliżu skojarzona z każdą pulą. Przykładem jest pula węzłów1 w strefie 1 i PPG1, pula węzłów w strefie drugiej i PPG2 oraz pula węzłów3 w strefie 3 z ppG3. Ta konfiguracja gwarantuje, że na poziomie klastra węzły są rozmieszczone w wielu strefach, a każda pojedyncza pula węzłów jest kolokowana w wyznaczonej strefie z dedykowanym zasobem PPG.
Tworzenie nowego klastra usługi AKS z grupą umieszczania w pobliżu
Przyspieszona sieć znacznie poprawia wydajność sieci maszyn wirtualnych. Najlepiej używać grup umieszczania w pobliżu z przyspieszoną siecią. Domyślnie usługa AKS używa przyspieszonej sieci w obsługiwanych wystąpieniach maszyn wirtualnych, które obejmują większość maszyn wirtualnych platformy Azure z co najmniej dwoma procesorami wirtualnymi.
Utwórz grupę zasobów platformy Azure przy użyciu
az group create
polecenia .az group create --name myResourceGroup --location centralus
Utwórz grupę umieszczania w pobliżu przy użyciu
az ppg create
polecenia . Pamiętaj, aby zanotować wartość identyfikatora w danych wyjściowych.az ppg create --name myPPG --resource-group myResourceGroup --location centralus --type standard
Polecenie generuje dane wyjściowe podobne do poniższych przykładowych danych wyjściowych, które zawierają wartość identyfikatora potrzebną do przyszłych poleceń interfejsu wiersza polecenia.
{ "availabilitySets": null, "colocationStatus": null, "id": "/subscriptions/yourSubscriptionID/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myPPG", "location": "centralus", "name": "myPPG", "proximityPlacementGroupType": "Standard", "resourceGroup": "myResourceGroup", "tags": {}, "type": "Microsoft.Compute/proximityPlacementGroups", "virtualMachineScaleSets": null, "virtualMachines": null }
Utwórz klaster usługi AKS przy użyciu
az aks create
polecenia i zastąp wartość myPPGResourceID identyfikatorem zasobu grupy umieszczania w pobliżu z poprzedniego kroku.az aks create \ --resource-group myResourceGroup \ --name myAKSCluster \ --ppg myPPGResourceID --generate-ssh-keys
Dodawanie grupy umieszczania w pobliżu do istniejącego klastra
Grupę umieszczania w pobliżu można dodać do istniejącego klastra, tworząc nową pulę węzłów. Następnie możesz opcjonalnie przeprowadzić migrację istniejących obciążeń do nowej puli węzłów i usunąć oryginalną pulę węzłów.
Użyj tej samej utworzonej wcześniej grupy umieszczania w pobliżu, aby upewnić się, że węzły agenta w obu pulach węzłów w klastrze usługi AKS znajdują się fizycznie w tym samym centrum danych.
Utwórz nową pulę węzłów przy użyciu
az aks nodepool add
polecenia i zastąp wartość myPPGResourceID identyfikatorem zasobu grupy umieszczania w pobliżu.az aks nodepool add \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name mynodepool \ --node-count 1 \ --ppg myPPGResourceID
Czyszczenie
Usuń grupę zasobów platformy Azure wraz z jej zasobami
az group delete
przy użyciu polecenia .az group delete --name myResourceGroup --yes --no-wait
Następne kroki
Dowiedz się więcej o grupach umieszczania w pobliżu.
Azure Kubernetes Service