Поделиться через


Microsoft.App задания 2023-04-01-preview

Определение ресурсов Bicep

Тип ресурса заданий можно развернуть с помощью операций, предназначенных для следующих операций:

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Чтобы создать ресурс Microsoft.App/jobs, добавьте следующий Bicep в шаблон.

resource symbolicname 'Microsoft.App/jobs@2023-04-01-preview' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  properties: {
    configuration: {
      eventTriggerConfig: {
        parallelism: int
        replicaCompletionCount: int
        scale: {
          maxExecutions: int
          minExecutions: int
          pollingInterval: int
          rules: [
            {
              auth: [
                {
                  secretRef: 'string'
                  triggerParameter: 'string'
                }
              ]
              metadata: any()
              name: 'string'
              type: 'string'
            }
          ]
        }
      }
      manualTriggerConfig: {
        parallelism: int
        replicaCompletionCount: int
      }
      registries: [
        {
          identity: 'string'
          passwordSecretRef: 'string'
          server: 'string'
          username: 'string'
        }
      ]
      replicaRetryLimit: int
      replicaTimeout: int
      scheduleTriggerConfig: {
        cronExpression: 'string'
        parallelism: int
        replicaCompletionCount: int
      }
      secrets: [
        {
          identity: 'string'
          keyVaultUrl: 'string'
          name: 'string'
          value: 'string'
        }
      ]
      triggerType: 'string'
    }
    environmentId: 'string'
    template: {
      containers: [
        {
          args: [
            'string'
          ]
          command: [
            'string'
          ]
          env: [
            {
              name: 'string'
              secretRef: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          name: 'string'
          probes: [
            {
              failureThreshold: int
              httpGet: {
                host: 'string'
                httpHeaders: [
                  {
                    name: 'string'
                    value: 'string'
                  }
                ]
                path: 'string'
                port: int
                scheme: 'string'
              }
              initialDelaySeconds: int
              periodSeconds: int
              successThreshold: int
              tcpSocket: {
                host: 'string'
                port: int
              }
              terminationGracePeriodSeconds: int
              timeoutSeconds: int
              type: 'string'
            }
          ]
          resources: {
            cpu: json('decimal-as-string')
            memory: 'string'
          }
          volumeMounts: [
            {
              mountPath: 'string'
              subPath: 'string'
              volumeName: 'string'
            }
          ]
        }
      ]
      initContainers: [
        {
          args: [
            'string'
          ]
          command: [
            'string'
          ]
          env: [
            {
              name: 'string'
              secretRef: 'string'
              value: 'string'
            }
          ]
          image: 'string'
          name: 'string'
          resources: {
            cpu: json('decimal-as-string')
            memory: 'string'
          }
          volumeMounts: [
            {
              mountPath: 'string'
              subPath: 'string'
              volumeName: 'string'
            }
          ]
        }
      ]
      volumes: [
        {
          mountOptions: 'string'
          name: 'string'
          secrets: [
            {
              path: 'string'
              secretRef: 'string'
            }
          ]
          storageName: 'string'
          storageType: 'string'
        }
      ]
    }
    workloadProfileName: 'string'
  }
}

Значения свойств

Рабочих мест

Имя Описание Ценность
имя Имя ресурса строка (обязательно)
местоположение Географическое расположение, в котором находится ресурс строка (обязательно)
Теги Теги ресурсов. Словарь имен и значений тегов. См. теги в шаблонах
тождество Управляемые удостоверения, необходимые заданию приложения-контейнера для взаимодействия с другими службами Azure, не поддерживают секреты или учетные данные в коде. ManagedServiceIdentity
свойства Свойства конкретного ресурса задания для приложений-контейнеров. JobProperties

ManagedServiceIdentity

Имя Описание Ценность
тип Тип управляемого удостоверения службы (где разрешены типы SystemAssigned и UserAssigned). "Нет"
SystemAssigned
SystemAssigned, UserAssigned
UserAssigned (обязательно)
userAssignedIdentities Набор назначенных пользователем удостоверений, связанных с ресурсом. Ключи словаря userAssignedIdentities будут идентификаторами ресурсов ARM в форме: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Значения словаря могут быть пустыми объектами ({}) в запросах. UserAssignedIdentities

UserAssignedIdentities

Имя Описание Ценность
{настраиваемое свойство} UserAssignedIdentity

UserAssignedIdentity

Этот объект не содержит свойств, заданных во время развертывания. Все свойства — ReadOnly.

JobProperties

Имя Описание Ценность
конфигурация Свойства конфигурации задания приложений контейнеров. JobConfiguration
environmentId Идентификатор ресурса среды. струна
шаблон Определение задания приложений контейнеров. JobTemplate
workloadProfileName Имя профиля рабочей нагрузки для закрепления для выполнения задания приложений-контейнеров. струна

JobConfiguration

Имя Описание Ценность
eventTriggerConfig Настройка триггера управляемого событиями задания. JobConfigurationEventTriggerConfig
manualTriggerConfig Настройка триггера вручную для одного задания выполнения. Свойства replicaCompletionCount и parallelism будут иметь значение 1 по умолчанию JobConfigurationManualTriggerConfig
Реестров Коллекция учетных данных реестра частных контейнеров, используемых заданием приложений контейнеров RegistryCredentials[]
replicaRetryLimit Максимальное количество повторных попыток перед сбоем задания. int
replicaTimeout Максимальное количество секунд для запуска реплики. int (обязательно)
scheduleTriggerConfig В Cron отформатировано расписание повторения триггера ("* * * *") для cronjobs. По умолчанию для завершения свойств и параллелизма задано значение 1. JobConfigurationScheduleTriggerConfig
Секреты Коллекция секретов, используемых заданием приложений контейнеров секрет[]
triggerType Тип триггера задания Событие
"Вручную"
"Расписание" (обязательно)

JobConfigurationEventTriggerConfig

Имя Описание Ценность
параллелизм Число параллельных реплик задания, которое может выполняться в определенное время. int
replicaCompletionCount Минимальное количество успешных завершения реплик до завершения общего задания. int
шкала Масштабирование конфигураций для заданий на основе событий. JobScale

JobScale

Имя Описание Ценность
maxExecutions Максимальное количество выполнений заданий, созданных для триггера, по умолчанию — 100. int
minExecutions Минимальное количество выполнений заданий, созданных для триггера, по умолчанию 0 int
pollingInterval Интервал для проверки каждого источника события в секундах. Значение по умолчанию — 30s int
Правила Правила масштабирования. JobScaleRule[]

JobScaleRule

Имя Описание Ценность
auth Секреты проверки подлинности для правила масштабирования. ScaleRuleAuth[]
метаданные Свойства метаданных для описания правила масштабирования. Для Bicep можно использовать функцию any().
имя Имя правила масштабирования струна
тип Тип правила масштабирования
например: azure-servicebus, redis и т. д.
струна

ScaleRuleAuth

Имя Описание Ценность
secretRef Имя секрета, из которого необходимо извлечь парамс проверки подлинности. струна
triggerParameter Параметр триггера, использующий секрет струна

JobConfigurationManualTriggerConfig

Имя Описание Ценность
параллелизм Число параллельных реплик задания, которое может выполняться в определенное время. int
replicaCompletionCount Минимальное количество успешных завершения реплик до завершения общего задания. int

RegistryCredentials

Имя Описание Ценность
тождество Управляемое удостоверение, используемое для проверки подлинности в реестре контейнеров Azure. Для удостоверений, назначенных пользователем, используйте полный идентификатор ресурса удостоверения, назначаемого пользователем. Для удостоверений, назначенных системой, используйте system струна
passwordSecretRef Имя секрета, содержащего пароль для входа в реестр струна
сервер Сервер реестра контейнеров струна
имя пользователя Имя пользователя реестра контейнеров струна

JobConfigurationScheduleTriggerConfig

Имя Описание Ценность
cronExpression Cron отформатированный повторяющийся график ("* * * *") задания Cron. строка (обязательно)
параллелизм Число параллельных реплик задания, которое может выполняться в определенное время. int
replicaCompletionCount Минимальное количество успешных завершения реплик до завершения общего задания. int

Секрет

Имя Описание Ценность
тождество Идентификатор ресурса управляемого удостоверения для проверки подлинности в Azure Key Vault или System для использования удостоверения, назначаемого системой. струна
keyVaultUrl URL-адрес Azure Key Vault, указывающий на секрет, на который ссылается приложение контейнера. струна
имя Имя секрета. струна
ценность Значение секрета. струна

Ограничения целостности:
Конфиденциальное значение. Передайте в качестве безопасного параметра.

JobTemplate

Имя Описание Ценность
Контейнеры Список определений контейнеров для приложения-контейнера. контейнера[]
initContainers Список специализированных контейнеров, выполняемых перед контейнерами приложений. InitContainer[]
Объемы Список определений томов для приложения-контейнера. тома[]

Контейнер

Имя Описание Ценность
args Аргументы команд запуска контейнера. string[]
команда Команда запуска контейнера. string[]
env Переменные среды контейнера. EnvironmentVar[]
образ Тег образа контейнера. струна
имя Имя настраиваемого контейнера. струна
Зонды Список проб для контейнера. ContainerAppProbe[]
ресурсы Требования к ресурсам контейнера. ContainerResources
volumeMounts Подключение тома контейнера. VolumeMount[]

EnvironmentVar

Имя Описание Ценность
имя Имя переменной среды. струна
secretRef Имя секрета приложения контейнера, из которого требуется извлечь значение переменной среды. струна
ценность Значение переменной среды, отличной от секрета. струна

ContainerAppProbe

Имя Описание Ценность
failureThreshold Минимальные последовательные сбои для проверки, которые будут считаться неудачными после успешного выполнения. По умолчанию — 3. Минимальное значение равно 1. Максимальное значение равно 10. int
httpGet HTTPGet указывает http-запрос для выполнения. ContainerAppProbeHttpGet
initialDelaySeconds Количество секунд после запуска контейнера до запуска проб активности. Минимальное значение равно 1. Максимальное значение равно 60. int
periodSeconds Как часто (в секундах) выполнять пробу. По умолчанию — 10 секунд. Минимальное значение равно 1. Максимальное значение — 240. int
successThreshold Минимальные последовательные успехи для пробы, которые будут считаться успешными после сбоя. Значение по умолчанию — 1. Должно быть 1 для жизни и запуска. Минимальное значение равно 1. Максимальное значение равно 10. int
tcpSocket TCPSocket указывает действие, связанное с TCP-портом. Перехватчики TCP еще не поддерживаются. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Необязательная длительность в секундах модуль pod должен завершиться корректно при сбое пробы. Льготный период — это длительность в секундах после того, как процессы, выполняемые в модуле pod, отправляются сигнал завершения и время принудительного прекращения процессов с помощью сигнала об убийстве. Задайте это значение дольше ожидаемого времени очистки для процесса. Если это значение равно nil, будет использоваться завершение модуля podGracePeriodSeconds. В противном случае это значение переопределяет значение, предоставленное спецификацией pod. Значение должно быть неотрицательно целым числом. Нулевое значение указывает, что немедленно останавливается через сигнал убийства (нет возможности завершить работу). Это альфа-поле и требует включения шлюза функций ProbeTerminationGracePeriod. Максимальное значение — 3600 секунд (1 час) int
timeoutSeconds Количество секунд, после которого время ожидания пробы истекает. По умолчанию используется значение 1 секунды. Минимальное значение равно 1. Максимальное значение — 240. int
тип Тип пробы. "Liveness"
"Готовность"
"Startup"

ContainerAppProbeHttpGet

Имя Описание Ценность
хозяин Имя узла для подключения по умолчанию к IP-адресу pod. Возможно, вы хотите задать "Host" в httpHeaders. струна
httpHeaders Пользовательские заголовки, заданные в запросе. HTTP позволяет повторять заголовки. ContainerAppProbeHttpGetHttpHeadersItem[]
путь Путь к доступу на HTTP-сервере. струна
порт Имя или номер порта для доступа к контейнеру. Число должно находиться в диапазоне от 1 до 65535. Имя должно быть IANA_SVC_NAME. int (обязательно)
схема Схема, используемая для подключения к узлу. По умолчанию используется протокол HTTP. "HTTP"
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

Имя Описание Ценность
имя Имя поля заголовка строка (обязательно)
ценность Значение поля заголовка строка (обязательно)

ContainerAppProbeTcpSocket

Имя Описание Ценность
хозяин Необязательно. Имя узла для подключения по умолчанию используется для IP-адреса pod. струна
порт Номер или имя порта для доступа к контейнеру. Число должно находиться в диапазоне от 1 до 65535. Имя должно быть IANA_SVC_NAME. int (обязательно)

ContainerResources

Имя Описание Ценность
ЦПУ Обязательный ЦП в ядрах, например 0.5, чтобы указать десятичное значение, используйте функцию json(). int или json decimal
память Требуемая память, например "250 Мб" струна

VolumeMount

Имя Описание Ценность
mountPath Путь в контейнере, в котором должен быть подключен том. Не должно содержать ":". струна
subPath Путь в томе, из которого должен быть подключен том контейнера. По умолчанию используется значение "" (корневой каталог тома). струна
имя тома Это должно соответствовать имени тома. струна

InitContainer

Имя Описание Ценность
args Аргументы команд запуска контейнера. string[]
команда Команда запуска контейнера. string[]
env Переменные среды контейнера. EnvironmentVar[]
образ Тег образа контейнера. струна
имя Имя настраиваемого контейнера. струна
ресурсы Требования к ресурсам контейнера. ContainerResources
volumeMounts Подключение тома контейнера. VolumeMount[]

Том

Имя Описание Ценность
mountOptions Параметры подключения, используемые при подключении AzureFile. Должен быть строкой, разделенной запятыми. струна
имя Имя тома. струна
Секреты Список секретов, добавляемых в том. Если секреты отсутствуют, все секреты в коллекции будут добавлены в том. SecretVolumeItem[]
storageName Имя ресурса хранилища. Не требуется предоставлять значение EmptyDir и Secret. струна
storageType Тип хранилища для тома. Если этот параметр не указан, используйте EmptyDir. AzureFile
'EmptyDir'
"Секрет"

SecretVolumeItem

Имя Описание Ценность
путь Путь к секрету проекта. Если путь не указан, путь по умолчанию имеет имя секрета, указанного в secretRef. струна
secretRef Имя секрета приложения-контейнера, из которого необходимо извлечь значение секрета. струна

Определение ресурса шаблона ARM

Тип ресурса заданий можно развернуть с помощью операций, предназначенных для следующих операций:

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Чтобы создать ресурс Microsoft.App/jobs, добавьте следующий код JSON в шаблон.

{
  "type": "Microsoft.App/jobs",
  "apiVersion": "2023-04-01-preview",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {}
    }
  },
  "properties": {
    "configuration": {
      "eventTriggerConfig": {
        "parallelism": "int",
        "replicaCompletionCount": "int",
        "scale": {
          "maxExecutions": "int",
          "minExecutions": "int",
          "pollingInterval": "int",
          "rules": [
            {
              "auth": [
                {
                  "secretRef": "string",
                  "triggerParameter": "string"
                }
              ],
              "metadata": {},
              "name": "string",
              "type": "string"
            }
          ]
        }
      },
      "manualTriggerConfig": {
        "parallelism": "int",
        "replicaCompletionCount": "int"
      },
      "registries": [
        {
          "identity": "string",
          "passwordSecretRef": "string",
          "server": "string",
          "username": "string"
        }
      ],
      "replicaRetryLimit": "int",
      "replicaTimeout": "int",
      "scheduleTriggerConfig": {
        "cronExpression": "string",
        "parallelism": "int",
        "replicaCompletionCount": "int"
      },
      "secrets": [
        {
          "identity": "string",
          "keyVaultUrl": "string",
          "name": "string",
          "value": "string"
        }
      ],
      "triggerType": "string"
    },
    "environmentId": "string",
    "template": {
      "containers": [
        {
          "args": [ "string" ],
          "command": [ "string" ],
          "env": [
            {
              "name": "string",
              "secretRef": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "name": "string",
          "probes": [
            {
              "failureThreshold": "int",
              "httpGet": {
                "host": "string",
                "httpHeaders": [
                  {
                    "name": "string",
                    "value": "string"
                  }
                ],
                "path": "string",
                "port": "int",
                "scheme": "string"
              },
              "initialDelaySeconds": "int",
              "periodSeconds": "int",
              "successThreshold": "int",
              "tcpSocket": {
                "host": "string",
                "port": "int"
              },
              "terminationGracePeriodSeconds": "int",
              "timeoutSeconds": "int",
              "type": "string"
            }
          ],
          "resources": {
            "cpu": "[json('decimal-as-string')]",
            "memory": "string"
          },
          "volumeMounts": [
            {
              "mountPath": "string",
              "subPath": "string",
              "volumeName": "string"
            }
          ]
        }
      ],
      "initContainers": [
        {
          "args": [ "string" ],
          "command": [ "string" ],
          "env": [
            {
              "name": "string",
              "secretRef": "string",
              "value": "string"
            }
          ],
          "image": "string",
          "name": "string",
          "resources": {
            "cpu": "[json('decimal-as-string')]",
            "memory": "string"
          },
          "volumeMounts": [
            {
              "mountPath": "string",
              "subPath": "string",
              "volumeName": "string"
            }
          ]
        }
      ],
      "volumes": [
        {
          "mountOptions": "string",
          "name": "string",
          "secrets": [
            {
              "path": "string",
              "secretRef": "string"
            }
          ],
          "storageName": "string",
          "storageType": "string"
        }
      ]
    },
    "workloadProfileName": "string"
  }
}

Значения свойств

Рабочих мест

Имя Описание Ценность
тип Тип ресурса "Microsoft.App/jobs"
apiVersion Версия API ресурсов '2023-04-01-preview'
имя Имя ресурса строка (обязательно)
местоположение Географическое расположение, в котором находится ресурс строка (обязательно)
Теги Теги ресурсов. Словарь имен и значений тегов. См. теги в шаблонах
тождество Управляемые удостоверения, необходимые заданию приложения-контейнера для взаимодействия с другими службами Azure, не поддерживают секреты или учетные данные в коде. ManagedServiceIdentity
свойства Свойства конкретного ресурса задания для приложений-контейнеров. JobProperties

ManagedServiceIdentity

Имя Описание Ценность
тип Тип управляемого удостоверения службы (где разрешены типы SystemAssigned и UserAssigned). "Нет"
SystemAssigned
SystemAssigned, UserAssigned
UserAssigned (обязательно)
userAssignedIdentities Набор назначенных пользователем удостоверений, связанных с ресурсом. Ключи словаря userAssignedIdentities будут идентификаторами ресурсов ARM в форме: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Значения словаря могут быть пустыми объектами ({}) в запросах. UserAssignedIdentities

UserAssignedIdentities

Имя Описание Ценность
{настраиваемое свойство} UserAssignedIdentity

UserAssignedIdentity

Этот объект не содержит свойств, заданных во время развертывания. Все свойства — ReadOnly.

JobProperties

Имя Описание Ценность
конфигурация Свойства конфигурации задания приложений контейнеров. JobConfiguration
environmentId Идентификатор ресурса среды. струна
шаблон Определение задания приложений контейнеров. JobTemplate
workloadProfileName Имя профиля рабочей нагрузки для закрепления для выполнения задания приложений-контейнеров. струна

JobConfiguration

Имя Описание Ценность
eventTriggerConfig Настройка триггера управляемого событиями задания. JobConfigurationEventTriggerConfig
manualTriggerConfig Настройка триггера вручную для одного задания выполнения. Свойства replicaCompletionCount и parallelism будут иметь значение 1 по умолчанию JobConfigurationManualTriggerConfig
Реестров Коллекция учетных данных реестра частных контейнеров, используемых заданием приложений контейнеров RegistryCredentials[]
replicaRetryLimit Максимальное количество повторных попыток перед сбоем задания. int
replicaTimeout Максимальное количество секунд для запуска реплики. int (обязательно)
scheduleTriggerConfig В Cron отформатировано расписание повторения триггера ("* * * *") для cronjobs. По умолчанию для завершения свойств и параллелизма задано значение 1. JobConfigurationScheduleTriggerConfig
Секреты Коллекция секретов, используемых заданием приложений контейнеров секрет[]
triggerType Тип триггера задания Событие
"Вручную"
"Расписание" (обязательно)

JobConfigurationEventTriggerConfig

Имя Описание Ценность
параллелизм Число параллельных реплик задания, которое может выполняться в определенное время. int
replicaCompletionCount Минимальное количество успешных завершения реплик до завершения общего задания. int
шкала Масштабирование конфигураций для заданий на основе событий. JobScale

JobScale

Имя Описание Ценность
maxExecutions Максимальное количество выполнений заданий, созданных для триггера, по умолчанию — 100. int
minExecutions Минимальное количество выполнений заданий, созданных для триггера, по умолчанию 0 int
pollingInterval Интервал для проверки каждого источника события в секундах. Значение по умолчанию — 30s int
Правила Правила масштабирования. JobScaleRule[]

JobScaleRule

Имя Описание Ценность
auth Секреты проверки подлинности для правила масштабирования. ScaleRuleAuth[]
метаданные Свойства метаданных для описания правила масштабирования.
имя Имя правила масштабирования струна
тип Тип правила масштабирования
например: azure-servicebus, redis и т. д.
струна

ScaleRuleAuth

Имя Описание Ценность
secretRef Имя секрета, из которого необходимо извлечь парамс проверки подлинности. струна
triggerParameter Параметр триггера, использующий секрет струна

JobConfigurationManualTriggerConfig

Имя Описание Ценность
параллелизм Число параллельных реплик задания, которое может выполняться в определенное время. int
replicaCompletionCount Минимальное количество успешных завершения реплик до завершения общего задания. int

RegistryCredentials

Имя Описание Ценность
тождество Управляемое удостоверение, используемое для проверки подлинности в реестре контейнеров Azure. Для удостоверений, назначенных пользователем, используйте полный идентификатор ресурса удостоверения, назначаемого пользователем. Для удостоверений, назначенных системой, используйте system струна
passwordSecretRef Имя секрета, содержащего пароль для входа в реестр струна
сервер Сервер реестра контейнеров струна
имя пользователя Имя пользователя реестра контейнеров струна

JobConfigurationScheduleTriggerConfig

Имя Описание Ценность
cronExpression Cron отформатированный повторяющийся график ("* * * *") задания Cron. строка (обязательно)
параллелизм Число параллельных реплик задания, которое может выполняться в определенное время. int
replicaCompletionCount Минимальное количество успешных завершения реплик до завершения общего задания. int

Секрет

Имя Описание Ценность
тождество Идентификатор ресурса управляемого удостоверения для проверки подлинности в Azure Key Vault или System для использования удостоверения, назначаемого системой. струна
keyVaultUrl URL-адрес Azure Key Vault, указывающий на секрет, на который ссылается приложение контейнера. струна
имя Имя секрета. струна
ценность Значение секрета. струна

Ограничения целостности:
Конфиденциальное значение. Передайте в качестве безопасного параметра.

JobTemplate

Имя Описание Ценность
Контейнеры Список определений контейнеров для приложения-контейнера. контейнера[]
initContainers Список специализированных контейнеров, выполняемых перед контейнерами приложений. InitContainer[]
Объемы Список определений томов для приложения-контейнера. тома[]

Контейнер

Имя Описание Ценность
args Аргументы команд запуска контейнера. string[]
команда Команда запуска контейнера. string[]
env Переменные среды контейнера. EnvironmentVar[]
образ Тег образа контейнера. струна
имя Имя настраиваемого контейнера. струна
Зонды Список проб для контейнера. ContainerAppProbe[]
ресурсы Требования к ресурсам контейнера. ContainerResources
volumeMounts Подключение тома контейнера. VolumeMount[]

EnvironmentVar

Имя Описание Ценность
имя Имя переменной среды. струна
secretRef Имя секрета приложения контейнера, из которого требуется извлечь значение переменной среды. струна
ценность Значение переменной среды, отличной от секрета. струна

ContainerAppProbe

Имя Описание Ценность
failureThreshold Минимальные последовательные сбои для проверки, которые будут считаться неудачными после успешного выполнения. По умолчанию — 3. Минимальное значение равно 1. Максимальное значение равно 10. int
httpGet HTTPGet указывает http-запрос для выполнения. ContainerAppProbeHttpGet
initialDelaySeconds Количество секунд после запуска контейнера до запуска проб активности. Минимальное значение равно 1. Максимальное значение равно 60. int
periodSeconds Как часто (в секундах) выполнять пробу. По умолчанию — 10 секунд. Минимальное значение равно 1. Максимальное значение — 240. int
successThreshold Минимальные последовательные успехи для пробы, которые будут считаться успешными после сбоя. Значение по умолчанию — 1. Должно быть 1 для жизни и запуска. Минимальное значение равно 1. Максимальное значение равно 10. int
tcpSocket TCPSocket указывает действие, связанное с TCP-портом. Перехватчики TCP еще не поддерживаются. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Необязательная длительность в секундах модуль pod должен завершиться корректно при сбое пробы. Льготный период — это длительность в секундах после того, как процессы, выполняемые в модуле pod, отправляются сигнал завершения и время принудительного прекращения процессов с помощью сигнала об убийстве. Задайте это значение дольше ожидаемого времени очистки для процесса. Если это значение равно nil, будет использоваться завершение модуля podGracePeriodSeconds. В противном случае это значение переопределяет значение, предоставленное спецификацией pod. Значение должно быть неотрицательно целым числом. Нулевое значение указывает, что немедленно останавливается через сигнал убийства (нет возможности завершить работу). Это альфа-поле и требует включения шлюза функций ProbeTerminationGracePeriod. Максимальное значение — 3600 секунд (1 час) int
timeoutSeconds Количество секунд, после которого время ожидания пробы истекает. По умолчанию используется значение 1 секунды. Минимальное значение равно 1. Максимальное значение — 240. int
тип Тип пробы. "Liveness"
"Готовность"
"Startup"

ContainerAppProbeHttpGet

Имя Описание Ценность
хозяин Имя узла для подключения по умолчанию к IP-адресу pod. Возможно, вы хотите задать "Host" в httpHeaders. струна
httpHeaders Пользовательские заголовки, заданные в запросе. HTTP позволяет повторять заголовки. ContainerAppProbeHttpGetHttpHeadersItem[]
путь Путь к доступу на HTTP-сервере. струна
порт Имя или номер порта для доступа к контейнеру. Число должно находиться в диапазоне от 1 до 65535. Имя должно быть IANA_SVC_NAME. int (обязательно)
схема Схема, используемая для подключения к узлу. По умолчанию используется протокол HTTP. "HTTP"
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

Имя Описание Ценность
имя Имя поля заголовка строка (обязательно)
ценность Значение поля заголовка строка (обязательно)

ContainerAppProbeTcpSocket

Имя Описание Ценность
хозяин Необязательно. Имя узла для подключения по умолчанию используется для IP-адреса pod. струна
порт Номер или имя порта для доступа к контейнеру. Число должно находиться в диапазоне от 1 до 65535. Имя должно быть IANA_SVC_NAME. int (обязательно)

ContainerResources

Имя Описание Ценность
ЦПУ Обязательный ЦП в ядрах, например 0.5, чтобы указать десятичное значение, используйте функцию json(). int или json decimal
память Требуемая память, например "250 Мб" струна

VolumeMount

Имя Описание Ценность
mountPath Путь в контейнере, в котором должен быть подключен том. Не должно содержать ":". струна
subPath Путь в томе, из которого должен быть подключен том контейнера. По умолчанию используется значение "" (корневой каталог тома). струна
имя тома Это должно соответствовать имени тома. струна

InitContainer

Имя Описание Ценность
args Аргументы команд запуска контейнера. string[]
команда Команда запуска контейнера. string[]
env Переменные среды контейнера. EnvironmentVar[]
образ Тег образа контейнера. струна
имя Имя настраиваемого контейнера. струна
ресурсы Требования к ресурсам контейнера. ContainerResources
volumeMounts Подключение тома контейнера. VolumeMount[]

Том

Имя Описание Ценность
mountOptions Параметры подключения, используемые при подключении AzureFile. Должен быть строкой, разделенной запятыми. струна
имя Имя тома. струна
Секреты Список секретов, добавляемых в том. Если секреты отсутствуют, все секреты в коллекции будут добавлены в том. SecretVolumeItem[]
storageName Имя ресурса хранилища. Не требуется предоставлять значение EmptyDir и Secret. струна
storageType Тип хранилища для тома. Если этот параметр не указан, используйте EmptyDir. AzureFile
'EmptyDir'
"Секрет"

SecretVolumeItem

Имя Описание Ценность
путь Путь к секрету проекта. Если путь не указан, путь по умолчанию имеет имя секрета, указанного в secretRef. струна
secretRef Имя секрета приложения-контейнера, из которого необходимо извлечь значение секрета. струна

Определение ресурса Terraform (поставщик AzAPI)

Тип ресурса заданий можно развернуть с помощью операций, предназначенных для следующих операций:

  • групп ресурсов

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Чтобы создать ресурс Microsoft.App/jobs, добавьте следующий объект Terraform в шаблон.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.App/jobs@2023-04-01-preview"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  identity {
    type = "string"
    identity_ids = []
  }
  body = jsonencode({
    properties = {
      configuration = {
        eventTriggerConfig = {
          parallelism = int
          replicaCompletionCount = int
          scale = {
            maxExecutions = int
            minExecutions = int
            pollingInterval = int
            rules = [
              {
                auth = [
                  {
                    secretRef = "string"
                    triggerParameter = "string"
                  }
                ]
                name = "string"
                type = "string"
              }
            ]
          }
        }
        manualTriggerConfig = {
          parallelism = int
          replicaCompletionCount = int
        }
        registries = [
          {
            identity = "string"
            passwordSecretRef = "string"
            server = "string"
            username = "string"
          }
        ]
        replicaRetryLimit = int
        replicaTimeout = int
        scheduleTriggerConfig = {
          cronExpression = "string"
          parallelism = int
          replicaCompletionCount = int
        }
        secrets = [
          {
            identity = "string"
            keyVaultUrl = "string"
            name = "string"
            value = "string"
          }
        ]
        triggerType = "string"
      }
      environmentId = "string"
      template = {
        containers = [
          {
            args = [
              "string"
            ]
            command = [
              "string"
            ]
            env = [
              {
                name = "string"
                secretRef = "string"
                value = "string"
              }
            ]
            image = "string"
            name = "string"
            probes = [
              {
                failureThreshold = int
                httpGet = {
                  host = "string"
                  httpHeaders = [
                    {
                      name = "string"
                      value = "string"
                    }
                  ]
                  path = "string"
                  port = int
                  scheme = "string"
                }
                initialDelaySeconds = int
                periodSeconds = int
                successThreshold = int
                tcpSocket = {
                  host = "string"
                  port = int
                }
                terminationGracePeriodSeconds = int
                timeoutSeconds = int
                type = "string"
              }
            ]
            resources = {
              cpu = "decimal-as-string"
              memory = "string"
            }
            volumeMounts = [
              {
                mountPath = "string"
                subPath = "string"
                volumeName = "string"
              }
            ]
          }
        ]
        initContainers = [
          {
            args = [
              "string"
            ]
            command = [
              "string"
            ]
            env = [
              {
                name = "string"
                secretRef = "string"
                value = "string"
              }
            ]
            image = "string"
            name = "string"
            resources = {
              cpu = "decimal-as-string"
              memory = "string"
            }
            volumeMounts = [
              {
                mountPath = "string"
                subPath = "string"
                volumeName = "string"
              }
            ]
          }
        ]
        volumes = [
          {
            mountOptions = "string"
            name = "string"
            secrets = [
              {
                path = "string"
                secretRef = "string"
              }
            ]
            storageName = "string"
            storageType = "string"
          }
        ]
      }
      workloadProfileName = "string"
    }
  })
}

