Dela via


Uppgradera klusterkörning från Azure CLI

Den här guiden beskriver stegen för att installera nödvändiga Azure CLI och tillägg som krävs för att interagera med Operator Nexus.

Förutsättningar

  1. Installera Azure CLI måste vara installerat.
  2. CLI-tillägget networkcloud krävs. networkcloud Om tillägget inte är installerat kan det installeras enligt stegen här.
  3. Åtkomst till Azure-portalen för målklustret som ska uppgraderas.
  4. Du måste vara inloggad på samma prenumeration som målklustret via az login
  5. Målklustret måste vara i ett körningstillstånd, med alla kontrollplansnoder felfria och 80 + % av beräkningsnoderna i ett fungerande och felfritt tillstånd.

Hitta tillgängliga körningsversioner

Via portalen

Om du vill hitta tillgängliga uppgraderingsbara körningsversioner går du till målklustret i Azure-portalen. I klustrets översiktsfönster går du till fliken Tillgängliga uppgraderingsversioner.

Screenshot of Azure portal showing correct tab to identify available cluster upgrades.

På fliken tillgängliga uppgraderingsversioner kan vi se de olika klusterversioner som för närvarande är tillgängliga för uppgradering. Operatorn kan välja från de angivna målkörningsversionerna. När du har valt det fortsätter du att uppgradera klustret.

Screenshot of Azure portal showing available cluster upgrades.

Via Azure CLI

Tillgängliga uppgraderingar kan hämtas via Azure CLI:

az networkcloud cluster show --name "clusterName" --resource-group "resourceGroup"

I utdata kan du hitta availableUpgradeVersions egenskapen och titta på fältet targetClusterVersion :

  "availableUpgradeVersions": [
    {
      "controlImpact": "True",
      "expectedDuration": "Upgrades may take up to 4 hours + 2 hours per rack",
      "impactDescription": "Workloads will be disrupted during rack-by-rack upgrade",
      "supportExpiryDate": "2023-07-31",
      "targetClusterVersion": "3.3.0",
      "workloadImpact": "True"
    }
  ],

Om det inte finns några tillgängliga klusteruppgraderingar är listan tom.

Uppgradera klusterkörning med CLI

Om du vill uppgradera körningen använder du följande Azure CLI-kommando:

az networkcloud cluster update-version --cluster-name "clusterName" --target-cluster-version
  "versionNumber" --resource-group "resourceGroupName"

Körningsuppgraderingen är en lång process. Uppgraderingen uppgraderar först hanteringsnoderna och rackar sedan sekventiellt efter rack för arbetsnoderna. Uppgraderingen anses vara klar när 80 % av arbetsnoderna per rack och 100 % av hanteringsnoderna har uppgraderats. Arbetsbelastningar kan påverkas medan arbetsnoderna i ett rack håller på att uppgraderas, men arbetsbelastningar i alla andra rack påverkas inte. Hänsyn till arbetsbelastningsplacering mot bakgrund av den här implementeringsdesignen uppmuntras.

Det tar flera timmar att uppgradera alla noder, men det kan ta mer tid om andra processer, till exempel uppdateringar av inbyggd programvara, också ingår i uppgraderingen. På grund av uppgraderingsprocessens längd rekommenderar vi att du regelbundet kontrollerar klustrets informationsstatus för uppgraderingens aktuella tillstånd. Om du vill kontrollera statusen för uppgraderingen bör du se klustrets detaljerade status. Den här kontrollen kan göras via portalen eller az CLI.

Om du vill visa uppgraderingsstatus via Azure-portalen går du till målklusterresursen. På klustrets översiktsskärm tillhandahålls den detaljerade statusen tillsammans med ett detaljerat statusmeddelande.

Klusteruppgraderingen pågår när detailedStatus är inställt på Updating och detailedStatusMessage visar uppgraderingens förlopp. Några exempel på uppgraderingsstatus som visas i detailedStatusMessage är Waiting for control plane upgrade to complete..., Waiting for nodepool "<rack-id>" to finish upgrading...osv.

Klusteruppgradering är klar när detailedStatus är inställt på Running och detailedStatusMessage visar meddelande Cluster is up and running

Screenshot of Azure portal showing in progress cluster upgrade.

Om du vill visa uppgraderingsstatus via Azure CLI använder du az networkcloud cluster show.

az networkcloud cluster show --cluster-name "clusterName" --resource-group "resourceGroupName"

Utdata ska vara målklustrets information och klustrets detaljerade status- och informationsstatusmeddelande ska finnas. Om du vill ha mer detaljerad information om uppgraderingsförloppet kan du söka efter status för enskilda BMM i varje rack. Exempel på detta finns i referensavsnittet under BareMetal Machine-roller.

