Automatisera uppgraderingar av Kubernetes- och nodavbildningar i flera kluster med Azure Kubernetes Fleet Manager (förhandsversion)
Plattformsadministratörer som hanterar ett stort antal kluster har ofta problem med att mellanlagring av uppdateringar av flera kluster (till exempel uppgradering av nodoperativsystemavbildning eller Kubernetes-versioner) på ett säkert och förutsägbart sätt. För att hantera den här utmaningen kan du med Azure Kubernetes Fleet Manager (Fleet) samordna uppdateringar över flera kluster med hjälp av uppdateringskörningar.
Uppdateringskörningar består av steg, grupper och strategier och kan tillämpas antingen manuellt, för engångsuppdateringar eller automatiskt för pågående regelbundna uppdateringar med hjälp av profiler för automatisk uppgradering. Alla uppdateringskörningar (manuella eller automatiserade) respekterar underhållsperioder för medlemskluster.
Den här artikeln beskriver hur du använder profiler för automatisk uppgradering för att automatiskt utlösa uppdateringskörningar när nya Kubernetes- eller nodbildversioner görs tillgängliga.
Viktigt!
Förhandsversionsfunktionerna i Azure Kubernetes Fleet Manager är tillgängliga via självbetjäning och opt-in. Förhandsversioner tillhandahålls "som är" och "som tillgängliga", och de undantas från serviceavtalen och den begränsade garantin. Förhandsversioner av Azure Kubernetes Fleet Manager omfattas delvis av kundsupport på bästa sätt. Därför är dessa funktioner inte avsedda för produktionsanvändning.
Förutsättningar
Läs den konceptuella översikten över profiler för automatisk uppgradering, som innehåller en förklaring av konfigurationer som refereras till i den här guiden.
Du måste ha en fleet-resurs med ett eller flera medlemskluster. Om inte följer du snabbstarten för att skapa en Fleet-resurs och ansluta till AKS-kluster (Azure Kubernetes Service) som medlemmar.
Om du vill använda en uppdateringsstrategi bör du konfigurera en med hjälp av anvisningarna i artikeln om uppdateringskörning. Du behöver resursidentifieraren för uppdateringsstrategin som ska användas med en profil för automatisk uppgradering.
Ange följande miljövariabler:
export GROUP=<resource-group> export FLEET=<fleet-name> export AUTOUPGRADEPROFILE=<upgrade-profile-name> # Optional export STRATEGYID=<strategy-id> export CLUSTER=<ask-cluster-name>
Du behöver Azure CLI version 2.61.0 eller senare installerat. Information om hur du installerar eller uppgraderar finns i Installera Azure CLI.
Du behöver
fleet
också Azure CLI-tillägget version 1.3.0 eller senare, som du kan installera genom att köra följande kommando:az extension add --name fleet
Kör följande kommando för att uppdatera till den senaste versionen av tillägget som släpptes:
az extension update --name fleet
Kommentar
Automatiska uppgraderingsutlösta uppdateringskörningar respekterar planerade underhållsperioder som du anger på AKS-klusternivå. Mer information finns i planerat underhåll över flera medlemskluster som förklarar hur uppdateringskörningar hanterar medlemskluster som har konfigurerats med planerade underhållsperioder.
Skapa profiler för automatisk uppgradering
az fleet autoupgradeprofile create
Använd kommandot för att skapa profiler på det sätt som visas.
Du kan skapa en inaktiverad profil för automatisk uppgradering genom att skicka --disabled
argumentet när du använder create
kommandot . För att aktivera profilen för automatisk uppgradering måste du återisera hela create
kommandot och utelämna --disabled
argumentet.
Kubernetes-uppdateringar för stabil kanal
Uppdatera till den senaste kubernetes-korrigeringsversionen som stöds på delversion N-1, där N är den senaste delversionen som stöds.
Uppdatera medlemskluster sekventiellt en i taget.
az fleet autoupgradeprofile create \
--resource-group $GROUP \
--fleet-name $FLEET \
--name $AUTOUPGRADEPROFILE \
--channel Stable
Uppdatera medlemskluster med hjälp av en befintlig uppdateringsstrategi.
az fleet autoupgradeprofile create \
--resource-group $GROUP \
--fleet-name $FLEET \
--name $AUTOUPGRADEPROFILE \
--update-strategy-id $STRATEGYID \
--channel Stable
Uppdatera medlemskluster med hjälp av en befintlig uppdateringsstrategi, vilket säkerställer att samma nodavbildningsversion används i varje Azure-region. Medlemskluster kör alla samma nodavbildningsversion.
az fleet autoupgradeprofile create \
--resource-group $GROUP \
--fleet-name $FLEET \
--name $AUTOUPGRADEPROFILE \
--update-strategy-id $STRATEGYID \
--channel Stable \
--node-image-selection-type Consistent
Uppdatera medlemskluster med hjälp av en befintlig uppdateringsstrategi med den senaste tillgängliga nodavbildningsversionen för varje Azure-region. Medlemskluster kan köra flera nodavbildningsversioner.
az fleet autoupgradeprofile create \
--resource-group $GROUP \
--fleet-name $FLEET \
--name $AUTOUPGRADEPROFILE \
--update-strategy-id $STRATEGYID \
--channel Stable \
--node-image-selection-type Latest
Uppdateringar av nodbild
Uppdatera noder med en nyligen korrigerad virtuell hårddisk som innehåller säkerhetskorrigeringar och felkorrigeringar.
Uppdatera nodavbildningar för medlemskluster, bearbeta kluster sekventiellt en i taget.
az fleet autoupgradeprofile create \
--resource-group $GROUP \
--fleet-name $FLEET \
--name $AUTOUPGRADEPROFILE \
--channel NodeImage
Uppdatera nodavbildningar för medlemskluster, bearbeta kluster med hjälp av en befintlig uppdateringsstrategi.
az fleet autoupgradeprofile create \
--resource-group $GROUP \
--fleet-name $FLEET \
--name $AUTOUPGRADEPROFILE \
--update-strategy-id $STRATEGYID \
--channel NodeImage
Visa profil för automatisk uppgradering
Du kan använda kommandona autoupgradeprofile list
eller autoupgradeprofile show
för att visa profilen för automatisk uppgradering.
Visa en lista över alla profiler för automatisk uppgradering för en flotta.
az fleet autoupgradeprofile list \
--resource-group $GROUP \
--fleet-name $FLEET
Visa en specifik profil för automatisk uppgradering för en flotta.
az fleet autoupgradeprofile list \
--resource-group $GROUP \
--fleet-name $FLEET \
--name $AUTOUPGRADEPROFILE
Ta bort profil för automatisk uppgradering
Använd följande kommando för att ta bort en befintlig profil för automatisk uppgradering. Du uppmanas att bekräfta borttagningen. Om du vill ta bort profilen omedelbart tar du med --yes
.
az fleet autoupgradeprofile delete \
--resource-group $GROUP \
--fleet-name $FLEET \
--name $AUTOUPGRADEPROFILE
Verifiera automatisk uppgradering
Automatiska uppgraderingar sker endast när nya Kubernetes- eller nodbilder görs tillgängliga. Du kan kontrollera dina befintliga versioner som en baslinje enligt följande.
# Get Kubernetes version for a member cluster
az aks show \
--resource-group $GROUP \
--name $CLUSTER \
--query currentKubernetesVersion
# Get NodeImage version for a member cluster
az aks show \
--resource-group $GROUP \
--name $CLUSTER \
--query "agentPoolProfiles[].{name:name,mode:mode, nodeImageVersion:nodeImageVersion, osSku:osSku, osType:osType}"
När uppdateringskörningarna har slutförts kan du köra de här kommandona igen och visa de uppdaterade versioner som har distribuerats.
Azure Kubernetes Service