Требования

Провайдер поддерживает работу только с одним диском в шаблоне виртуальной машины. Убедитесь, что шаблон содержит только один диск.

Для корректной работы Deckhouse Kubernetes Platform (DKP) с Microsoft Azure необходимо:

  • Убедиться, что используемый регион поддерживает Availability Zones.
  • На всех виртуальных машинах должен быть установлен пакет cloud-init. После запуска ВМ должны быть активны службы:

    • cloud-config.service;
    • cloud-final.service;
    • cloud-init.service.

Доступ к Azure API

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

  1. Установите Azure CLI и авторизуйтесь:

    export SUBSCRIPTION_ID=$(az login | jq -r '.[0].id')
    
  2. Создайте сервисный аккаунт:

    az ad sp create-for-rbac --role="Contributor" --scopes="/subscriptions/$SUBSCRIPTION_ID" --name "DeckhouseCANDI"
    

    Пример вывода команды:

    {
     "appId": "<CLIENT_ID>",
     "displayName": "DeckhouseCANDI",
     "password": "<CLIENT_SECRET>",
     "tenant": "<TENANT_ID>"
    }
    

    Эти параметры необходимо указать в объекте AzureClusterConfiguration:

    Поле Значение из вывода команды
    clientId appId
    clientSecret password
    tenantId tenant
  3. Авторизуйтесь в Azure CLI под созданным сервисным аккаунтом:

    az login --service-principal -u <CLIENT_ID> -p <CLIENT_SECRET> --tenant <TENANT_ID>
    

Срок действия clientSecret по умолчанию — 1 год. Автоматическое продление не поддерживается. Чтобы задать больший срок действия, воспользуйтесь официальной документацией Azure.