Значения свойств

Рабочих мест

Имя Описание Ценность
тип Тип ресурса "Microsoft.App/jobs@2023-04-01-preview"
имя Имя ресурса строка (обязательно)
местоположение Географическое расположение, в котором находится ресурс строка (обязательно)
parent_id Чтобы развернуть в группе ресурсов, используйте идентификатор этой группы ресурсов. строка (обязательно)
Теги Теги ресурсов. Словарь имен и значений тегов.
тождество Управляемые удостоверения, необходимые заданию приложения-контейнера для взаимодействия с другими службами Azure, не поддерживают секреты или учетные данные в коде. ManagedServiceIdentity
свойства Свойства конкретного ресурса задания для приложений-контейнеров. JobProperties

ManagedServiceIdentity

Имя Описание Ценность
тип Тип управляемого удостоверения службы (где разрешены типы SystemAssigned и UserAssigned). SystemAssigned
SystemAssigned, UserAssigned
UserAssigned (обязательно)
identity_ids Набор назначенных пользователем удостоверений, связанных с ресурсом. Ключи словаря userAssignedIdentities будут идентификаторами ресурсов ARM в форме: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Значения словаря могут быть пустыми объектами ({}) в запросах. Массив идентификаторов удостоверений пользователя.

UserAssignedIdentities

Имя Описание Ценность
{настраиваемое свойство} UserAssignedIdentity

UserAssignedIdentity

Этот объект не содержит свойств, заданных во время развертывания. Все свойства — ReadOnly.

JobProperties

Имя Описание Ценность
конфигурация Свойства конфигурации задания приложений контейнеров. JobConfiguration
environmentId Идентификатор ресурса среды. струна
шаблон Определение задания приложений контейнеров. JobTemplate
workloadProfileName Имя профиля рабочей нагрузки для закрепления для выполнения задания приложений-контейнеров. струна

JobConfiguration

Имя Описание Ценность
eventTriggerConfig Настройка триггера управляемого событиями задания. JobConfigurationEventTriggerConfig
manualTriggerConfig Настройка триггера вручную для одного задания выполнения. Свойства replicaCompletionCount и parallelism будут иметь значение 1 по умолчанию JobConfigurationManualTriggerConfig
Реестров Коллекция учетных данных реестра частных контейнеров, используемых заданием приложений контейнеров RegistryCredentials[]
replicaRetryLimit Максимальное количество повторных попыток перед сбоем задания. int
replicaTimeout Максимальное количество секунд для запуска реплики. int (обязательно)
scheduleTriggerConfig В Cron отформатировано расписание повторения триггера ("* * * *") для cronjobs. По умолчанию для завершения свойств и параллелизма задано значение 1. JobConfigurationScheduleTriggerConfig
Секреты Коллекция секретов, используемых заданием приложений контейнеров секрет[]
triggerType Тип триггера задания "Событие"
"Вручную"
"Расписание" (обязательно)

