Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Типы узлов Service Fabric приходят с встроенным предположением, что в какой-то момент времени службы с отслеживанием состояния могут размещаться на узлах. Типы узлов без отслеживания состояния изменяют это предположение для типа узла. Это позволяет типу узла воспользоваться такими функциями, как более быстрые операции горизонтального масштабирования, поддержка автоматического обновления ОС, точечных виртуальных машин и масштабирование до более чем 100 узлов в типе узла.
- Типы основных узлов не могут быть настроены как не имеющие состояния.
- Для типов узлов без отслеживания состояния требуется версия API 2021-05-01 или более поздняя.
- Это автоматически задает для свойства multipleplacementgroupзначение true , о котором можно узнать подробнее здесь. Требования и ограничения базового масштабируемого набора виртуальных машин для включения этого свойства применяются к управляемым кластерам Service Fabric.
- Это позволяет поддерживать до 1000 узлов для заданного типа узла.
- Узлы статического типа могут использовать временный диск SKU виртуальной машины.
Включение типов узлов без отслеживания состояния в управляемом кластере Service Fabric
Чтобы задать один или несколько типов узлов как статические в ресурсе типа узла, задайте для свойства isStatelessзначение true. При развертывании кластера Service Fabric с типами узлов без отслеживания состояния программа установки требует по крайней мере одного типа первичного узла, который не является без отслеживания состояния в кластере.
Доступны примеры шаблонов: шаблон бессостоячных типов узлов Service Fabric
- Значением apiVersion для ресурса управляемого кластера Service Fabric должно быть 2021-05-01 или выше.
{
"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')]"
}
}
Включение типов узлов без отслеживания состояния с помощью точечных виртуальных машин в управляемом кластере Service Fabric
Виртуальные машины Azure Spot Виртуальные машины в масштабируемых наборах позволяют пользователям воспользоваться неиспользуемой вычислительной емкостью при значительной экономии затрат. В любой момент времени, когда Azure необходимо вернуть емкость, инфраструктура Azure вытесняет эти экземпляры виртуальных машин Azure Spot. Таким образом, типы узлов точечных виртуальных машин отлично подходят для рабочих нагрузок, которые могут обрабатывать прерывания и не должны выполняться в течение определенного интервала времени. Рекомендуемые рабочие нагрузки включают разработку, тестирование, задания пакетной обработки, большие данные или другие крупномасштабные сценарии без отслеживания состояния.
Чтобы задать один или несколько типов узлов без отслеживания состояния для использования Spot VM, задайте для свойств isStateless и IsSpotVM значение true. При развертывании кластера Service Fabric с типами узлов без отслеживания состояния необходимо иметь по крайней мере один основной тип узла, который не находится в кластере без отслеживания состояния. Типы узлов без отслеживания состояния, настроенные для использования точечных виртуальных машин, имеют значение "Удалить" по умолчанию. Клиенты могут настроить 'evictionPolicy' на 'Delete' или 'Deallocate', но это можно определить только при создании типа узла.
Доступны примеры шаблонов: шаблон типов точечных узлов Service Fabric
- Api-версия ресурса управляемого кластера Service Fabric должна быть 2022-06-01-preview или более поздней.
{
"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')]"
}
}
Включение Spot виртуальных машин с помощью функций "Try" и "Restore"
Эта конфигурация позволяет платформе автоматически пытаться восстановить вытесненные виртуальные машины. См. документацию по масштабируемым группам виртуальных машин для получения подробной информации. Эта конфигурация может быть включена только в новых типах узлов Spot, указав spotRestoreTimeout, которая является длительностью времени ISO 8601 с значением от 30 до 2880 минут. Платформа попытается восстановить виртуальные машины в течение этого периода после вытеснения.
{
"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')]"
}
}
Настройка типов узлов без отслеживания состояния для устойчивости зоны
Чтобы настроить тип узла без отслеживания состояния для устойчивости зоны, необходимо настроить зону управляемого кластера, охватываемую на уровне кластера.
Примечание
Свойство устойчивости зоны должно быть задано на уровне кластера, и это свойство не может быть изменено на месте.
Поддержка временного диска
Типы узлов без отслеживания состояния можно настроить для использования временного диска в качестве диска данных вместо управляемого диска. Использование временного диска может снизить затраты на стейтлесс-рабочие нагрузки. Чтобы настроить бестранзакционный тип узла для использования временных данных на диске, задайте для свойства useTempDataDisk значение true.
- Размер временного диска должен составлять 32 ГБ или более. Размер временного диска зависит от размера виртуальной машины.
- Временный диск не шифруется с помощью шифрования на стороне сервера, если только вы не включите шифрование на узле.
- Для ресурса управляемого кластера Service Fabric параметр apiVersion должен иметь значение 2022-01-01 или выше.
{
"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
}
}
Миграция на использование типов узлов без отслеживания состояния в кластере
Для всех сценариев миграции необходимо добавить новый тип узла без отслеживания состояния. Существующий тип узла нельзя перенести в состояние без состояния. Можно добавить новый тип узла без отслеживания состояния в существующий управляемый кластер Service Fabric и удалить все исходные типы узлов из кластера.
Дальнейшие шаги
Дополнительные сведения об управляемых кластерах Service Fabric см. в следующем разделе: