Dela via


Distribuera ett Service Fabric-hanterat kluster med tillståndslösa nodtyper

Service Fabric-nodtyper har ett inbyggt antagande om att tillståndskänsliga tjänster kan placeras på noderna någon gång. Tillståndslösa nodtyper ändrar det här antagandet för en nodtyp. Detta gör att nodtypen kan dra nytta av funktioner som snabbare utskalningsåtgärder, stöd för automatiska OS-uppgraderingar, virtuella datorer med oanvänd kapacitet och utskalning till fler än 100 noder i en nodtyp.

  • Primära nodtyper kan inte konfigureras som tillståndslösa.
  • Tillståndslösa nodtyper kräver en API-version av 2021-05-01 eller senare.
  • Då ställs egenskapen multipleplacementgroup automatiskt in true, vilket du kan läsa mer om här.
  • Detta möjliggör stöd för upp till 1 000 noder för den angivna nodtypen.
  • Tillståndslösa nodtyper kan använda en tillfällig vm-SKU-disk.

Aktivera tillståndslösa nodtyper i ett Service Fabric-hanterat kluster

Om du vill ange en eller flera nodtyper som tillståndslösa i en nodtypresurs anger du egenskapen isStateless till true. När du distribuerar ett Service Fabric-kluster med tillståndslösa nodtyper måste det ha minst en primär nodtyp, vilket inte är tillståndslöst i klustret.

Exempelmallar är tillgängliga: Mall för tillståndslösa noder i Service Fabric

  • Den hanterade Service Fabric-klusterresursen apiVersion ska vara 2021-05-01 eller senare.
{
  "apiVersion": "[variables('sfApiVersion')]",
  "type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
  "name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
  "location": "[resourcegroup().location]",
  "dependsOn": [
    "[concat('Microsoft.ServiceFabric/managedclusters/', parameters('clusterName'))]"
  ],
  "properties": {
    "isStateless": true,
    "isPrimary": false,
    "vmImagePublisher": "[parameters('vmImagePublisher')]",
    "vmImageOffer": "[parameters('vmImageOffer')]",
    "vmImageSku": "[parameters('vmImageSku')]",
    "vmImageVersion": "[parameters('vmImageVersion')]",
    "vmSize": "[parameters('nodeTypeSize')]",
    "vmInstanceCount": "[parameters('nodeTypeVmInstanceCount')]",
    "dataDiskSizeGB": "[parameters('nodeTypeDataDiskSizeGB')]"
  }
}

Aktivera tillståndslösa nodtyper med hjälp av virtuella datorer med oanvänd kapacitet i ett Hanterat Service Fabric-kluster (förhandsversion)

Med Virtuella Azure Spot-datorer i skalningsuppsättningar kan användarna dra nytta av outnyttjad beräkningskapacitet till betydande kostnadsbesparingar. När Som helst när Azure behöver tillbaka kapaciteten avlägsnar Azure-infrastrukturen dessa Virtuella Azure Spot-datorinstanser. Därför är vm-nodtyper för oanvänd kapacitet bra för arbetsbelastningar som kan hantera avbrott och som inte behöver slutföras inom en viss tidsram. Rekommenderade arbetsbelastningar omfattar utveckling, testning, batchbearbetningsjobb, stordata eller andra storskaliga tillståndslösa scenarier.

Om du vill ange att en eller flera tillståndslösa nodtyper ska använda virtuell dator med oanvänd kapacitet anger du egenskaperna isStateless och IsSpotVM till true. När du distribuerar ett Service Fabric-kluster med tillståndslösa nodtyper måste det ha minst en primär nodtyp, vilket inte är tillståndslöst i klustret. Tillståndslösa nodtyper som konfigurerats för att använda virtuella datorer med oanvänd kapacitet har borttagningsprincipen inställd på "Ta bort" som standard. Kunder kan konfigurera "evictionPolicy" till "Delete" eller "Deallocate" men detta kan bara definieras när nodetype skapas.

Exempelmallar är tillgängliga: Mall för Service Fabric Spot Node-typer

  • Den hanterade Service Fabric-klusterresursen apiVersion ska vara 2022-06-01-preview eller senare.
{
  "apiVersion": "[variables('sfApiVersion')]",
  "type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
  "name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
  "location": "[resourcegroup().location]",
  "dependsOn": [
    "[concat('Microsoft.ServiceFabric/managedclusters/', parameters('clusterName'))]"
  ],
  "properties": {
    "isStateless": true,
    "isPrimary": false,
    "IsSpotVM": true,
    "vmImagePublisher": "[parameters('vmImagePublisher')]",
    "vmImageOffer": "[parameters('vmImageOffer')]",
    "vmImageSku": "[parameters('vmImageSku')]",
    "vmImageVersion": "[parameters('vmImageVersion')]",
    "vmSize": "[parameters('nodeTypeSize')]",
    "vmInstanceCount": "[parameters('nodeTypeVmInstanceCount')]",
    "dataDiskSizeGB": "[parameters('nodeTypeDataDiskSizeGB')]"
  }
}