JobConfigurationEventTriggerConfig

Имя Описание Ценность
параллелизм Число параллельных реплик задания, которое может выполняться в определенное время. int
replicaCompletionCount Минимальное количество успешных завершения реплик до завершения общего задания. int
шкала Масштабирование конфигураций для заданий на основе событий. JobScale

JobScale

Имя Описание Ценность
maxExecutions Максимальное количество выполнений заданий, созданных для триггера, по умолчанию — 100. int
minExecutions Минимальное количество выполнений заданий, созданных для триггера, по умолчанию 0 int
pollingInterval Интервал для проверки каждого источника события в секундах. Значение по умолчанию — 30s int
Правила Правила масштабирования. JobScaleRule[]

JobScaleRule

Имя Описание Ценность
auth Секреты проверки подлинности для правила масштабирования. ScaleRuleAuth[]
метаданные Свойства метаданных для описания правила масштабирования.
имя Имя правила масштабирования струна
тип Тип правила масштабирования
например: azure-servicebus, redis и т. д.
струна

ScaleRuleAuth

Имя Описание Ценность
secretRef Имя секрета, из которого необходимо извлечь парамс проверки подлинности. струна
triggerParameter Параметр триггера, использующий секрет струна

JobConfigurationManualTriggerConfig

Имя Описание Ценность
параллелизм Число параллельных реплик задания, которое может выполняться в определенное время. int
replicaCompletionCount Минимальное количество успешных завершения реплик до завершения общего задания. int

