Создание пула пакетной службы Azure на зонах доступности

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

Например, можно создать пул с зональной политикой в регионе Azure, который поддерживает три зоны доступности. Если в центре обработки данных Azure в одной зоне доступности произошла ошибка инфраструктуры, пул пакетной службы по-прежнему будет иметь работоспособные узлы в двух других зонах доступности, поэтому пул останется доступным для планирования задач.

Региональная поддержка и другие требования

Пакетная служба сохраняет четность в Azure на поддержку зоны доступности. Чтобы использовать зональные параметры, необходимо создать пул в поддерживаемом регионе Azure.

Чтобы пул пакетной службы выделился между зонами доступности, регион Azure, в котором создается пул, должен поддерживать запрошенный номер SKU виртуальной машины в нескольких зонах. Это можно проверить путем вызова API списка SKU ресурсов и проверки поля locationInfo в resourceSku. Убедитесь в том, что для запрошенного номера SKU виртуальной машины поддерживается больше одной зоны.

Для учетных записей пакетной службы в режиме пользовательской подписки проверьте, что в подписке, в которой создается пул, не предусмотрено ограничение на использование зоны для запрещенного номера SKU виртуальной машины. Чтобы подтвердить это, вызовите Resource Skus List API и проверьте ResourceSkuRestrictions. Если ограничение для зоны существует, вы можете отправить запрос в службу поддержки, чтобы удалить ограничение зоны.

Также обратите внимание, что невозможно создать пул с зональной политикой, если включено взаимодействие между узлами и используется номер SKU виртуальной машины, поддерживающий InfiniBand.

Создание пула в зонах доступности

В следующих примерах показано, как создать пул пакетной службы в зонах доступности.

Примечание

При создании пула с помощью зональной политики пакетная служба попытается выделить пул во всех зонах доступности в выбранном регионе. Вы не можете указать конкретное распределение между зонами.

Пакет SDK .NET для клиента пакетной службы

pool.DeploymentConfiguration.VirtualMachineConfiguration.NodePlacementConfiguration = new NodePlacementConfiguration()
    {
        Policy = NodePlacementPolicyType.Zonal
    };

REST API пакетной службы

URL-АДРЕС REST API

POST {batchURL}/pools?api-version=2021-01-01.13.0
client-request-id: 00000000-0000-0000-0000-000000000000

Текст запроса

"pool": {
    "id": "pool2",
    "vmSize": "standard_a1",
    "virtualMachineConfiguration": {
        "imageReference": {
            "publisher": "Canonical",
            "offer": "UbuntuServer",
            "sku": "20.04-lts"
        },
        "nodePlacementConfiguration": {
            "policy": "Zonal"
        }
        "nodeAgentSKUId": "batch.node.ubuntu 20.04"
    },
    "resizeTimeout": "PT15M",
    "targetDedicatedNodes": 5,
    "targetLowPriorityNodes": 0,
    "maxTasksPerNode": 3,
    "enableAutoScale": false,
    "enableInterNodeCommunication": false
}

Дальнейшие действия