Dela via


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.