Dela via


Hantera Service Fabric-klusteruppgraderingar

Ett Azure Service Fabric-kluster är en resurs som du äger, men det hanteras delvis av Microsoft. Så här hanterar du när och hur Microsoft uppdaterar ditt Azure Service Fabric-kluster.

Mer information om begrepp och processer för klusteruppgradering finns i Uppgradera och uppdatera Azure Service Fabric-kluster.

Ange uppgraderingsläge

Du kan ange att klustret ska ta emot automatiska Service Fabric-uppgraderingar när de släpps av Microsoft, eller så kan du manuellt välja från en lista över versioner som stöds för närvarande genom att ange uppgraderingsläget för klustret. Detta kan göras antingen via kontrollen Infrastrukturuppgraderingsläge i Azure Portal eller inställningen i mallen upgradeMode för klusterdistribution.

Azure Portal

Med Azure Portal väljer du mellan automatiska eller manuella uppgraderingar när du skapar ett nytt Service Fabric-kluster.

Välj mellan automatiska eller manuella uppgraderingar när du skapar ett nytt kluster i Azure Portal från alternativen

Du kan också växla mellan automatiska eller manuella uppgraderingar från avsnittet Infrastrukturuppgraderingar i en befintlig klusterresurs.

Välj Automatiska eller manuella uppgraderingar i avsnittet Infrastrukturuppgraderingar i klusterresursen i Azure Portal

Manuella uppgraderingar med Azure Portal

När du väljer alternativet manuell uppgradering är allt som behövs för att starta en uppgradering att välja från listrutan tillgängliga versioner och sedan Spara. Därifrån startas klusteruppgradningen omedelbart.

Principerna för klusterhälsa (en kombination av nodhälsa och hälsotillståndet för alla program som körs i klustret) följs under uppgraderingen. Om klustrets hälsoprinciper inte uppfylls återställs uppgraderingen.

När du har åtgärdat de problem som resulterade i återställningen måste du initiera uppgraderingen igen genom att följa samma steg som tidigare.

Resource Manager-mall

Om du vill ändra klusteruppgraderingsläget med hjälp av en Resource Manager mall anger du antingen Automatisk eller Manuell för egenskapen för upgradeMode resursdefinitionen Microsoft.ServiceFabric/clusters. Om du väljer manuella uppgraderingar anger du clusterCodeVersion även till en infrastrukturresursversion som stöds för närvarande.

Skärmbild som visar en mall som är klartext indragen för att återspegla strukturen. Egenskaperna

När mallen har distribuerats tillämpas ändringar i klusteruppgraderingsläget. Om klustret är i manuellt läge startar klusteruppgradningen automatiskt.

Principerna för klusterhälsa (en kombination av nodhälsa och hälsotillståndet för alla program som körs i klustret) följs under uppgraderingen. Om klustrets hälsoprinciper inte uppfylls återställs uppgraderingen.

När du har åtgärdat de problem som resulterade i återställningen måste du initiera uppgraderingen igen genom att följa samma steg som tidigare.

Vågdistribution för automatiska uppgraderingar

Med automatiskt uppgraderingsläge har du möjlighet att aktivera klustret för vågdistribution. Med vågdistribution kan du skapa en pipeline för att uppgradera dina test-, fas- och produktionskluster i följd, avgränsade med inbyggd "baktid" för att verifiera kommande Service Fabric-versioner innan dina produktionskluster uppdateras.

Aktivera vågdistribution

Anteckning

Wave-distributionen kräver (eller senare) API-versionen för resursen 2020-12-01-previewMicrosoft.ServiceFabric/clusters .

Om du vill aktivera vågdistribution för automatisk uppgradering ska du först avgöra vilken våg som ska tilldela klustret:

  • Våg 0 (Wave0): Kluster uppdateras så snart en ny Service Fabric-version släpps. Avsett för test-/utvecklingskluster.
  • Våg 1 (Wave1): Kluster uppdateras en vecka (sju dagar) efter att en ny version har släppts. Avsett för för-prod/mellanlagringskluster.
  • Våg 2 (Wave2): Kluster uppdateras två veckor (14 dagar) efter att en ny version har släppts. Avsedd för produktionskluster.

Lägg sedan bara till en upgradeWave egenskap i klusterresursmallen med något av vågvärdena som anges ovan. Kontrollera att klusterresursens API-version är 2020-12-01-preview eller senare.

{
    "apiVersion": "2020-12-01-preview",
    "type": "Microsoft.ServiceFabric/clusters",
     ...
        "fabricSettings": [...],
        "managementEndpoint": ...,
        "nodeTypes": [...],
        "provisioningState": ...,
        "reliabilityLevel": ...,
        "upgradeMode": "Automatic",
        "upgradeWave": "Wave1",
       ...

När du har distribuerat den uppdaterade mallen registreras klustret i den angivna vågen för nästa uppgraderingsperiod och därefter.

Du kan registrera dig för e-postaviseringar med länkar för ytterligare hjälp om en klusteruppgradering misslyckas.

Registrera sig för meddelanden

Du kan registrera dig för meddelanden när en klusteruppgradering misslyckas. Ett e-postmeddelande skickas till din avsedda e-postadress med ytterligare information om uppgraderingsfelet och länkar för ytterligare hjälp.

Anteckning

Registrering i vågdistribution krävs inte för att ta emot meddelanden om uppgraderingsfel.

Om du vill registrera dig för meddelanden lägger du till ett notifications avsnitt i klusterresursmallen och anger en eller flera e-postadresser (mottagare) för att ta emot meddelanden:

    "apiVersion": "2020-12-01-preview",
    "type": "Microsoft.ServiceFabric/clusters",
     ...
        "upgradeMode": "Automatic",
        "upgradeWave": "Wave1",
        "notifications": [
        {
            "isEnabled": true,
            "notificationCategory": "WaveProgress",
            "notificationLevel": "Critical",
            "notificationTargets": [
            {
                "notificationChannel": "EmailUser",
                "receivers": [
                    "devops@contoso.com"
                ]
            }]
        }]

När du har distribuerat den uppdaterade mallen registreras du för meddelanden om uppgraderingsfel.

Anpassade principer för manuella uppgraderingar

Du kan ange anpassade hälsoprinciper för manuella klusteruppgraderingar. Dessa principer tillämpas varje gång du väljer en ny körningsversion, vilket utlöser systemet för att starta uppgraderingen av klustret. Om du inte åsidosätter principerna används standardvärdena.

Du kan ange anpassade hälsoprinciper eller granska de aktuella inställningarna under avsnittet Infrastrukturuppgraderingar i klusterresursen i Azure Portal genom att välja Anpassat alternativ för Uppgraderingsprincip.

Välj alternativet Anpassad uppgraderingsprincip i avsnittet Infrastrukturuppgraderingar i klusterresursen i Azure Portal för att ange anpassade hälsoprinciper under uppgraderingen

Sök efter klusterversioner som stöds

Du kan referera till Service Fabric-versioner för ytterligare information om versioner och operativsystem som stöds.

Du kan också använda Azure REST API för att visa alla tillgängliga Service Fabric-körningsversioner (clusterVersions) tillgängliga för den angivna platsen och din prenumeration.

GET https://<endpoint>/subscriptions/{{subscriptionId}}/providers/Microsoft.ServiceFabric/locations/{{location}}/clusterVersions?api-version=2018-02-01

"value": [
  {
    "id": "subscriptions/########-####-####-####-############/providers/Microsoft.ServiceFabric/environments/Windows/clusterVersions/5.0.1427.9490",
    "name": "5.0.1427.9490",
    "type": "Microsoft.ServiceFabric/environments/clusterVersions",
    "properties": {
      "codeVersion": "5.0.1427.9490",
      "supportExpiryUtc": "2016-11-26T23:59:59.9999999",
      "environment": "Windows"
    }
  },
  {
    "id": "subscriptions/########-####-####-####-############/providers/Microsoft.ServiceFabric/environments/Windows/clusterVersions/4.0.1427.9490",
    "name": "5.1.1427.9490",
    "type": " Microsoft.ServiceFabric/environments/clusterVersions",
    "properties": {
      "codeVersion": "5.1.1427.9490",
      "supportExpiryUtc": "9999-12-31T23:59:59.9999999",
      "environment": "Windows"
    }
  },
  {
    "id": "subscriptions/########-####-####-####-############/providers/Microsoft.ServiceFabric/environments/Windows/clusterVersions/4.4.1427.9490",
    "name": "4.4.1427.9490",
    "type": " Microsoft.ServiceFabric/environments/clusterVersions",
    "properties": {
      "codeVersion": "4.4.1427.9490",
      "supportExpiryUtc": "9999-12-31T23:59:59.9999999",
      "environment": "Linux"
    }
  }
]
}

supportExpiryUtc I utdatarapporterna när en viss version upphör att gälla eller har upphört att gälla. De senaste versionerna har inget giltigt datum, utan ett värde på 9999-12-31T23:59:59.9999999, vilket bara innebär att förfallodatumet ännu inte har angetts.

Sök efter uppgraderingssökväg som stöds

Du kan referera till Service Fabric-versionsdokumentationen för uppgraderingsvägar som stöds och relaterad versionsinformation.

Med hjälp av en målversionsinformation som stöds kan du använda följande PowerShell-steg för att verifiera uppgraderingssökvägen som stöds.

  1. Logga in på Azure

    Login-AzAccount
    
  2. Välja prenumerationen

    Set-AzContext -SubscriptionId <your-subscription>
    
  3. Anropa API:et

    $params = @{ "TargetVersion" = "<target version>"}
    Invoke-AzResourceAction -ResourceId <cluster resource id> -Parameters $params -Action listUpgradableVersions -Force
    

    Exempel:

    $params = @{ "TargetVersion" = "8.1.335.9590"}
    Invoke-AzResourceAction -ResourceId /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster -Parameters $params -Action listUpgradableVersions -Force
    
    Output
    supportedPath
    -------------
    {8.1.329.9590, 8.1.335.9590}
    

Nästa steg