Aktivera virtuella datorer med oanvänd kapacitet med Försök att återställa

Med den här konfigurationen kan plattformen automatiskt försöka återställa de avlägsnade virtuella datorerna för oanvänd kapacitet. Mer information finns i dokumentet för vm-skalningsuppsättningar. Den här konfigurationen kan bara aktiveras på nya nodtyper för oanvänd kapacitet genom att ange spotRestoreTimeout, som är en ISO 8601-tidsperiod med ett värde mellan 30 och 2 880 minuter. Plattformen kommer att försöka återställa de virtuella datorerna under den här tiden, efter borttagningen.

{
  "apiVersion": "[variables('sfApiVersion')]",
  "type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
  "name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
  "location": "[resourcegroup().location]",
  "dependsOn": [
    "[concat('Microsoft.ServiceFabric/managedclusters/', parameters('clusterName'))]"
  ],
  "properties": {
    "isStateless": true,
    "isPrimary": false,
    "IsSpotVM": true,
    "evictionPolicy": "deallocate",
    "spotRestoreTimeout": "PT30M",
    "vmImagePublisher": "[parameters('vmImagePublisher')]",
    "vmImageOffer": "[parameters('vmImageOffer')]",
    "vmImageSku": "[parameters('vmImageSku')]",
    "vmImageVersion": "[parameters('vmImageVersion')]",
    "vmSize": "[parameters('nodeTypeSize')]",
    "vmInstanceCount": "[parameters('nodeTypeVmInstanceCount')]",
    "dataDiskSizeGB": "[parameters('nodeTypeDataDiskSizeGB')]"
  }
}

Konfigurera tillståndslösa nodtyper för zonåterhämtning

Om du vill konfigurera en tillståndslös nodtyp för zonåterhämtning måste du konfigurera en hanterad klusterzon som sträcker sig över klusternivå.

Kommentar

Egenskapen zonindelad återhämtning måste anges på klusternivå och den här egenskapen kan inte ändras på plats.

Tillfälligt diskstöd

Tillståndslösa nodtyper kan konfigureras för att använda temporär disk som datadisk i stället för en hanterad disk. Om du använder en tillfällig disk kan du minska kostnaderna för tillståndslösa arbetsbelastningar. Om du vill konfigurera en tillståndslös nodtyp för att använda den temporära disken anger du egenskapen useTempDataDisk till true.

  • Den tillfälliga diskstorleken måste vara 32 GB eller mer. Storleken på den tillfälliga disken beror på storleken på den virtuella datorn.
  • Den tillfälliga disken krypteras inte av kryptering på serversidan om du inte aktiverar kryptering på värden.
  • Den hanterade Service Fabric-klusterresursen apiVersion ska vara 2022-01-01 eller senare.
{
  "apiVersion": "[variables('sfApiVersion')]",
  "type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
  "name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
  "location": "[resourcegroup().location]",
  "dependsOn": [
    "[concat('Microsoft.ServiceFabric/managedclusters/', parameters('clusterName'))]"
  ],
  "properties": {
    "isStateless": true,
    "isPrimary": false,
    "vmImagePublisher": "[parameters('vmImagePublisher')]",
    "vmImageOffer": "[parameters('vmImageOffer')]",
    "vmImageSku": "[parameters('vmImageSku')]",
    "vmImageVersion": "[parameters('vmImageVersion')]",
    "vmSize": "[parameters('nodeTypeSize')]",
    "vmInstanceCount": "[parameters('nodeTypeVmInstanceCount')]",
    "useTempDataDisk": true
  }
}

Migrera till att använda tillståndslösa nodtyper i ett kluster

För alla migreringsscenarier måste en ny tillståndslös nodtyp läggas till. En befintlig nodtyp kan inte migreras för att vara tillståndslös. Du kan lägga till en ny tillståndslös nodtyp i ett befintligt Service Fabric-hanterat kluster och ta bort alla ursprungliga nodtyper från klustret.

Nästa steg

Mer information om Hanterade Service Fabric-kluster finns i: