Развертывание типа узла кластера Azure Service Fabric с управляемыми дисками данных

Типы узлов Azure Service Fabric по умолчанию используют временный диск на каждой виртуальной машине в базовом масштабируемом наборе виртуальных машин для хранилища данных. Однако, поскольку временный диск не является постоянным, а размер временного диска привязан к заданному номеру SKU виртуальной машины, это может быть слишком ограничивающим для некоторых сценариев.

В этой статье приведены инструкции по настройке и использованию управляемых дисков данных в качестве пути к данным по умолчанию с помощью собственной поддержки Service Fabric. Service Fabric автоматически настраивает управляемые диски данных при создании типа узла и обрабатывает ситуации, когда виртуальные машины или масштабируемый набор виртуальных машин пересоздаются.

Important

Размеры SKU VMSS _v6 представляют диски NVMe, которые заменяют старый протокол на основе SCSI для дискового хранилища. Это изменение влияет на характеристики диска и может нарушить существующую логику инициализации диска для управляемых дисков данных и временных дисков. В результате необходимые разделы или файловые системы могут не создаваться, а начальная загрузка узла Service Fabric может зависнуть.

Поддержка управляемых дисков данных в Service Fabric не инициализирует диски NVMe автоматически. Вы должны самостоятельно инициализировать и форматировать диски NVMe с помощью расширения Custom Script Extension, в том числе если вы используете временный диск для dataPath.

Хотя диски NVMe обычно ассоциируются с _v6 SKU, в некоторых более ранних или отличных от v6 сериях также используются NVMe. Например, серия Fxmsv2 использует локальное хранилище на основе NVMe. Любой SKU виртуальной машины с дисками NVMe подпадает под те же требования к инициализации, что описаны в этой статье. Дополнительные сведения см. в разделе "Включение интерфейса NVMe" на виртуальных машинах и масштабируемых наборах виртуальных машин (часто задаваемые вопросы).

Управляемые кластеры службы Fabric поддерживают сценарии NVMe. Если требуется более простой управляемый интерфейс для SKU на основе NVMe, рассмотрите возможность миграции в управляемые кластеры service Fabric.

Предпосылки

  • Требуемый минимальный размер диска для управляемого диска данных составляет 50 ГБ.
  • Буква диска данных должна быть установлена на лексикографически большее значение, чем буквы всех дисков, присутствующих в масштабируемом наборе виртуальных машин данной SKU.
  • Поддерживается только один управляемый диск данных на виртуальную машину. В сценариях с более чем 1 дисками данных пользователь должен самостоятельно управлять дисками данных.

Настройка масштабируемого набора виртуальных машин для использования управляемых дисков данных в Service Fabric

Чтобы использовать управляемые диски данных в типе узла, настройте базовый ресурс масштабируемого набора виртуальных машин следующим образом:

  • Добавьте управляемый диск в раздел дисков данных шаблона для масштабируемого набора виртуальных машин.
  • Обновите расширение Service Fabric для масштабируемого набора виртуальных машин с помощью следующих параметров:
    • Для Windows: useManagedDataDisk: true и dataPath: "K:\\SvcFab". Обратите внимание, что диск K — это лишь условное обозначение. Вы можете использовать любую букву дисковода, которая лексикографически больше всех букв дисководов, имеющихся в SKU масштабируемого набора виртуальных машин.
    • Для Linux: не поддерживается.

Ниже приведен шаблон Azure Resource Manager для расширения Service Fabric:

{
    "virtualMachineProfile": {
        "extensionProfile": {
            "extensions": [
                {
                    "name": "[concat(parameters('vmNodeType1Name'),'_ServiceFabricNode')]",
                    "properties": {
                        "type": "ServiceFabricNode",
                        "autoUpgradeMinorVersion": true,
                        "enableAutomaticUpgrade": true,
                        "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. Отключите и удалите старый тип узла в кластере.

Дальнейшие шаги