Sdílet prostřednictvím


Nasazení spravovaného clusteru Service Fabric s bezstavovými typy uzlů

Typy uzlů Service Fabric mají základní předpoklad, že v určitém okamžiku se stavové služby můžou na uzly umístit. Bezstavové typy uzlů mění tento předpoklad pro typ uzlu. Díky tomu může typ uzlu těžit z funkcí, jako jsou rychlejší operace horizontálního navýšení kapacity, podpora automatických upgradů operačního systému, spotových virtuálních počítačů a horizontální navýšení kapacity na více než 100 uzlů v typu uzlu.

  • Primární typy uzlů nelze nakonfigurovat tak, aby byly bezstavové.
  • Bezstavové typy uzlů vyžadují rozhraní API verze 2021-05-01 nebo novější.
  • Tím se vlastnost multipleplacementgroup automaticky nastaví na true, o které se zde můžete dozvědět více.
  • To umožňuje podporu až 1 000 uzlů pro daný typ uzlu.
  • Bezstavové typy uzlů můžou využívat dočasný disk skladové položky virtuálního počítače.

Povolení bezstavových typů uzlů ve spravovaném clusteru Service Fabric

Chcete-li nastavit jeden nebo více typů uzlů jako bezstavový v prostředku typu uzlu, nastavte vlastnost isStateless na hodnotu true. Při nasazování clusteru Service Fabric s bezstavovými typy uzlů je nutné mít alespoň jeden primární typ uzlu, který není v clusteru bezstavový.

K dispozici jsou ukázkové šablony: Šablona typů bezstavových uzlů Service Fabric

  • Rozhraní API prostředku spravovaného clusteru Service Fabric by mělo být 2021-05-01 nebo novější.
{
  "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')]"
  }
}

Povolení bezstavových typů uzlů pomocí spotových virtuálních počítačů ve spravovaném clusteru Service Fabric (Preview)

Azure Spot Virtual Machines ve škálovacích sadách umožňuje uživatelům využívat nevyužitou výpočetní kapacitu s významnými úsporami nákladů. V každém okamžiku, kdy Azure potřebuje kapacitu zpět, infrastruktura Azure tyto instance spotových virtuálních počítačů Azure vyřadí. Proto jsou typy uzlů spotových virtuálních počítačů skvělé pro úlohy, které můžou zvládnout přerušení a nemusí být dokončeny v určitém časovém rámci. Mezi doporučené úlohy patří vývoj, testování, dávkové zpracování, velké objemy dat nebo jiné bezstavové scénáře ve velkém měřítku.

Pokud chcete nastavit jeden nebo více bezstavových typů uzlů pro použití spotového virtuálního počítače, nastavte vlastnosti isStateless i IsSpotVM na hodnotu true. Při nasazování clusteru Service Fabric s bezstavovými typy uzlů je nutné mít alespoň jeden primární typ uzlu, který není v clusteru bezstavový. Bezstavové typy uzlů nakonfigurované pro použití spotových virtuálních počítačů mají ve výchozím nastavení zásadu vyřazení nastavenou na Odstranit. Zákazníci můžou nakonfigurovat vyřazeníPolicy tak, aby byly Delete nebo Deallocate, ale dají se definovat jenom v době vytváření typu uzlu.

K dispozici jsou ukázkové šablony: Šablona typů spotových uzlů Service Fabric

  • Verze api prostředku spravovaného clusteru Service Fabric by měla být verze 2022-06-01-preview nebo novější.
{
  "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')]"
  }
}

Povolení spotových virtuálních počítačů pomocí možnosti Vyzkoušet a obnovit

Tato konfigurace umožňuje platformě automaticky zkusit obnovit vyřazené spotové virtuální počítače. Podrobnosti najdete v dokumentaci ke škálovací sadě virtuálních počítačů. Tuto konfiguraci lze povolit pouze u nových spotových typů uzlů zadáním hodnoty spotRestoreTimeout, což je doba trvání ISO 8601 s hodnotou mezi 30 a 2880 minutami. Platforma se po vyřazení pokusí obnovit virtuální počítače po tuto dobu.

{
  "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')]"
  }
}

Konfigurace bezstavových typů uzlů pro odolnost zón

Pokud chcete nakonfigurovat typ bezstavového uzlu pro odolnost zón, musíte nakonfigurovat zónu spravovaného clusteru na úrovni clusteru.

Poznámka:

Vlastnost zónové odolnosti musí být nastavena na úrovni clusteru a tuto vlastnost nelze změnit.

Podpora dočasných disků

Bezstavové typy uzlů je možné nakonfigurovat tak, aby jako datový disk místo spravovaného disku používaly dočasný disk. Použití dočasného disku může snížit náklady na bezstavové úlohy. Chcete-li nakonfigurovat bezstavový typ uzlu pro použití dočasného disku nastavit useTempDataDisk vlastnost true.

  • Dočasná velikost disku musí být 32 GB nebo více. Velikost dočasného disku závisí na velikosti virtuálního počítače.
  • Dočasný disk není šifrovaný šifrováním na straně serveru, pokud nepovolíte šifrování na hostiteli.
  • Verze prostředku spravovaného clusteru Service Fabric by měla být verze 2022-01-01 nebo novější.
{
  "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
  }
}

Migrace na používání bezstavových typů uzlů v clusteru

Pro všechny scénáře migrace je potřeba přidat nový bezstavový typ uzlu. Existující typ uzlu nejde migrovat tak, aby byl bezstavový. Do existujícího spravovaného clusteru Service Fabric můžete přidat nový bezstavový typ uzlu a odebrat z clusteru všechny původní typy uzlů.

Další kroky

Další informace o spravovaných clusterech Service Fabric najdete tady: