Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Naarmate uw workloadvereisten veranderen, kunt u bestaande capaciteitsreserveringsgroepen (CRG's) koppelen aan uw AKS-knooppuntgroepen (Azure Kubernetes Service) om toegewezen capaciteit voor hen te garanderen. Met capaciteitsreserveringsgroepen kunt u rekencapaciteit reserveren in een Azure-regio of beschikbaarheidszone voor elke duur van de tijd. Deze functie is handig voor workloads waarvoor gegarandeerde capaciteit is vereist, zoals werkbelastingen met voorspelbare verkeerspatronen of werkbelastingen die moeten voldoen aan specifieke prestatievereisten.
In dit artikel leert u hoe u capaciteitsreserveringsgroepen gebruikt met knooppuntgroepen in AKS.
Opmerking
Als u een knooppuntgroep verwijdert, wordt die knooppuntgroep impliciet losgekoppeld van een gekoppelde capaciteitsreserveringsgroep voordat de knooppuntgroep wordt verwijderd. Als u een cluster verwijdert, worden alle knooppuntgroepen in dat cluster impliciet losgekoppeld van de bijbehorende capaciteitsreserveringsgroepen.
Vereisten voor het gebruik van capaciteitsreserveringsgroepen met AKS-knooppuntgroepen
- U moet Azure CLI versie 2.56 of hoger hebben geïnstalleerd en geconfigureerd. Voer
az --versionuit om de versie te vinden. Als u Azure CLI wilt installeren of upgraden, raadpleegt u Azure CLI installeren. - U hebt een bestaande capaciteitsreserveringsgroep met ten minste één capaciteitsreservering nodig. Als dat niet het geval is, dan wordt de knooppool met een waarschuwing aan het cluster toegevoegd en wordt er geen capaciteitsreserveringsgroep geassocieerd.
- U moet een door de gebruiker toegewezen beheerde identiteit maken met de
Contributorrol voor de resourcegroep die de capaciteitsreserveringsgroep bevat en de identiteit toewijst aan uw AKS-cluster. Door het systeem toegewezen beheerde identiteiten werken niet voor deze functie.
Important
Voor reserveringsgroepen voor gedeelde of abonnementsoverschrijdende capaciteit moet de gebruiker of service-principal die de AKS-opdracht uitvoert, machtigingen hebben Microsoft.Compute/capacityReservationGroups/write voor de gekoppelde capaciteitsreserveringsgroep. De gedetailleerde gebruikersmachtigingen voor de reserveringsgroep voor gedeelde capaciteit die worden gebruikt voor virtuele machines, zoals Microsoft.Compute/capacityReservationGroups/deploy/action, zijn momenteel niet voldoende voor het koppelen van een AKS-knooppuntgroep aan een capaciteitsreserveringsgroep.
Machtigingen die zijn toegewezen aan de beheerde identiteit van het AKS-cluster, vervangen deze autorisatiecontrole van de aanroeper niet. De beheerde identiteit van het cluster heeft nog steeds de vereiste machtigingen nodig voor de resourcegroep die de capaciteitsreserveringsgroep bevat, zoals beschreven in dit artikel.
Een door de gebruiker toegewezen beheerde identiteit maken en deze toewijzen aan een AKS-cluster
Maak een door de gebruiker toegewezen beheerde identiteit met behulp van de
az identity createopdracht.az identity create --name <identity-name> --resource-group <resource-group-name> --location <location>Haal de id op van de door de gebruiker toegewezen beheerde identiteit met behulp van de
az identity showopdracht en stel deze in op een omgevingsvariabele.IDENTITY_ID=$(az identity show --name <identity-name> --resource-group <resource-group-name> --query identity.id -o tsv)Wijs de
Contributorrol toe aan de door de gebruiker toegewezen identiteit met behulp van deaz role assignment createopdracht.az role assignment create --assignee $IDENTITY_ID --role "Contributor" --scope /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>Het kan tot 60 minuten duren voordat de roltoewijzing is doorgegeven.
Wijs de door de gebruiker toegewezen beheerde identiteit toe aan een nieuw of bestaand AKS-cluster met behulp van de
--assign-identityvlag met deaz aks createofaz aks updateopdracht.# 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
Verkrijg de ID van een bestaande capaciteitsreserveringsgroep
Haal de id van een bestaande capaciteitsreserveringsgroep op met behulp van de az capacity reservation group show opdracht en stel deze in op een omgevingsvariabele.
CRG_ID=$(az capacity reservation group show --capacity-reservation-group <crg-name> --resource-group <resource-group-name> --query id -o tsv)
Een bestaande capaciteitsreserveringsgroep koppelen aan een nieuw cluster
Koppel een bestaande capaciteitsreserveringsgroep aan de standaardsysteemknooppuntgroep tijdens het maken van het cluster door de az aks create opdracht uit te voeren met de --assign-identity en --crg-id vlaggen.
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
Een bestaande capaciteitsreserveringsgroep koppelen aan een nieuwe knooppuntgroep
Koppel een bestaande capaciteitsreserveringsgroep aan een nieuwe gebruikersknooppuntgroep met behulp van de az aks nodepool add opdracht met de --crg-id vlag.
az aks nodepool add --resource-group <resource-group-name> --cluster-name <cluster-name> --name <node-pool-name> --crg-id $CRG_ID
Als u een bestaande capaciteitsreserveringsgroep wilt koppelen aan een nieuwe systeem-nodepool, maakt u de nodepool met de --mode System- en --crg-id-vlaggen. Gebruik voor productieclusters minimaal drie knooppunten voor systeemknooppuntgroepen.
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
Een bestaande capaciteitsreserveringsgroep koppelen aan een bestaande knooppuntgroep (preview)
Koppel een bestaande capaciteitsreserveringsgroep aan een bestaande knooppuntgroep met behulp van de az aks nodepool update opdracht met de --crg-id vlag.
- Voor zonale knooppuntgroepen wordt met deze bewerking een gefaseerde update van de doelknooppuntgroep gestart. Het updateproces omvat het gefaseerd cordoneren en drainen van alle knooppunten, gevolgd door een herstart om de wijziging door te voeren.
- Voor niet-zonegebonden (regionale) gebruikersknooppuntpools tijdens de preview schaalt u eerst de knooppuntpool naar nul en past u vervolgens de capaciteitsreserveringsgroep toe.
- Voor niet-zonegebonden (regionale) systeemknooppuntgroepen moet u de systeemknooppuntgroep niet schalen naar nul. Maak in plaats daarvan een nieuwe systeemnodepool die is gekoppeld aan de capaciteitsreserveringsgroep, controleer of de nieuwe nodepool gereed is en verwijder vervolgens de oude systeemnodepool. AKS vereist ten minste één systeemknooppuntgroep op elk moment.
Prerequisites
Installeer de
aks-previewAzure CLI-extensieversie20.0.0b7of hoger voordat u deze opdracht uitvoert.Zorg ervoor dat de capaciteitsreserveringsgroep voldoende capaciteit heeft voor de upgradestrategie van uw knooppuntgroep. Wanneer
maxSurge > 0, reserveert u extra capaciteit voor de maximale surge-waarde. Een pool met 10 knooppunten waarbijmaxSurgeis ingesteld op2, kan tijdens een upgrade bijvoorbeeld maximaal 12 knooppunten draaien. Deze extra capaciteit is niet vereist voor maxUnavailable-implementaties of regionale geschaalde naar nul-paden.az aks nodepool update --resource-group <resource-group-name> --cluster-name <cluster-name> --name <node-pool-name> --crg-id $CRG_IDAls de opdracht mislukt met
LinkedAuthorizationFaileden verwijst naarMicrosoft.Compute/capacityReservationGroups/write, verleen die machtiging aan de aangemelde gebruiker of service-principal die de opdracht uitvoert voor de doelcapaciteitsreserveringsgroep.
Volgende stappen: Knooppuntgroepen beheren in AKS
Zie Knooppuntgroepen beheren in Azure Kubernetes Service (AKS) voor meer informatie over het beheren van knooppuntgroepen in AKS. Zie Systeemknooppuntgroepen gebruiken in Azure Kubernetes Service (AKS) voor meer informatie over het toevoegen, bijwerken of verwijderen van systeemknooppuntgroepen.