RegistryCredentials

Имя Описание Ценность
тождество Управляемое удостоверение, используемое для проверки подлинности в реестре контейнеров Azure. Для удостоверений, назначенных пользователем, используйте полный идентификатор ресурса удостоверения, назначаемого пользователем. Для удостоверений, назначенных системой, используйте system струна
passwordSecretRef Имя секрета, содержащего пароль для входа в реестр струна
сервер Сервер реестра контейнеров струна
имя пользователя Имя пользователя реестра контейнеров струна

JobConfigurationScheduleTriggerConfig

Имя Описание Ценность
cronExpression Cron отформатированный повторяющийся график ("* * * *") задания Cron. строка (обязательно)
параллелизм Число параллельных реплик задания, которое может выполняться в определенное время. int
replicaCompletionCount Минимальное количество успешных завершения реплик до завершения общего задания. int

Секрет

Имя Описание Ценность
тождество Идентификатор ресурса управляемого удостоверения для проверки подлинности в Azure Key Vault или System для использования удостоверения, назначаемого системой. струна
keyVaultUrl URL-адрес Azure Key Vault, указывающий на секрет, на который ссылается приложение контейнера. струна
имя Имя секрета. струна
ценность Значение секрета. струна

Ограничения целостности:
Конфиденциальное значение. Передайте в качестве безопасного параметра.

JobTemplate

Имя Описание Ценность
Контейнеры Список определений контейнеров для приложения-контейнера. контейнера[]
initContainers Список специализированных контейнеров, выполняемых перед контейнерами приложений. InitContainer[]
Объемы Список определений томов для приложения-контейнера. тома[]

Контейнер

Имя Описание Ценность
args Аргументы команд запуска контейнера. string[]
команда Команда запуска контейнера. string[]
env Переменные среды контейнера. EnvironmentVar[]
образ Тег образа контейнера. струна
имя Имя настраиваемого контейнера. струна
Зонды Список проб для контейнера. ContainerAppProbe[]
ресурсы Требования к ресурсам контейнера. ContainerResources
volumeMounts Подключение тома контейнера. VolumeMount[]

EnvironmentVar

Имя Описание Ценность
имя Имя переменной среды. струна
secretRef Имя секрета приложения контейнера, из которого требуется извлечь значение переменной среды. струна
ценность Значение переменной среды, отличной от секрета. струна

ContainerAppProbe

Имя Описание Ценность
failureThreshold Минимальные последовательные сбои для проверки, которые будут считаться неудачными после успешного выполнения. По умолчанию — 3. Минимальное значение равно 1. Максимальное значение равно 10. int
httpGet HTTPGet указывает http-запрос для выполнения. ContainerAppProbeHttpGet
initialDelaySeconds Количество секунд после запуска контейнера до запуска проб активности. Минимальное значение равно 1. Максимальное значение равно 60. int
periodSeconds Как часто (в секундах) выполнять пробу. По умолчанию — 10 секунд. Минимальное значение равно 1. Максимальное значение — 240. int
successThreshold Минимальные последовательные успехи для пробы, которые будут считаться успешными после сбоя. Значение по умолчанию — 1. Должно быть 1 для жизни и запуска. Минимальное значение равно 1. Максимальное значение равно 10. int
tcpSocket TCPSocket указывает действие, связанное с TCP-портом. Перехватчики TCP еще не поддерживаются. ContainerAppProbeTcpSocket
terminationGracePeriodSeconds Необязательная длительность в секундах модуль pod должен завершиться корректно при сбое пробы. Льготный период — это длительность в секундах после того, как процессы, выполняемые в модуле pod, отправляются сигнал завершения и время принудительного прекращения процессов с помощью сигнала об убийстве. Задайте это значение дольше ожидаемого времени очистки для процесса. Если это значение равно nil, будет использоваться завершение модуля podGracePeriodSeconds. В противном случае это значение переопределяет значение, предоставленное спецификацией pod. Значение должно быть неотрицательно целым числом. Нулевое значение указывает, что немедленно останавливается через сигнал убийства (нет возможности завершить работу). Это альфа-поле и требует включения шлюза функций ProbeTerminationGracePeriod. Максимальное значение — 3600 секунд (1 час) int
timeoutSeconds Количество секунд, после которого время ожидания пробы истекает. По умолчанию используется значение 1 секунды. Минимальное значение равно 1. Максимальное значение — 240. int
тип Тип пробы. "Liveness"
"Готовность"
"Startup"

