Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W miarę zmiany wymagań dotyczących obciążeń można skojarzyć istniejące grupy rezerwacji pojemności (CRG) z pulami węzłów usługi Azure Kubernetes Service (AKS), aby zagwarantować przydzieloną pojemność. Grupy rezerwacji pojemności umożliwiają rezerwę pojemności obliczeniowej w regionie platformy Azure lub strefie dostępności przez dowolny czas. Ta funkcja jest przydatna w przypadku obciążeń wymagających gwarantowanej pojemności, takich jak te z przewidywalnymi wzorcami ruchu lub tymi, które muszą spełniać określone wymagania dotyczące wydajności.
Z tego artykułu dowiesz się, jak używać grup rezerwacji pojemności z pulami węzłów w usłudze AKS.
Uwaga / Notatka
Usunięcie puli węzłów automatycznie usuwa skojarzenie tej puli z wszelkimi powiązanymi grupami rezerwacji pojemności przed usunięciem samej puli węzłów. Usunięcie klastra powoduje automatyczne odłączenie wszystkich pul węzłów w tym klastrze od powiązanych z nimi grup rezerwacji pojemności.
Wymagania wstępne dotyczące używania grup rezerwacji pojemności z pulami węzłów usługi AKS
- Musisz zainstalować i skonfigurować interfejs wiersza polecenia platformy Azure w wersji 2.56 lub nowszej. Uruchom
az --version, aby znaleźć wersję. Jeśli konieczna będzie instalacja lub uaktualnienie, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure. - Potrzebna jest istniejąca grupa rezerwacji pojemności z co najmniej jedną rezerwacją pojemności. Jeśli nie, do klastra dodana zostaje pula węzłów z ostrzeżeniem, a żadna grupa rezerwacji pojemności nie jest z nią skojarzona.
- Musisz utworzyć przypisaną przez użytkownika tożsamość zarządzaną z rolą
Contributordla grupy zasobów, która zawiera grupę rezerwacji pojemności, i przypisać tę tożsamość do klastra AKS. Tożsamości zarządzane przypisane przez system nie działają dla tej funkcji.
Ważna
W przypadku grup rezerwacji pojemności udostępnionej lub między subskrypcjami użytkownik lub jednostka usługi z uruchomionym poleceniem usługi AKS musi mieć Microsoft.Compute/capacityReservationGroups/write uprawnienie do połączonej grupy rezerwacji pojemności. Szczegółowe uprawnienia odbiorcy dla grupy współdzielonej rezerwacji pojemności używane przez maszyny wirtualne, takie jak Microsoft.Compute/capacityReservationGroups/deploy/action, nie są obecnie wystarczające do skojarzenia puli węzłów usługi AKS z grupą rezerwacji pojemności.
Uprawnienia przypisane do tożsamości zarządzanej klastra AKS nie zastępują tej weryfikacji autoryzacji podmiotu wywołującego. Tożsamość zarządzana klastra musi nadal mieć wymagane uprawnienia do grupy zasobów, która zawiera grupę rezerwacji pojemności, jak opisano w tym artykule.
Tworzenie tożsamości zarządzanej przypisanej przez użytkownika i przypisywanie jej do klastra usługi AKS
Utwórz tożsamość zarządzaną przypisaną przez użytkownika przy użyciu
az identity createpolecenia .az identity create --name <identity-name> --resource-group <resource-group-name> --location <location>Pobierz identyfikator tożsamości zarządzanej przypisanej przez użytkownika przy użyciu
az identity showpolecenia i ustaw go na zmienną środowiskową.IDENTITY_ID=$(az identity show --name <identity-name> --resource-group <resource-group-name> --query identity.id -o tsv)Przy użyciu polecenia
Contributor, przypisz rolę do tożsamości przypisanej przez użytkownikaaz role assignment create.az role assignment create --assignee $IDENTITY_ID --role "Contributor" --scope /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>Propagacja przypisania roli może potrwać do 60 minut.
Przypisz przypisaną tożsamość zarządzaną przez użytkownika do nowego lub istniejącego klastra usługi AKS za pomocą flagi
--assign-identityz poleceniemaz aks createlubaz aks update.# Create a new AKS cluster with the user-assigned managed identity az aks create \ --resource-group <resource-group-name> \ --name <cluster-name> \ --location <location> \ --node-vm-size <vm-size> --node-count <node-count> \ --assign-identity $IDENTITY_ID \ --generate-ssh-keys # Update an existing AKS cluster to use the user-assigned managed identity az aks update \ --resource-group <resource-group-name> \ --name <cluster-name> \ --location <location> \ --node-vm-size <vm-size> \ --node-count <node-count> \ --enable-managed-identity \ --assign-identity $IDENTITY_ID
Pobierz identyfikator istniejącej grupy rezerwacji pojemności
Pobierz identyfikator istniejącej grupy rezerwacji pojemności przy użyciu az capacity reservation group show polecenia i ustaw go na zmienną środowiskową.
CRG_ID=$(az capacity reservation group show --capacity-reservation-group <crg-name> --resource-group <resource-group-name> --query id -o tsv)
Skojarz istniejącą grupę rezerwacji pojemności z nowym klastrem
Skojarz istniejącą grupę rezerwacji pojemności z domyślną pulą węzłów systemowych podczas tworzenia klastra, uruchamiając polecenie az aks create z flagami --assign-identity i --crg-id.
az aks create \
--resource-group <resource-group-name> \
--name <cluster-name> \
--location <location> \
--node-vm-size <vm-size> \
--node-count <node-count> \
--assign-identity $IDENTITY_ID \
--crg-id $CRG_ID \
--generate-ssh-keys
Kojarzenie istniejącej grupy rezerwacji pojemności z nową pulą węzłów
Skojarz istniejącą grupę rezerwacji pojemności z nową pulą węzłów użytkownika przy użyciu az aks nodepool add polecenia z flagą --crg-id .
az aks nodepool add --resource-group <resource-group-name> --cluster-name <cluster-name> --name <node-pool-name> --crg-id $CRG_ID
Aby skojarzyć istniejącą grupę rezerwacji pojemności z nową pulą węzłów systemowych, utwórz pulę węzłów za pomocą flag --mode System i --crg-id. W przypadku klastrów produkcyjnych użyj co najmniej trzech węzłów dla pul węzłów systemowych.
az aks nodepool add \
--resource-group <resource-group-name> \
--cluster-name <cluster-name> \
--name <system-node-pool-name> \
--mode System \
--node-count 3 \
--node-taints CriticalAddonsOnly=true:NoSchedule \
--crg-id $CRG_ID
Skojarzenie istniejącej grupy rezerwacji mocy z istniejącą pulą węzłów (wersja zapoznawcza)
Powiąż istniejącą grupę rezerwacji pojemności z istniejącą pulą węzłów za pomocą polecenia az aks nodepool update z flagą --crg-id.
- W przypadku pul węzłów strefowych ta operacja inicjuje aktualizację stopniowej puli węzłów docelowych. Proces aktualizacji obejmuje stopniowe kordonowanie i drenowanie wszystkich węzłów, a następnie ponowne uruchomienie, aby zastosować tę zmianę.
- W przypadku pul węzłów użytkowników innych niż strefowe (regionalne) w wersji zapoznawczej najpierw przeskaluj pulę węzłów do zera, a następnie zastosuj grupę rezerwacji zasobów.
- W przypadku niestrefowych (regionalnych) pul węzłów systemowych nie skaluj puli węzłów systemowych do zera. Zamiast tego utwórz nową pulę węzłów systemowych skojarzoną z grupą rezerwacji pojemności, sprawdź, czy nowa pula węzłów jest gotowa, a następnie usuń starą pulę węzłów systemowych. Usługa AKS wymaga co najmniej jednej puli węzłów systemowych przez cały czas.
Prerequisites
Przed uruchomieniem
aks-previewtego polecenia zainstaluj wersję20.0.0b7rozszerzenia Azure CLI lub nowszą.Upewnij się, że grupa rezerwacji zasobów ma wystarczające zasoby dla strategii uaktualniania puli węzłów. W przypadku
maxSurge > 0, zarezerwuj dodatkowe zasoby na potrzeby wartości max surge. Na przykład pula 10-węzłowa z parametremmaxSurgeustawionym na2może podczas aktualizacji uruchamiać maksymalnie 12 węzłów. Ta dodatkowa pojemność nie jest wymagana w przypadku wdrożeń wykorzystujących wyłącznie maxUnavailable ani regionalnych ścieżek skalowanych do zera.az aks nodepool update --resource-group <resource-group-name> --cluster-name <cluster-name> --name <node-pool-name> --crg-id $CRG_IDJeśli polecenie zakończy się niepowodzeniem z komunikatem
LinkedAuthorizationFailedi będzie zawierać odwołanie doMicrosoft.Compute/capacityReservationGroups/write, nadaj to uprawnienie zalogowanemu użytkownikowi lub jednostce usługi uruchamiającej to polecenie w docelowej grupie rezerwacji pojemności.
Następne kroki: Zarządzanie pulami węzłów w usłudze AKS
Aby dowiedzieć się więcej na temat zarządzania pulami węzłów w usłudze AKS, zobacz Zarządzanie pulami węzłów w usłudze Azure Kubernetes Service (AKS). Aby dowiedzieć się, jak dodawać, aktualizować lub usuwać pule węzłów systemowych, zobacz Używanie pul węzłów systemowych w Azure Kubernetes Service (AKS).