使用托管数据磁盘部署 Azure Service Fabric 群集节点类型

默认情况下,Azure Service Fabric 节点类型使用基础虚拟机规模集中每个虚拟机 (VM) 上的临时磁盘进行数据存储。 但是,由于临时磁盘不是永久性磁盘,并且临时磁盘的大小与给定的 VM SKU 相关,因此在某些方案中存在过于严格的限制。

本文提供了通过 Service Fabric 的原生支持来配置和使用托管数据磁盘作为默认数据路径的步骤。 Service Fabric 将在创建节点类型时自动配置托管数据磁盘,并处理 VM 或虚拟机规模集重置映像的情况。

先决条件

  • 托管数据磁盘所需的最小磁盘大小为 50 GB。
  • 数据磁盘驱动器号应设置为按字典顺序大于虚拟机规模集 SKU 中存在的所有驱动器的盘符。
  • 每个 VM 仅支持一个托管数据磁盘。 对于涉及 1 个以上的数据磁盘的方案,用户需要自行管理数据磁盘。

将虚拟机规模集配置为在 Service Fabric 中使用托管数据磁盘

若要在节点类型上使用托管数据磁盘,请通过以下步骤配置基础虚拟机规模集资源:

  • 在虚拟机规模集模板的数据磁盘部分添加托管磁盘。
  • 使用以下设置更新虚拟机规模集的 Service Fabric 扩展:
    • 对于 Windows - useManagedDataDisk: true 和 dataPath: 'K:\\SvcFab'。 请注意,驱动器 K 只是一种表示形式。 可以使用字典顺序大于虚拟机规模集 SKU 中存在的所有驱动器号的任何驱动器号。
    • 对于 Linux:useManagedDataDisk:true 和 dataPath: '/mnt/sfroot'。

下面是 Service Fabric 扩展的一个 Azure 资源管理器模板:

{
    "virtualMachineProfile": {
        "extensionProfile": {
            "extensions": [
                {
                    "name": "[concat(parameters('vmNodeType1Name'),'_ServiceFabricNode')]",
                    "properties": {
                        "type": "ServiceFabricNode",
                        "autoUpgradeMinorVersion": false,
                        "publisher": "Microsoft.Azure.ServiceFabric",
                        "settings": {
                            "clusterEndpoint": "[reference(parameters('clusterName')).clusterEndpoint]",
                            "nodeTypeRef": "[parameters('vmNodeType1Name')]",
                            "dataPath": "K:\\\\SvcFab",
                            "useManagedDataDisk": true,
                            "durabilityLevel": "Bronze",
                            "certificate": {
                                "thumbprint": "[parameters('certificateThumbprint')]",
                                "x509StoreName": "[parameters('certificateStoreValue')]"
                            },
                            "systemLogUploadSettings": {
                                "Enabled": true
                            },
                        },
                        "typeHandlerVersion": "1.1"
                    }
                },
            ]
        },
        "storageProfile": 
        {
            "datadisks": [
                {
                    "lun": "1",
                    "createOption": "empty",
                    "diskSizeGB": "100",
                    "managedDisk": { "storageAccountType": "Standard_LRS" }
                }
            ]
        }
    }
}

迁移到使用托管数据磁盘的 Service Fabric 节点类型

对于所有迁移方案,需要添加具有托管数据磁盘的新节点类型。 无法将现有节点类型转换为使用托管数据磁盘。

  1. 添加配置为使用前面指定的托管数据磁盘的新节点类型。
  2. 将任何所需工作负荷迁移到新节点类型。
  3. 在群集中禁用并删除旧节点类型。

后续步骤