ContainerAppProbeHttpGet

Имя Описание Ценность
хозяин Имя узла для подключения по умолчанию к IP-адресу pod. Возможно, вы хотите задать "Host" в httpHeaders. струна
httpHeaders Пользовательские заголовки, заданные в запросе. HTTP позволяет повторять заголовки. ContainerAppProbeHttpGetHttpHeadersItem[]
путь Путь к доступу на HTTP-сервере. струна
порт Имя или номер порта для доступа к контейнеру. Число должно находиться в диапазоне от 1 до 65535. Имя должно быть IANA_SVC_NAME. int (обязательно)
схема Схема, используемая для подключения к узлу. По умолчанию используется протокол HTTP. "HTTP"
"HTTPS"

ContainerAppProbeHttpGetHttpHeadersItem

Имя Описание Ценность
имя Имя поля заголовка строка (обязательно)
ценность Значение поля заголовка строка (обязательно)

ContainerAppProbeTcpSocket

Имя Описание Ценность
хозяин Необязательно. Имя узла для подключения по умолчанию используется для IP-адреса pod. струна
порт Номер или имя порта для доступа к контейнеру. Число должно находиться в диапазоне от 1 до 65535. Имя должно быть IANA_SVC_NAME. int (обязательно)

ContainerResources

Имя Описание Ценность
ЦПУ Обязательный ЦП в ядрах, например 0,5, укажите десятичное значение в виде строки. int или json decimal
память Требуемая память, например "250 Мб" струна

