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)
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 za pomocą polecenia az aks nodepool add z flagą --crg-id. W poniższym przykładzie przyjęto założenie, że masz grupę CRG o nazwie "myCRG".
az aks nodepool add --resource-group <resource-group-name> --cluster-name <cluster-name> --name <node-pool-name> --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 innych niż strefowe (regionalne) w wersji zapoznawczej najpierw przeskaluj pulę węzłów do zera, a następnie zastosuj grupę rezerwacji pojemności.
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.
Skojarz istniejącą grupę rezerwacji pojemności z pulą węzłów systemowych
Aby skojarzyć istniejącą grupę rezerwacji pojemności z pulą węzłów systemowych, należy przypisać tożsamość zarządzaną przypisaną przez użytkownika z rolą Contributor do klastra podczas tworzenia klastra. Następnie możesz użyć --crg-id flagi , aby skojarzyć grupę rezerwacji pojemności z pulą węzłów systemowych.
Utwórz nowy klaster usługi AKS z tożsamością zarządzaną przypisaną przez użytkownika i skojarz go z grupą rezerwacji pojemności przy użyciu flag
--assign-identityi--crg-idz poleceniemaz aks create.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
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).