Konfigurera beräkningströskelparametrar för körningsuppgradering med klusteruppdateringStrategy

Följande Azure CLI-kommando används för att konfigurera beräkningströskelparametrarna för en körningsuppgradering:

az networkcloud cluster update --name "<clusterName>" --resource-group "<resourceGroup>" --update-strategy strategy-type="Rack" threshold-type="PercentSuccess" threshold-value="<thresholdValue>" max-unavailable=<maxNodesOffline> wait-time-minutes=<waitTimeBetweenRacks>

Obligatoriska argument:

  • strategityp: Definierar uppdateringsstrategin. I det här fallet innebär "Rack" att uppdateringar sker rack-för-rack. Standardvärdet är "Rack"
  • tröskelvärdestyp: Avgör hur tröskelvärdet ska utvärderas och tillämpas i de enheter som definieras av strategin. Standardvärdet är "PercentSuccess".
  • threshold-value: Det numeriska tröskelvärde som används för att utvärdera en uppdatering. Standardvärdet är 80.

Valfria argument:

  • max-unavailable: Det maximala antalet arbetsnoder som kan vara offline, d.v.s. uppgraderat rack åt gången. Standardvärdet är 32767.
  • väntetidsminuter: Fördröjning eller väntetid innan ett rack uppdateras. Standardvärdet är 15.

Ett exempel på användning av kommandot är enligt nedan:

az networkcloud cluster update --name "cluster01" --resource-group "cluster01-rg" --update-strategy strategy-type="Rack" threshold-type="PercentSuccess" threshold-value=70 max-unavailable=16 wait-time-minutes=15

När kommandot har körts tillämpas de angivna updateStrategy-värdena på klustret:

  "updateStrategy": {
      "maxUnavailable": 16,
      "strategyType": "Rack",
      "thresholdType": "PercentSuccess",
      "thresholdValue": 70,
      "waitTimeMinutes": 15,
    },

Vanliga frågor och svar

Identifiera klusteruppgradering har stoppats/fastnat

Under en körningsuppgradering är det möjligt att uppgraderingen inte går framåt, men detaljstatusen återspeglar att uppgraderingen fortfarande pågår. Eftersom körningsuppgradningen kan ta mycket lång tid att slutföra, finns det för närvarande ingen angiven tidsgräns. Därför rekommenderar vi att du också regelbundet kontrollerar klustrets informationsstatus och loggar för att avgöra om uppgraderingen försöker uppgradera på obestämd tid.

Vi kan identifiera när så är fallet genom att titta på klustrets loggar, detaljerade meddelande och detaljerade statusmeddelande. Om en timeout har inträffat skulle vi observera att klustret kontinuerligt försonas över samma tid på obestämd tid och inte går framåt. Härifrån rekommenderar vi att du kontrollerar klusterloggar eller konfigurerad LAG för att se om det uppstår ett fel eller en specifik uppgradering som orsakar bristen på förlopp.

Maskinvarufel kräver inte omkörning av uppgradering

Om ett maskinvarufel har uppstått under en uppgradering fortsätter körningsuppgradningen så länge de angivna tröskelvärdena uppfylls för beräknings- och hanterings-/kontrollnoderna. När datorn har åtgärdats eller ersatts etableras den med den aktuella plattformskörningens operativsystem, som innehåller målversionen av körningen.

Om ett maskinvarufel inträffar och körningsuppgradningen misslyckades på grund av att tröskelvärdena inte uppfylldes för beräknings- och kontrollnoder, kan det krävas omkörning av körningsuppgradningen beroende på när felet inträffade och tillståndet för de enskilda servrarna i ett rack. Om ett rack uppdaterades före ett fel används den uppgraderade körningsversionen när noderna återskapas. Om rackspecifikationen inte uppdaterades till den uppgraderade körningsversionen före maskinvarufelet skulle datorn etableras med den tidigare körningsversionen. Om du vill uppgradera till den nya körningsversionen skickar du en ny klusteruppgraderingsbegäran och endast noderna med den tidigare körningsversionen uppgraderas. Värdar som lyckades i föregående uppgraderingsåtgärd kommer inte att göra det.

Efter en körningsuppgradering visar klustret etableringstillståndet "Misslyckades"

Under en körningsuppgradering kommer klustret att ange tillståndet Upgrading I händelse av ett fel i körningsuppgraderingen, av skäl som är relaterade till resurserna, kommer klustret att gå in i ett Failed etableringstillstånd. Det här tillståndet kan länkas till livscykeln för de komponenter som är relaterade till klustret (t.ex. StorageAppliance) och kan vara nödvändigt för att diagnostisera felet med Microsoft-supporten.