VolumeMount

Имя Описание Ценность
mountPath Путь в контейнере, в котором должен быть подключен том. Не должно содержать ":". струна
subPath Путь в томе, из которого должен быть подключен том контейнера. По умолчанию используется значение "" (корневой каталог тома). струна
имя тома Это должно соответствовать имени тома. струна

InitContainer

Имя Описание Ценность
args Аргументы команд запуска контейнера. string[]
команда Команда запуска контейнера. string[]
env Переменные среды контейнера. EnvironmentVar[]
образ Тег образа контейнера. струна
имя Имя настраиваемого контейнера. струна
ресурсы Требования к ресурсам контейнера. ContainerResources
volumeMounts Подключение тома контейнера. VolumeMount[]

Том

Имя Описание Ценность
mountOptions Параметры подключения, используемые при подключении AzureFile. Должен быть строкой, разделенной запятыми. струна
имя Имя тома. струна
Секреты Список секретов, добавляемых в том. Если секреты отсутствуют, все секреты в коллекции будут добавлены в том. SecretVolumeItem[]
storageName Имя ресурса хранилища. Не требуется предоставлять значение EmptyDir и Secret. струна
storageType Тип хранилища для тома. Если этот параметр не указан, используйте EmptyDir. AzureFile
"EmptyDir"
"Секрет"

SecretVolumeItem

Имя Описание Ценность
путь Путь к секрету проекта. Если путь не указан, путь по умолчанию имеет имя секрета, указанного в secretRef. струна
secretRef Имя секрета приложения-контейнера, из которого необходимо извлечь значение секрета. струна