register-job-definition
Описание
Регистрирует определение задания Batch.
См. также: Документацию API AWS
Синтаксис
register-job-definition
--job-definition-name <value>
--type <value>
[--parameters <value>]
[--scheduling-priority <value>]
[--container-properties <value>]
[--node-properties <value>]
[--retry-strategy <value>]
[--propagate-tags | --no-propagate-tags]
[--timeout <value>]
[--tags <value>]
[--platform-capabilities <value>]
[--eks-properties <value>]
[--ecs-properties <value>]
[--consumable-resource-properties <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--job-definition-name (строка)
--type (строка)
Тип определения задания. Для получения дополнительной информации о многоузловых параллельных заданиях, см. Создание определения многоузлового параллельного задания в Руководстве пользователя Batch.
- Если значение равно
container, то требуется одно из следующих значений:containerProperties,ecsPropertiesилиeksProperties. - Если значение равно
multinode, то требуетсяnodeProperties.
Примечание
Если задание выполняется на ресурсах Fargate, тогдаmultinode не поддерживается.Возможные значения:
containermultinode
--parameters (словарь)
Предварительно заданные значения параметров для подстановки в определении задания. Параметры задаются как пары ключ-значение. Параметры в запросе SubmitJob переопределяют любые соответствующие значения параметров по умолчанию из определения задания.
ключ -> (строка)
значение -> (строка)
Краткая форма синтаксиса:
KeyName1=string,KeyName2=string
Синтаксис JSON:
{"string": "string"
...}
--scheduling-priority (целое число)
Приоритет планирования заданий, отправленных с этим определением задания. Это влияет только на задания в очередях заданий с политикой справедливого распределения. Задания с более высоким приоритетом планирования выполняются раньше заданий с более низким приоритетом.
Минимальное поддерживаемое значение равно 0, максимальное — 9999.
--container-properties (структура)
Объект со свойствами, специфичными для контейнерных заданий на основе одного узла Amazon ECS. Если параметр type определения задания имеет значение container, то необходимо указать либо containerProperties, либо nodeProperties. Этот параметр не должен указываться для определений заданий на основе Amazon EKS.
Примечание
Если задание выполняется на ресурсах Fargate, то не следует указыватьnodeProperties; используйте только containerProperties.image -> (строка)
Обязательный параметр. Изображение, используемое для запуска контейнера. Эта строка передается напрямую в демона Docker. Изображения из реестра Docker Hub доступны по умолчанию. Другие репозитории указываются с помощью `` repository-url /image :tag ``. Длина может достигать 255 символов. Она может содержать заглавные и строчные буквы, цифры, дефисы (-), подчеркивания (_), двоеточия (:), точки (.), слэши (/), и диезы (#). Этот параметр соответствует параметру Image в разделе «Создание контейнера» в Docker Remote API и параметру IMAGE в команде docker run.
Примечание
Архитектура Docker-изображения должна соответствовать архитектуре процессора вычислительных ресурсов, на которых они планируются. Например, Docker-изображения на базе ARM могут работать только на вычислительных ресурсах на базе ARM.- Изображения в общедоступных репозиториях Amazon ECR используют полные обозначения в формате
registry/repository[:tag]илиregistry/repository[@digest]. Например, ``public.ecr.aws/registry_alias /my-web-app :latest ``. - Изображения в репозиториях Amazon ECR используют полный URI реестра и репозитория (например,
123456789012.dkr.ecr.<region-name>.amazonaws.com/<repository-name>). - Изображения в официальных репозиториях Docker Hub используют одно имя (например,
ubuntuилиmongo). - Изображения в других репозиториях Docker Hub квалифицируются именем организации (например,
amazon/amazon-ecs-agent). - Изображения в других онлайн-репозиториях дополнительно квалифицируются доменным именем (например,
quay.io/assemblyline/ubuntu).
vcpus -> (целое число)
Этот параметр устарел, используйте resourceRequirements для указания требований к vCPU для определения задания. Он не поддерживается для заданий, выполняемых на ресурсах Fargate. Для заданий, выполняемых на ресурсах Amazon EC2, он указывает количество vCPU, зарезервированных для задания.
Каждая vCPU эквивалентна 1 024 CPU-долям. Этот параметр соответствует параметру CpuShares в разделе «Создание контейнера» Docker Remote API и параметру --cpu-shares команды docker run. Количество vCPU должно быть указано, но может быть указано в нескольких местах. Необходимо указать его как минимум для каждого узла.
memory -> (целое число)
resourceRequirements для указания требований к памяти для определения задания. Он не поддерживается для заданий, выполняемых на ресурсах Fargate. Для заданий, выполняемых на ресурсах Amazon EC2, он указывает жёсткое ограничение по памяти (в МБ) для контейнера. Если контейнер пытается превысить указанное количество, он завершается. Для задания с использованием этого параметра необходимо указать как минимум 4 МБ памяти. Жёсткое ограничение по памяти можно указать в нескольких местах. Оно должно быть указано для каждого узла как минимум один раз.command -> (список)
Команда, передаваемая контейнеру. Этот параметр соответствует параметру Cmd в разделе «Создание контейнера» Docker Remote API и параметру COMMAND в команде docker run. Дополнительную информацию см. на https://docs.docker.com/engine/reference/builder/#cmd.
(строка)
jobRoleArn -> (строка)
executionRoleArn -> (строка)
volumes -> (список)
Список томов данных, используемых в задании.
(структура)
Том данных, используемый в свойствах контейнера задания.
host -> (структура)
Содержимое параметра host определяет, сохраняется ли ваш том данных на экземпляре хост-контейнера и где он хранится. Если параметр host пустой, то демон Docker присваивает путь хоста для вашего тома данных. Однако данные не гарантированно сохранятся после остановки контейнеров, связанных с ним.
Примечание
Этот параметр не применим к заданиям, выполняемым на ресурсах Fargate, и его не следует предоставлять.sourcePath -> (строка)
Путь на экземпляре хост-контейнера, который предоставляется контейнеру. Если этот параметр пустой, то демон Docker присвоил вам путь хоста. Если этот параметр содержит расположение файла, то том данных сохраняется в указанном расположении на экземпляре хост-контейнера до тех пор, пока вы его не удалите вручную. Если местоположение исходного пути не существует на экземпляре хост-контейнера, демон Docker его создает. Если местоположение существует, содержимое папки исходного пути экспортируется.
Примечание
Этот параметр не применим к заданиям, выполняемым на ресурсах Fargate. Не предоставляйте его для таких заданий.name -> (строка)
sourceVolume определения контейнера mountPoints.efsVolumeConfiguration -> (структура)
Этот параметр указывается, когда вы используете файловую систему Amazon Elastic File System для хранения заданий. Задания, выполняемые на ресурсах Fargate, должны указывать platformVersion объёмом как минимум 1.4.0.
fileSystemId -> (строка)
rootDirectory -> (строка)
Директория внутри файловой системы Amazon EFS, которая будет смонтирована как корневая директория внутри хоста. Если этот параметр опущен, используется корень тома Amazon EFS. Указание / имеет тот же эффект, что и опускание этого параметра. Максимальная длина составляет 4 096 символов.
Предупреждение
Если вauthorizationConfig указан EFS-точку доступа, параметр rootDirectory должен быть опущен или установлен в /, что обеспечивает применение пути, установленного в Amazon EFS-точке доступа.transitEncryption -> (строка)
DISABLED. Дополнительную информацию см. в разделе «Шифрование данных при передаче» в руководстве пользователя Amazon Elastic File System.transitEncryptionPort -> (целое число)
authorizationConfig -> (структура)
Подробности конфигурации авторизации для файловой системы Amazon EFS.
accessPointId -> (строка)
EFSVolumeConfiguration должно быть опущено или установлено в /, что обеспечивает применение пути, установленного в точке доступа EFS. Если используется точка доступа, шифрование при передаче должно быть включено в EFSVolumeConfiguration. Дополнительную информацию см. в разделе «Работа с точками доступа Amazon EFS» в руководстве пользователя Amazon Elastic File System.iam -> (строка)
EFSVolumeConfiguration. Если этот параметр опущен, используется значение по умолчанию DISABLED. Дополнительную информацию см. в разделе «Использование точек доступа Amazon EFS» в руководстве пользователя Batch. Авторизация IAM EFS требует, чтобы TransitEncryption был ENABLED и был указан JobRoleArn.environment -> (список)
Переменные среды, передаваемые контейнеру. Этот параметр соответствует параметру Env в разделе «Создание контейнера» в Docker Remote API и параметру --env команды docker run.
Предупреждение
Не рекомендуется использовать текстовые переменные среды для конфиденциальной информации, такой как данные учетных данных.Примечание
Переменные среды не могут начинаться с «AWS_BATCH». Эта схема именования зарезервирована для переменных, которые устанавливает Batch.(структура)
Объект пары «ключ-значение».
name -> (строка)
value -> (строка)
mountPoints -> (список)
Точки монтирования томов данных в вашем контейнере. Этот параметр соответствует параметру Volumes в разделе «Создание контейнера» в Docker Remote API и параметру --volume команды docker run.
(структура)
Подробности для точки монтирования тома Docker, используемой в свойствах контейнера задания. Этот параметр соответствует параметру Volumes в разделе «Создание контейнера» в *Docker Remote API* и параметру --volume команды docker run.
containerPath -> (строка)
readOnly -> (булево)
true, то контейнер имеет доступ только для чтения к тому. В противном случае, контейнер может записывать в том. Значение по умолчанию — false.sourceVolume -> (строка)
readonlyRootFilesystem -> (булево)
ReadonlyRootfs в разделе «Создание контейнера» в Docker Remote API и параметру --read-only команды docker run.privileged -> (булево)
Когда этот параметр имеет значение true, контейнеру предоставляются повышенные разрешения в экземпляре хост-контейнера (аналогично пользователю root). Этот параметр сопоставляется с Privileged в разделе Создание контейнера в Docker Remote API и с опцией --privileged для docker run . Значение по умолчанию — false.
Примечание
Этот параметр не применим к заданиям, выполняемым на ресурсах Fargate, и его не следует указывать или указывать как false.ulimits -> (список)
Список ulimits для установки в контейнере. Этот параметр сопоставляется с Ulimits в разделе Create a container Docker Remote API и с опцией --ulimit для docker run .
Примечание
Этот параметр не применим к заданиям, выполняемым на ресурсах Fargate, и его не следует указывать.(структура)
Параметры ulimit для передачи в контейнер. Дополнительные сведения см. в разделе Ulimit .
Примечание
Этот объект не применим к заданиям, выполняемым на ресурсах Fargate.hardLimit -> (integer)
ulimit .name -> (string)
type ulimit . Допустимые значения: core | cpu | data | fsize | locks | memlock | msgqueue | nice | nofile | nproc | rss | rtprio | rttime | sigpending | stack .softLimit -> (integer)
ulimit .user -> (string)
User в разделе Create a container Docker Remote API и с опцией --user для docker run .instanceType -> (string)
Тип экземпляра для использования для параллельного многоузлового задания. Все группы узлов в многоузловом параллельном задании должны использовать один и тот же тип экземпляра.
Примечание
Этот параметр не применим к одноузловым контейнерным заданиям или заданиям, выполняемым на ресурсах Fargate, и его не следует указывать.resourceRequirements -> (список)
Тип и объем ресурсов, которые необходимо назначить контейнеру. Поддерживаемые ресурсы включают GPU, MEMORY и VCPU .
(структура)
Тип и объем ресурса, который необходимо назначить контейнеру. Поддерживаемые ресурсы включают GPU, MEMORY и VCPU .
value -> (string)
Количество указанного ресурса, которое необходимо зарезервировать для контейнера. Значения зависят от указанного type .
Количество физических графических процессоров, которые необходимо зарезервировать для контейнера. Убедитесь, что количество графических процессоров, зарезервированных для всех контейнеров в задании, не превышает количество доступных графических процессоров на вычислительном ресурсе, на котором запущено задание.
Примечание
Графические процессоры недоступны для заданий, выполняемых на ресурсах Fargate.
type=”MEMORY”
Жесткий лимит памяти (в МиБ), предоставляемый контейнеру. Этот параметр поддерживается для заданий, выполняемых на ресурсах Amazon EC2. Если контейнер пытается превысить указанную память, контейнер завершает работу. Этот параметр сопоставляется с Memory в разделе Create a container Docker Remote API и с опцией --memory для docker run . Необходимо указать не менее 4 МиБ памяти для задания. Это необходимо, но может быть указано в нескольких местах для многоузловых параллельных (MNP) заданий. Это необходимо указать для каждого узла хотя бы один раз. Этот параметр сопоставляется с Memory в разделе Create a container Docker Remote API и с опцией --memory для docker run .
Примечание
Если вы пытаетесь максимально эффективно использовать ресурсы, предоставляя своим заданиям как можно больше памяти для определенного типа экземпляра, см. раздел Управление памятью в руководстве Batch User Guide .Для заданий, выполняемых на ресурсах Fargate, value — это жесткий лимит (в МиБ), который должен соответствовать одному из поддерживаемых значений, а значения VCPU должны соответствовать одному из значений, поддерживаемых для этого значения памяти.
VCPU = 0.25
VCPU = 0.25 или 0.5
VCPU = 0.25, 0.5 или 1
VCPU = 0.5 или 1
VCPU = 0.5, 1 или 2
VCPU = 1 или 2
VCPU = 1, 2 или 4
VCPU = 2 или 4
VCPU = 2, 4 или 8
VCPU = 4
VCPU = 4 или 8
VCPU = 8
VCPU = 8 или 16
VCPU = 16
Количество виртуальных ЦП, зарезервированных для контейнера. Этот параметр сопоставляется с CpuShares в разделе Create a container Docker Remote API и с опцией --cpu-shares для docker run . Каждый виртуальный ЦП эквивалентен 1024 долям ЦП. Для ресурсов Amazon EC2 необходимо указать не менее одного виртуального ЦП. Это необходимо, но может быть указано в нескольких местах; его необходимо указать для каждого узла хотя бы один раз.
По умолчанию для квоты ресурсов виртуального ЦП по требованию Fargate установлено значение 6 виртуальных ЦП. Дополнительные сведения о квотах Fargate см. в разделе Квоты Fargate в Amazon Web Services General Reference .
Для заданий, выполняемых на ресурсах Fargate, value должен соответствовать одному из поддерживаемых значений, а значения MEMORY должны соответствовать одному из значений, поддерживаемых для этого значения VCPU . Поддерживаются значения 0,25, 0,5, 1, 2, 4, 8 и 16
MEMORY = 512, 1024 или 2048
MEMORY = 1024, 2048, 3072 или 4096
MEMORY = 2048, 3072, 4096, 5120, 6144, 7168 или 8192
MEMORY = 4096, 5120, 6144, 7168, 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360 или 16384
MEMORY = 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, 16384, 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696 или 30720
MEMORY = 16384, 20480, 24576, 28672, 32768, 36864, 40960, 45056, 49152, 53248, 57344 или 61440
MEMORY = 32768, 40960, 49152, 57344, 65536, 73728, 81920, 90112, 98304, 106496, 114688 или 122880
type -> (string)
GPU, MEMORY и VCPU .linuxParameters -> (структура)
Модификации, специфичные для Linux, применяемые к контейнеру, такие как сведения о сопоставлениях устройств.
devices -> (список)
Любое из устройств хоста, которые необходимо экспонировать контейнеру. Этот параметр соответствует параметру Devices в разделе «Создание контейнера» в документации Docker Remote API и параметру --device опции docker run.
Примечание
Этот параметр не применим к задачам, выполняющимся на ресурсах Fargate. Не указывайте его для таких задач.(структура)
Объект, представляющий устройство хоста контейнера.
Примечание
Этот объект не применим к задачам, выполняющимся на ресурсах Fargate, и его не следует указывать.hostPath -> (строка)
containerPath -> (строка)
hostPath.permissions -> (список)
Явные разрешения, предоставляемые контейнеру для устройства. По умолчанию контейнер имеет разрешения read, write и mknod для устройства.
(строка)
initProcessEnabled -> (булево)
init внутри контейнера, который перенаправляет сигналы и собирает процессы. Этот параметр соответствует опции --init к docker run. Этот параметр требует версии Docker Remote API 1.25 или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"
sharedMemorySize -> (целое число)
Значение размера (в МБ) тома /dev/shm. Этот параметр соответствует опции --shm-size к docker run.
Примечание
Этот параметр не применим к задачам, выполняющимся на ресурсах Fargate. Не указывайте его для таких задач.tmpfs -> (список)
Путь контейнера, параметры монтирования и размер (в МБ) монтирования tmpfs. Этот параметр соответствует опции --tmpfs к docker run.
Примечание
Этот параметр не применим к задачам, выполняющимся на ресурсах Fargate. Не предоставляйте этот параметр для данного типа ресурсов.(структура)
Путь контейнера, параметры монтирования и размер монтирования tmpfs.
Примечание
Этот объект не применим к задачам, выполняющимся на ресурсах Fargate.containerPath -> (строка)
tmpfs.size -> (целое число)
tmpfs.mountOptions -> (список)
Список параметров монтирования тома tmpfs.
Допустимые значения: “defaults “ | “ro “ | “rw “ | “suid “ | “nosuid “ | “dev “ | “nodev “ | “exec “ | “noexec “ | “sync “ | “async “ | “dirsync “ | “remount “ | “mand “ | “nomand “ | “atime “ | “noatime “ | “diratime “ | “nodiratime “ | “bind “ | “rbind" | "unbindable" | "runbindable" | "private" | "rprivate" | "shared" | "rshared" | "slave" | "rslave" | "relatime “ | “norelatime “ | “strictatime “ | “nostrictatime “ | “mode “ | “uid “ | “gid “ | “nr_inodes “ | “nr_blocks “ | “mpol “
(строка)
maxSwap -> (целое число)
Общий объем памяти подкачки (в МБ), который может использовать контейнер. Этот параметр преобразуется в опцию --memory-swap к docker run, где значение представляет собой сумму памяти контейнера плюс значение maxSwap. Дополнительная информация доступна в документации Docker по ссылке ` --memory-swap details <https://docs.docker.com/config/containers/resource_constraints/#–memory-swap-details>`__.
Если значение maxSwap задано как 0, контейнер не использует подкачку. Допустимые значения — 0 или любое положительное целое число. Если параметр maxSwap опущен, контейнер не использует конфигурацию подкачки для экземпляра контейнера, на котором он выполняется. Значение maxSwap должно быть установлено для использования параметра swappiness.
Примечание
Этот параметр не применим к задачам, выполняющимся на ресурсах Fargate. Не указывайте его для таких задач.swappiness -> (целое число)
Этот параметр позволяет настроить поведение подкачки памяти контейнера. Значение swappiness, равное 0, предотвращает подкачку, если это не абсолютно необходимо. Значение swappiness, равное 100, приводит к агрессивному обмену страницами. Допустимые значения — целые числа от 0 до 100. Если параметр swappiness не указан, используется значение по умолчанию 60. Если значение не указано для maxSwap, этот параметр игнорируется. Если maxSwap установлено в 0, контейнер не использует подкачку. Этот параметр соответствует опции --memory-swappiness к docker run.
Рассмотрите следующие моменты при использовании конфигурации подкачки на уровне контейнера.
- Для использования контейнерами необходимо включить и выделить область подкачки на экземпляре контейнера.
Примечание
По умолчанию в оптимизированных AMIs Amazon ECS не включена подкачка. Необходимо включить подкачку на экземпляре, чтобы использовать эту функцию. Дополнительная информация находится в разделе «Тома подкачки хранилища экземпляров» в руководстве пользователя Amazon EC2 для Linux-экземпляров или «Как выделить память для использования в качестве области подкачки в экземпляре Amazon EC2, используя файл подкачки?»- Параметры области подкачки поддерживаются только для определений задач, использующих ресурсы EC2.
- Если параметры
maxSwapиswappinessопущены из определения задачи, каждый контейнер имеет значение по умолчаниюswappiness, равное 60. Кроме того, общее использование подкачки ограничено удвоенным объемом резервирования памяти контейнера.
Примечание
Этот параметр не применим к задачам, выполняющимся на ресурсах Fargate. Не указывайте его для таких задач.logConfiguration -> (структура)
Спецификация конфигурации логов для контейнера.
Этот параметр соответствует LogConfig в разделе «Создание контейнера» в Docker Remote API и параметру --log-driver в команде docker run. По умолчанию контейнеры используют тот же драйвер логов, что и демони Docker. Однако контейнер может использовать другой драйвер логов, чем демони Docker, указав драйвер логов в определении контейнера. Для использования другого драйвера логов для контейнера система логов должна быть должным образом настроена на экземпляре контейнера (или на другом сервере логов для удаленных вариантов логов). Более подробную информацию об опциях различных поддерживаемых драйверов логов см. в документации Docker в разделе Настройка драйверов логов.
Примечание
Batch в настоящее время поддерживает подмножество драйверов логов, доступных для демона Docker (показано в типе данных LogConfiguration).Этот параметр требует версии Docker Remote API 1.18 или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"
Примечание
Агент контейнера Amazon ECS, работающий на экземпляре контейнера, должен зарегистрировать доступные на этом экземпляре драйверы логов с переменной средыECS_AVAILABLE_LOGGING_DRIVERS, прежде чем контейнеры на этом экземпляре смогут использовать эти параметры конфигурации логов. Дополнительную информацию см. в разделе Конфигурация агента контейнера Amazon ECS в Руководстве разработчика Amazon Elastic Container Service.logDriver -> (строка)
Драйвер логов для использования контейнером. Допустимые значения, перечисленные для этого параметра, являются драйверами логов, с которыми агент контейнера Amazon ECS может взаимодействовать по умолчанию.
Поддерживаемые драйверы логов: awslogs , fluentd , gelf , json-file , journald , logentries , syslog и splunk .
Примечание
Задачи, выполняемые на ресурсах Fargate, ограничены драйверами логов awslogs и splunk.
awsfirelens
Указывает драйвер логов firelens. Дополнительную информацию о настройке Firelens см. в разделе Отправка логов Amazon ECS в сервис Amazon Web Services или партнера Amazon Web Services в Руководстве разработчика Amazon Elastic Container Service.
Указывает драйвер логов Amazon CloudWatch Logs. Дополнительную информацию см. в разделе Использование драйвера логов awslogs в Руководстве пользователя Batch и драйвере логов Amazon CloudWatch Logs в документации Docker.
Указывает драйвер логов Fluentd. Дополнительную информацию, включая использование и параметры, см. в разделе Fluentd logging driver в документации Docker.
Указывает драйвер логов Graylog Extended Format (GELF). Дополнительную информацию, включая использование и параметры, см. в разделе Graylog Extended Format logging driver в документации Docker.
Указывает драйвер логов journald. Дополнительную информацию, включая использование и параметры, см. в разделе Journald logging driver в документации Docker.
Указывает драйвер логов JSON-файл. Дополнительную информацию, включая использование и параметры, см. в разделе JSON File logging driver в документации Docker.
Указывает драйвер логов Splunk. Дополнительную информацию, включая использование и параметры, см. в разделе Splunk logging driver в документации Docker.
Указывает драйвер логов syslog. Дополнительную информацию, включая использование и параметры, см. в разделе Syslog logging driver в документации Docker.
Примечание
Если у вас есть пользовательский драйвер, который не указан выше и с которым вы хотите работать с агентом контейнера Amazon ECS, вы можете вилочить проект агента контейнера Amazon ECS, доступный на GitHub, и настроить его для работы с этим драйвером. Мы рекомендуем вам отправлять запросы на вытягивание для изменений, которые вы хотите включить. Однако Amazon Web Services в настоящее время не поддерживает запуск измененных копий этого программного обеспечения.Этот параметр требует версии Docker Remote API 1.18 или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"
options -> (карта)
Параметры конфигурации для отправки драйверу логов. Этот параметр требует версии Docker Remote API 1.19 или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"
ключ -> (строка)
значение -> (строка)
secretOptions -> (список)
Секреты для передачи в конфигурацию логов. Дополнительную информацию см. в разделе Указание конфиденциальных данных в Руководстве пользователя Batch.
(структура)
Объект, представляющий секрет, который необходимо предоставить контейнеру. Секреты могут быть предоставлены контейнеру следующим образом:
- Для вставки конфиденциальных данных в ваши контейнеры в качестве переменных среды используйте параметр определения контейнера
secrets. - Для ссылки на конфиденциальную информацию в конфигурации логов контейнера используйте параметр определения контейнера
secretOptions.
Дополнительную информацию см. в разделе Указание конфиденциальных данных в Руководстве пользователя Batch.
name -> (строка)
valueFrom -> (строка)
Секрет для предоставления контейнеру. Допустимые значения — это полный Amazon Resource Name (ARN) секрета Secrets Manager или полный ARN параметра в Amazon Web Services Systems Manager Parameter Store.
Примечание
Если параметр Amazon Web Services Systems Manager Parameter Store существует в той же области, что и задача, которую вы запускаете, то можно использовать либо полный Amazon Resource Name (ARN), либо имя параметра. Если параметр существует в другой области, то должен быть указан полный ARN.secrets -> (список)
Секреты для контейнера. Дополнительную информацию см. в разделе Указание конфиденциальных данных в Руководстве пользователя Batch.
(структура)
Объект, представляющий секрет, который необходимо предоставить контейнеру. Секреты могут быть предоставлены контейнеру следующим образом:
- Для вставки конфиденциальных данных в ваши контейнеры в качестве переменных среды используйте параметр определения контейнера
secrets. - Для ссылки на конфиденциальную информацию в конфигурации логов контейнера используйте параметр определения контейнера
secretOptions.
Дополнительную информацию см. в разделе Указание конфиденциальных данных в Руководстве пользователя Batch.
name -> (строка)
valueFrom -> (строка)
Секрет для предоставления контейнеру. Допустимые значения — это полный Amazon Resource Name (ARN) секрета Secrets Manager или полный ARN параметра в Amazon Web Services Systems Manager Parameter Store.
Примечание
Если параметр Amazon Web Services Systems Manager Parameter Store существует в той же области, что и задача, которую вы запускаете, то можно использовать либо полный Amazon Resource Name (ARN), либо имя параметра. Если параметр существует в другой области, то должен быть указан полный ARN.networkConfiguration -> (структура)
Конфигурация сети для задач, выполняемых на ресурсах Fargate. Задачи, выполняемые на ресурсах Amazon EC2, не должны указывать этот параметр.
assignPublicIp -> (строка)
DISABLED».fargatePlatformConfiguration -> (структура)
Конфигурация платформы для задач, выполняемых на ресурсах Fargate. Задачи, выполняемые на ресурсах Amazon EC2, не должны указывать этот параметр.
platformVersion -> (строка)
LATEST. Это использует последнюю одобренную версию платформы Fargate для вычислительных ресурсов. Дополнительную информацию см. в разделе Версии платформы Fargate в Руководстве разработчика Amazon Elastic Container Service.enableExecuteCommand -> (логическое)
true, функциональность выполнения команд включена для всех контейнеров в задаче.ephemeralStorage -> (структура)
Количество временного хранилища для выделения для задачи. Этот параметр используется для увеличения общего объёма временного хранилища, сверх значения по умолчанию, для задач, размещённых на Fargate.
sizeInGiB -> (целое число)
21 GiB, максимальное — 200 GiB.runtimePlatform -> (структура)
Объект, представляющий архитектуру вычислительной среды для задач Batch в Fargate.
operatingSystemFamily -> (строка)
Операционная система вычислительной среды. Допустимые значения: LINUX (по умолчанию), WINDOWS_SERVER_2019_CORE, WINDOWS_SERVER_2019_FULL, WINDOWS_SERVER_2022_CORE и WINDOWS_SERVER_2022_FULL.
Примечание
Следующие параметры нельзя задавать для контейнеров Windows:linuxParameters, privileged, user, ulimits, readonlyRootFilesystem и efsVolumeConfiguration.Примечание
Планировщик Batch проверяет вычислительные среды, подключенные к очереди задач, прежде чем зарегистрировать определение задачи в Fargate. В этом случае очередь задач — это место, куда подается задача. Если задача требует контейнера Windows, и первая вычислительная среда —LINUX, вычислительная среда пропускается, и проверяется следующая среда, пока не будет найдена среда, поддерживающая Windows.Примечание
Fargate Spot не поддерживается дляARM64 и контейнеров на базе Windows в Fargate. Очередь задач будет заблокирована, если задача Fargate ARM64 или Windows подается в очередь задач, содержащую только вычислительные среды Fargate Spot. Однако вы можете подключить как FARGATE, так и FARGATE_SPOT вычислительные среды к одной очереди задач.cpuArchitecture -> (строка)
Архитектура vCPU. Значение по умолчанию — X86_64. Допустимые значения — X86_64 и ARM64.
Примечание
Для контейнеров Windows этот параметр должен быть установлен вX86_64.Примечание
Fargate Spot не поддерживается дляARM64 и контейнеров на базе Windows в Fargate. Очередь задач будет заблокирована, если задача Fargate ARM64 или Windows подается в очередь задач, содержащую только вычислительные среды Fargate Spot. Однако вы можете подключить как FARGATE, так и FARGATE_SPOT вычислительные среды к одной очереди задач.repositoryCredentials -> (структура)
Учетные данные аутентификации частного репозитория для использования.
credentialsParameter -> (строка)
Синтаксис JSON:
{
"image": "string",
"vcpus": integer,
"memory": integer,
"command": ["string", ...],
"jobRoleArn": "string",
"executionRoleArn": "string",
"volumes": [
{
"host": {
"sourcePath": "string"
},
"name": "string",
"efsVolumeConfiguration": {
"fileSystemId": "string",
"rootDirectory": "string",
"transitEncryption": "ENABLED"|"DISABLED",
"transitEncryptionPort": integer,
"authorizationConfig": {
"accessPointId": "string",
"iam": "ENABLED"|"DISABLED"
}
}
}
...
],
"environment": [
{
"name": "string",
"value": "string"
}
...
],
"mountPoints": [
{
"containerPath": "string",
"readOnly": true|false,
"sourceVolume": "string"
}
...
],
"readonlyRootFilesystem": true|false,
"privileged": true|false,
"ulimits": [
{
"hardLimit": integer,
"name": "string",
"softLimit": integer
}
...
],
"user": "string",
"instanceType": "string",
"resourceRequirements": [
{
"value": "string",
"type": "GPU"|"VCPU"|"MEMORY"
}
...
],
"linuxParameters": {
"devices": [
{
"hostPath": "string",
"containerPath": "string",
"permissions": ["READ"|"WRITE"|"MKNOD", ...]
}
...
],
"initProcessEnabled": true|false,
"sharedMemorySize": integer,
"tmpfs": [
{
"containerPath": "string",
"size": integer,
"mountOptions": ["string", ...]
}
...
],
"maxSwap": integer,
"swappiness": integer
},
"logConfiguration": {
"logDriver": "json-file"|"syslog"|"journald"|"gelf"|"fluentd"|"awslogs"|"splunk"|"awsfirelens",
"options": {"string": "string"
...},
"secretOptions": [
{
"name": "string",
"valueFrom": "string"
}
...
]
},
"secrets": [
{
"name": "string",
"valueFrom": "string"
}
...
],
"networkConfiguration": {
"assignPublicIp": "ENABLED"|"DISABLED"
},
"fargatePlatformConfiguration": {
"platformVersion": "string"
},
"enableExecuteCommand": true|false,
"ephemeralStorage": {
"sizeInGiB": integer
},
"runtimePlatform": {
"operatingSystemFamily": "string",
"cpuArchitecture": "string"
},
"repositoryCredentials": {
"credentialsParameter": "string"
}
}
--node-properties (структура)
Объект со свойствами, специфичными для задач параллельной обработки с несколькими узлами. Если вы указываете свойства узлов для задачи, она становится задачей параллельной обработки с несколькими узлами. Дополнительная информация находится в руководстве пользователя Batch (Multi-node Parallel Jobs).
Примечание
Если задача выполняется на ресурсах Fargate, то вы не должны указыватьnodeProperties; используйте containerProperties вместо этого.Примечание
Если задача выполняется на ресурсах Amazon EKS, то вы не должны указыватьnodeProperties.numNodes -> (целое число)
mainNode -> (целое число)
nodeRangeProperties -> (список)
Список диапазонов узлов и их свойств, связанных с задачей параллельной обработки с несколькими узлами.
(структура)
Это объект, представляющий свойства диапазона узлов для задачи параллельной обработки с несколькими узлами.
targetNodes -> (строка)
0:3 указывает узлы с индексами от 0 до 3. Если начальное значение диапазона опущено (:n), то используется 0 для начала диапазона. Если конечное значение диапазона опущено (n:), то используется наибольший возможный индекс узла для окончания диапазона. Суммарные диапазоны узлов должны охватывать все узлы (0:n). Можно вкладывать диапазоны узлов (например, 0:10 и 4:5). В этом случае свойства диапазона 4:5 перезаписывают свойства диапазона 0:10.container -> (структура)
Подробные данные для диапазона узлов.
image -> (строка)
Обязательное поле. Изображение, используемое для запуска контейнера. Эта строка передаётся напрямую демону Docker. Изображения из реестра Docker Hub доступны по умолчанию. Другие репозитории указываются с помощью `` адрес-репозитория /изображение :метка ``. Длина может составлять 255 символов. Может содержать прописные и строчные буквы, цифры, дефисы (-), нижние подчеркивания (_), двоеточия (:), точки (.), слэши (/) и диезы (#). Этот параметр соответствует Image в разделе «Создание контейнера» в Docker Remote API и параметру IMAGE команды docker run.
Примечание
Архитектура Docker-изображения должна соответствовать архитектуре процессора вычислительных ресурсов, на которых они планируются. Например, Docker-изображения на основе ARM могут работать только на вычислительных ресурсах на основе ARM.- Изображения в общедоступных репозиториях Amazon ECR используют полные
registry/repository[:tag]илиregistry/repository[@digest]соглашения об именовании. Например, ``public.ecr.aws/имя_регистра /мое_веб-приложение :последняя ``. - Изображения в репозиториях Amazon ECR используют полный URI реестра и репозитория (например,
123456789012.dkr.ecr.<region-name>.amazonaws.com/<repository-name>). - Изображения в официальных репозиториях на Docker Hub используют одно имя (например,
ubuntuилиmongo). - Изображения в других репозиториях на Docker Hub квалифицируются по имени организации (например,
amazon/amazon-ecs-agent). - Изображения в других онлайн-репозиториях дополнительно квалифицируются по имени домена (например,
quay.io/assemblyline/ubuntu).
vcpus -> (целое число)
Этот параметр устарел. Используйте resourceRequirements для указания требований к vCPU для определения задания. Он не поддерживается для заданий, выполняемых на ресурсах Fargate. Для заданий, выполняемых на ресурсах Amazon EC2, он определяет количество vCPU, резервируемых для задания.
Каждая vCPU эквивалентна 1024 долям процессора. Этот параметр соответствует CpuShares в разделе «Создание контейнера» в Docker Remote API и параметру --cpu-shares команды docker run. Количество vCPU должно быть указано, но может быть указано в нескольких местах. Вы должны указать его по меньшей мере один раз для каждого узла.
memory -> (целое число)
resourceRequirements для указания требований к памяти для определения задания. Он не поддерживается для заданий, выполняемых на ресурсах Fargate. Для заданий, выполняемых на ресурсах Amazon EC2, он указывает жёсткий лимит памяти (в МБ) для контейнера. Если контейнер пытается превысить заданное число, он завершается. Для задания с этим параметром необходимо указать по меньшей мере 4 МБ памяти. Жёсткий лимит памяти может быть указан в нескольких местах. Он должен быть указан для каждого узла хотя бы один раз.command -> (список)
Команда, передаваемая контейнеру. Этот параметр соответствует Cmd в разделе «Создание контейнера» в Docker Remote API и параметру COMMAND команды docker run. Для получения дополнительной информации см. https://docs.docker.com/engine/reference/builder/#cmd.
(строка)
jobRoleArn -> (строка)
executionRoleArn -> (строка)
volumes -> (список)
Список томов данных, используемых в задании.
(структура)
Том данных, используемый в свойствах контейнера задания.
host -> (структура)
Содержание параметра host определяет, сохраняется ли ваш том данных в экземпляре хост-контейнера и где он хранится. Если параметр host пустой, то демон Docker назначает путь хоста для вашего тома данных. Однако данные не гарантированно сохранятся после остановки контейнеров, связанных с ним.
Примечание
Этот параметр не применим к заданиям, выполняемым на ресурсах Fargate, и его не следует предоставлять.sourcePath -> (строка)
Путь на хост-экземпляре контейнера, который предоставляется контейнеру. Если этот параметр пустой, то демон Docker назначил путь хоста для вас. Если этот параметр содержит местоположение файла, то том данных сохраняется по указанному расположению на хост-экземпляре контейнера до тех пор, пока вы его не удалите вручную. Если расположение исходного пути не существует на хост-экземпляре контейнера, демон Docker его создаёт. Если расположение существует, содержимое папки исходного пути экспортируется.
Примечание
Этот параметр не применим к заданиям, выполняемым на ресурсах Fargate. Не предоставляйте его для таких заданий.name -> (строка)
sourceVolume определения контейнера mountPoints.efsVolumeConfiguration -> (структура)
Этот параметр указывается при использовании файловой системы Amazon Elastic File System для хранения заданий. Задания, выполняемые на ресурсах Fargate, должны указать platformVersion объёмом по меньшей мере 1.4.0.
fileSystemId -> (строка)
rootDirectory -> (строка)
Директория внутри файловой системы Amazon EFS, которая будет смонтирована в качестве корневой директории внутри хоста. Если этот параметр опущен, используется корень тома Amazon EFS. Указание / имеет тот же эффект, что и опускание этого параметра. Максимальная длина — 4096 символов.
Предупреждение
Если вauthorizationConfig указан доступный EFS, то параметр rootDirectory должен либо быть опущен, либо установлен в значение /, что обеспечивает соблюдение пути, установленного в точке доступа Amazon EFS.transitEncryption -> (строка)
DISABLED. Для получения дополнительной информации см. Шифрование данных при передаче в руководстве Amazon Elastic File System User Guide.transitEncryptionPort -> (целое число)
authorizationConfig -> (структура)
Подробные данные о конфигурации авторизации для файловой системы Amazon EFS.
accessPointId -> (строка)
EFSVolumeConfiguration, должно быть либо опущено, либо установлено в /, что обеспечивает соблюдение пути, установленного в точке доступа EFS. Если используется точка доступа, шифрование при передаче должно быть включено в EFSVolumeConfiguration. Для получения дополнительной информации см. Работа с точками доступа Amazon EFS в руководстве Amazon Elastic File System User Guide.iam -> (строка)
EFSVolumeConfiguration. Если этот параметр опущен, используется значение по умолчанию DISABLED. Для получения дополнительной информации см. Использование точек доступа Amazon EFS в руководстве Batch User Guide. Авторизация EFS IAM требует, чтобы TransitEncryption была ENABLED и что указана JobRoleArn.environment -> (список)
Переменные среды, которые необходимо передать контейнеру. Этот параметр соответствует Env в разделе «Создание контейнера» в Docker Remote API и параметру --env команды docker run.
Предупреждение
Не рекомендуется использовать текстовые переменные среды для конфиденциальной информации, такой как данные учетных данных.Примечание
Переменные среды не могут начинаться с «AWS_BATCH». Это соглашение об именовании зарезервировано для переменных, которые устанавливает Batch.(структура)
Объект пары «ключ-значение».
name -> (строка)
value -> (строка)
mountPoints -> (список)
Точки монтирования томов данных в вашем контейнере. Этот параметр соответствует Volumes в разделе «Создание контейнера» в Docker Remote API и параметру --volume команды docker run.
(структура)
Подробная информация о точке монтирования Docker тома, используемого в свойствах контейнера задания. Этот параметр соответствует Volumes в разделе «Создание контейнера» в Docker Remote API и параметру --volume команды docker run.
containerPath -> (строка)
readOnly -> (булево)
true, контейнер имеет доступ в режиме только для чтения к тому. В противном случае контейнер может записывать в том. Значение по умолчанию — false.sourceVolume -> (строка)
readonlyRootFilesystem -> (булево)
ReadonlyRootfs в разделе «Создание контейнера» в Docker Remote API и параметру --read-only команды docker run.privileged -> (булево)
Если этот параметр равен true, контейнеру предоставляются расширенные права на хост-экземпляре контейнера (аналогично пользователю root). Этот параметр соответствует Privileged в разделе «Создание контейнера» в Docker Remote API и параметру --privileged команды docker run. Значение по умолчанию — false.
Примечание
Этот параметр не применим к заданиям, выполняемым на ресурсах Fargate, и его не следует предоставлять или указывать как false.ulimits -> (список)
Список ulimits для установки в контейнере. Этот параметр сопоставляется с Ulimits в разделе Создание контейнера в Docker Remote API и опцией --ulimit для docker run.
Примечание
Этот параметр неприменим к заданиям, выполняемым на ресурсах Fargate, и его не следует указывать.(структура)
Параметры ulimit для передачи в контейнер. Дополнительные сведения см. в разделе Ulimit.
Примечание
Этот объект неприменим к заданиям, выполняемым на ресурсах Fargate.hardLimit -> (integer)
ulimit.name -> (string)
type ulimit. Допустимые значения: core | cpu | data | fsize | locks | memlock | msgqueue | nice | nofile | nproc | rss | rtprio | rttime | sigpending | stack .softLimit -> (integer)
ulimit.user -> (string)
User в разделе Создание контейнера в Docker Remote API и опцией --user для docker run.instanceType -> (string)
Тип экземпляра для использования в параллельном задании с несколькими узлами. Все группы узлов в параллельном задании с несколькими узлами должны использовать один и тот же тип экземпляра.
Примечание
Этот параметр неприменим к одноузловым контейнерным заданиям или заданиям, выполняемым на ресурсах Fargate, и его не следует указывать.resourceRequirements -> (list)
Тип и объем ресурсов, выделяемых контейнеру. Поддерживаемые ресурсы включают GPU, MEMORY и VCPU.
(структура)
Тип и объем ресурса, выделяемого контейнеру. Поддерживаемые ресурсы включают GPU, MEMORY и VCPU.
value -> (string)
Количество указанного ресурса, резервируемого для контейнера. Значения варьируются в зависимости от указанного type.
Количество физических графических процессоров для резервирования для контейнера. Убедитесь, что количество графических процессоров, зарезервированных для всех контейнеров в задании, не превышает количество доступных графических процессоров на вычислительном ресурсе, на котором запускается задание.
Примечание
Графические процессоры недоступны для заданий, выполняемых на ресурсах Fargate.
type=“MEMORY”
Жесткий лимит памяти (в МиБ), представленный контейнеру. Этот параметр поддерживается для заданий, выполняемых на ресурсах Amazon EC2. Если ваш контейнер пытается превысить указанный объем памяти, контейнер завершается. Этот параметр сопоставляется с Memory в разделе Создание контейнера в Docker Remote API и опцией --memory для docker run. Необходимо указать не менее 4 МиБ памяти для задания. Это требуется, но может быть указано в нескольких местах для параллельных заданий с несколькими узлами (MNP). Он должен быть указан для каждого узла как минимум один раз. Этот параметр сопоставляется с Memory в разделе Создание контейнера в Docker Remote API и опцией --memory для docker run.
Примечание
Если вы пытаетесь максимизировать использование ресурсов, предоставляя своим заданиям как можно больше памяти для определенного типа экземпляра, см. раздел Управление памятью в Руководстве пользователя Batch.Для заданий, выполняемых на ресурсах Fargate, value — это жесткий лимит (в МиБ), и он должен соответствовать одному из поддерживаемых значений, а значения VCPU должны быть одним из значений, поддерживаемых для этого значения памяти.
VCPU = 0.25
VCPU = 0.25 или 0.5
VCPU = 0.25, 0.5 или 1
VCPU = 0.5 или 1
VCPU = 0.5, 1 или 2
VCPU = 1 или 2
VCPU = 1, 2 или 4
VCPU = 2 или 4
VCPU = 2, 4 или 8
VCPU = 4
VCPU = 4 или 8
VCPU = 8
VCPU = 8 или 16
VCPU = 16
Количество виртуальных ЦП, зарезервированных для контейнера. Этот параметр сопоставляется с CpuShares в разделе Создание контейнера в Docker Remote API и опцией --cpu-shares для docker run. Каждый виртуальный ЦП эквивалентен 1024 долям ЦП. Для ресурсов Amazon EC2 необходимо указать как минимум один виртуальный ЦП. Это требуется, но может быть указано в нескольких местах; он должен быть указан для каждого узла как минимум один раз.
По умолчанию для квоты ресурсов виртуального ЦП Fargate по требованию установлено значение 6 виртуальных ЦП. Дополнительные сведения о квотах Fargate см. в разделе Квоты Fargate в Общем справочнике Amazon Web Services.
Для заданий, выполняемых на ресурсах Fargate, value должно соответствовать одному из поддерживаемых значений, а значения MEMORY должны быть одним из значений, поддерживаемых для этого значения VCPU. Поддерживаемые значения: 0,25, 0,5, 1, 2, 4, 8 и 16
MEMORY = 512, 1024 или 2048
MEMORY = 1024, 2048, 3072 или 4096
MEMORY = 2048, 3072, 4096, 5120, 6144, 7168 или 8192
MEMORY = 4096, 5120, 6144, 7168, 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360 или 16384
MEMORY = 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, 16384, 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696 или 30720
MEMORY = 16384, 20480, 24576, 28672, 32768, 36864, 40960, 45056, 49152, 53248, 57344 или 61440
MEMORY = 32768, 40960, 49152, 57344, 65536, 73728, 81920, 90112, 98304, 106496, 114688 или 122880
type -> (string)
GPU, MEMORY и VCPU.linuxParameters -> (structure)
Модификации, специфичные для Linux, которые применяются к контейнеру, такие как детали для сопоставления устройств.
devices -> (список)
Любое из устройств хоста, которое нужно экспонировать в контейнере. Этот параметр соответствует параметру Devices в разделе «Создание контейнера» в Docker Remote API и параметру --device в команде docker run.
Примечание
Этот параметр не применим к задачам, выполняемым на ресурсах Fargate. Не предоставляйте его для таких задач.(структура)
Объект, представляющий устройство хоста контейнера.
Примечание
Этот объект не применим к задачам, выполняемым на ресурсах Fargate, и его не следует предоставлять.hostPath -> (строка)
containerPath -> (строка)
hostPath.permissions -> (список)
Явные разрешения, предоставляемые контейнеру для устройства. По умолчанию контейнер имеет разрешения read, write и mknod для устройства.
(строка)
initProcessEnabled -> (булево)
init внутри контейнера, который перенаправляет сигналы и собирает процессы. Этот параметр соответствует параметру --init в команде docker run. Этот параметр требует версии Docker Remote API 1.25 или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в ваш экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"
sharedMemorySize -> (целое число)
Значение размера (в МБ) тома /dev/shm. Этот параметр соответствует параметру --shm-size в команде docker run.
Примечание
Этот параметр не применим к задачам, выполняемым на ресурсах Fargate. Не предоставляйте его для таких задач.tmpfs -> (список)
Путь контейнера, параметры монтирования и размер (в МБ) монтирования tmpfs. Этот параметр соответствует параметру --tmpfs в команде docker run.
Примечание
Этот параметр не применим к задачам, выполняемым на ресурсах Fargate. Не предоставляйте этот параметр для этого типа ресурсов.(структура)
Путь контейнера, параметры монтирования и размер монтирования tmpfs.
Примечание
Этот объект не применим к задачам, выполняемым на ресурсах Fargate.containerPath -> (строка)
tmpfs.size -> (целое число)
tmpfs.mountOptions -> (список)
Список параметров монтирования тома tmpfs.
Допустимые значения: “defaults “ | “ro “ | “rw “ | “suid “ | “nosuid “ | “dev “ | “nodev “ | “exec “ | “noexec “ | “sync “ | “async “ | “dirsync “ | “remount “ | “mand “ | “nomand “ | “atime “ | “noatime “ | “diratime “ | “nodiratime “ | “bind “ | “rbind" | "unbindable" | "runbindable" | "private" | "rprivate" | "shared" | "rshared" | "slave" | "rslave" | "relatime “ | “norelatime “ | “strictatime “ | “nostrictatime “ | “mode “ | “uid “ | “gid “ | “nr_inodes “ | “nr_blocks “ | “mpol “
(строка)
maxSwap -> (целое число)
Общий объем памяти подкачки (в МБ), которую может использовать контейнер. Этот параметр преобразуется в параметр --memory-swap в команде docker run, где значение равно сумме памяти контейнера плюс значение maxSwap. Для получения дополнительной информации см. ` --memory-swap подробности <https://docs.docker.com/config/containers/resource_constraints/#–memory-swap-details>`__ в документации Docker.
Если значение maxSwap установлено как 0, контейнер не использует подкачку. Допустимые значения — 0 или любое положительное целое число. Если параметр maxSwap опущен, контейнер не использует настройки подкачки для экземпляра контейнера, на котором он работает. Значение maxSwap должно быть установлено для использования параметра swappiness.
Примечание
Этот параметр не применим к задачам, выполняемым на ресурсах Fargate. Не предоставляйте его для таких задач.swappiness -> (целое число)
Этот параметр можно использовать для настройки поведения подкачки памяти контейнера. Значение swappiness, равное 0, означает, что подкачка происходит только при необходимости. Значение swappiness, равное 100, означает, что страницы активно подкачиваются. Допустимые значения — целые числа от 0 до 100. Если параметр swappiness не указан, используется значение по умолчанию 60. Если для параметра maxSwap не указано значение, этот параметр игнорируется. Если maxSwap установлено в 0, контейнер не использует подкачку. Этот параметр соответствует параметру --memory-swappiness в команде docker run.
Учитывайте следующее, когда вы используете конфигурацию подкачки на уровне контейнера.
- Для использования подкачки контейнером должна быть включена и выделена область памяти подкачки на экземпляре контейнера.
Примечание
По умолчанию в оптимизированных образах Amazon ECS нет поддержки подкачки. Необходимо включить подкачку на экземпляре для использования этой функции. Для получения дополнительной информации см. Разделы Instance store swap volumes в Руководстве пользователя Amazon EC2 по Linux-экземплярам или Как выделить память для использования в качестве пространства подкачки в экземпляре Amazon EC2 с помощью файла подкачки?- Параметры подкачки поддерживаются только для определений задач, использующих ресурсы EC2.
- Если параметры
maxSwapиswappinessопущены из определения задачи, каждый контейнер имеет значениеswappinessпо умолчанию, равное 60. Кроме того, общее использование подкачки ограничено двойным значением выделенной памяти контейнера.
Примечание
Этот параметр не применим к задачам, выполняемым на ресурсах Fargate. Не предоставляйте его для таких задач.logConfiguration -> (структура)
Спецификация конфигурации журнала для контейнера.
Этот параметр соответствует LogConfig в разделе «Создание контейнера» в API Docker Remote и параметру --log-driver в команде docker run. По умолчанию контейнеры используют тот же драйвер ведения журнала, что и демон Docker. Однако контейнер может использовать другой драйвер ведения журнала, отличный от демона Docker, указав драйвер журнала в определении контейнера. Для использования другого драйвера ведения журнала для контейнера необходимо правильно настроить систему журналов на экземпляре контейнера (или на другом сервере журналов для удалённых вариантов ведения журнала). Дополнительную информацию об опциях различных поддерживаемых драйверов журналов см. в документации Docker в разделе «Настройка драйверов ведения журнала».
Примечание
Batch в настоящее время поддерживает подмножество драйверов ведения журнала, доступных для демона Docker (показано в типе данных LogConfiguration).Этот параметр требует версию Docker Remote API 1.18 или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"
Примечание
Агент контейнера Amazon ECS, работающий на экземпляре контейнера, должен зарегистрировать доступные на этом экземпляре драйверы ведения журнала с переменной средыECS_AVAILABLE_LOGGING_DRIVERS, прежде чем контейнеры на этом экземпляре смогут использовать эти параметры конфигурации журнала. Дополнительную информацию см. в руководстве по настройке агента контейнеров Amazon ECS в Руководстве разработчика Amazon Elastic Container Service.logDriver -> (строка)
Драйвер ведения журнала для использования в контейнере. Допустимые значения, перечисленные для этого параметра, — это драйверы журналов, с которыми агент контейнеров Amazon ECS может взаимодействовать по умолчанию.
Поддерживаемые драйверы журналов — awslogs , fluentd , gelf , json-file , journald , logentries , syslog и splunk .
Примечание
Задачи, выполняемые на ресурсах Fargate, ограничены драйверами журналов awslogs и splunk.
awsfirelens
Указывает драйвер ведения журнала firelens. Дополнительную информацию о настройке Firelens см. в Руководстве разработчика Amazon Elastic Container Service в разделе «Отправка журналов Amazon ECS в службу Amazon Web Services или партнёрскую службу Amazon Web Services».
Указывает драйвер ведения журнала Amazon CloudWatch Logs. Дополнительную информацию см. в Руководстве пользователя Batch в разделе «Использование драйвера журнала awslogs» и в документации Docker в разделе «Драйвер ведения журнала Amazon CloudWatch Logs».
Указывает драйвер ведения журнала Fluentd. Дополнительную информацию, включая использование и параметры, см. в документации Docker в разделе «Драйвер ведения журнала Fluentd».
Указывает драйвер ведения журнала Graylog Extended Format (GELF). Дополнительную информацию, включая использование и параметры, см. в документации Docker в разделе «Драйвер ведения журнала Graylog Extended Format».
Указывает драйвер ведения журнала journald. Дополнительную информацию, включая использование и параметры, см. в документации Docker в разделе «Драйвер ведения журнала journald».
Указывает драйвер ведения журнала JSON-файл. Дополнительную информацию, включая использование и параметры, см. в документации Docker в разделе «Драйвер ведения журнала JSON-файл».
Указывает драйвер ведения журнала Splunk. Дополнительную информацию, включая использование и параметры, см. в документации Docker в разделе «Драйвер ведения журнала Splunk».
Указывает драйвер ведения журнала syslog. Дополнительную информацию, включая использование и параметры, см. в документации Docker в разделе «Драйвер ведения журнала syslog».
Примечание
Если у вас есть пользовательский драйвер, не перечисленный выше, с которым вы хотите работать с агентом контейнеров Amazon ECS, вы можете создать форк проекта агента контейнеров Amazon ECS, доступного на GitHub, и настроить его для работы с этим драйвером. Мы рекомендуем отправлять запросы на включение изменений. Однако Amazon Web Services в настоящее время не поддерживает запуск изменённых копий этого программного обеспечения.Этот параметр требует версию Docker Remote API 1.18 или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"
options -> (массив)
Параметры конфигурации для отправки драйверу журнала. Этот параметр требует версию Docker Remote API 1.19 или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"
key -> (строка)
value -> (строка)
secretOptions -> (список)
Секреты для передачи в конфигурацию журнала. Дополнительную информацию см. в Руководстве пользователя Batch в разделе «Указание конфиденциальных данных».
(структура)
Объект, представляющий секрет для экспонирования вашему контейнеру. Секреты могут быть экспонированы контейнеру следующим образом:
- Для вставки конфиденциальных данных в контейнеры в качестве переменных окружения используйте параметр определения контейнера
secrets. - Для ссылки на конфиденциальную информацию в конфигурации журнала контейнера используйте параметр определения контейнера
secretOptions.
Дополнительную информацию см. в Руководстве пользователя Batch в разделе «Указание конфиденциальных данных».
name -> (строка)
valueFrom -> (строка)
Секрет для экспонирования контейнеру. Поддерживаемые значения — это полный Amazon Resource Name (ARN) секрета Secrets Manager или полный ARN параметра в Amazon Web Services Systems Manager Parameter Store.
Примечание
Если параметр Amazon Web Services Systems Manager Parameter Store существует в той же области, что и задача, которую вы запускаете, то можно использовать как полный Amazon Resource Name (ARN), так и имя параметра. Если параметр существует в другой области, то необходимо указать полный ARN.secrets -> (список)
Секреты для контейнера. Дополнительную информацию см. в Руководстве пользователя Batch в разделе «Указание конфиденциальных данных».
(структура)
Объект, представляющий секрет для экспонирования вашему контейнеру. Секреты могут быть экспонированы контейнеру следующим образом:
- Для вставки конфиденциальных данных в контейнеры в качестве переменных окружения используйте параметр определения контейнера
secrets. - Для ссылки на конфиденциальную информацию в конфигурации журнала контейнера используйте параметр определения контейнера
secretOptions.
Дополнительную информацию см. в Руководстве пользователя Batch в разделе «Указание конфиденциальных данных».
name -> (строка)
valueFrom -> (строка)
Секрет для экспонирования контейнеру. Поддерживаемые значения — это полный Amazon Resource Name (ARN) секрета Secrets Manager или полный ARN параметра в Amazon Web Services Systems Manager Parameter Store.
Примечание
Если параметр Amazon Web Services Systems Manager Parameter Store существует в той же области, что и задача, которую вы запускаете, то можно использовать как полный Amazon Resource Name (ARN), так и имя параметра. Если параметр существует в другой области, то необходимо указать полный ARN.networkConfiguration -> (структура)
Конфигурация сети для задач, выполняемых на ресурсах Fargate. Задачи, выполняемые на ресурсах Amazon EC2, не должны указывать этот параметр.
assignPublicIp -> (строка)
DISABLED».fargatePlatformConfiguration -> (структура)
Конфигурация платформы для задач, выполняемых на ресурсах Fargate. Задачи, выполняемые на ресурсах Amazon EC2, не должны указывать этот параметр.
platformVersion -> (строка)
LATEST. Это использует последнюю утверждённую версию платформы Fargate для вычислительных ресурсов. Дополнительную информацию см. в Руководстве разработчика Amazon Elastic Container Service в разделе «Версии платформы Fargate».enableExecuteCommand -> (булево)
true, функция выполнения команд включена для всех контейнеров в задаче.ephemeralStorage -> (структура)
Объём временного хранилища для выделения для задачи. Этот параметр используется для расширения общего объёма временного хранилища, сверх значения по умолчанию, для задач, размещённых на Fargate.
sizeInGiB -> (целое число)
21 GiB, а максимальное — 200 GiB.runtimePlatform -> (структура)
Объект, представляющий архитектуру вычислительной среды для пакетных задач в Fargate.
operatingSystemFamily -> (строка)
Операционная система для вычислительной среды. Допустимые значения: LINUX (по умолчанию), WINDOWS_SERVER_2019_CORE , WINDOWS_SERVER_2019_FULL , WINDOWS_SERVER_2022_CORE и WINDOWS_SERVER_2022_FULL .
Примечание
Следующие параметры нельзя задавать для контейнеров Windows:linuxParameters , privileged , user , ulimits , readonlyRootFilesystem и efsVolumeConfiguration .Примечание
Планировщик пакетных задач проверяет вычислительные среды, подключенные к очереди задач, перед регистрацией определения задачи в Fargate. В этом случае очередь задач — это место, где подается задача. Если задача требует контейнер Windows, и первая вычислительная среда —LINUX , то вычислительная среда пропускается, и проверяется следующая, пока не будет найдена вычислительная среда на базе Windows.Примечание
Fargate Spot не поддерживается дляARM64 и контейнеров на базе Windows в Fargate. Очередь задач заблокируется, если задача Fargate ARM64 или задача Windows отправлена в очередь задач с только вычислительными средами Fargate Spot. Однако вы можете подключить как FARGATE , так и FARGATE_SPOT вычислительные среды к одной очереди задач.cpuArchitecture -> (строка)
Архитектура vCPU. Значение по умолчанию — X86_64 . Допустимые значения — X86_64 и ARM64 .
Примечание
Для контейнеров Windows этот параметр должен быть установлен в значениеX86_64 .Примечание
Fargate Spot не поддерживается дляARM64 и контейнеров на базе Windows в Fargate. Очередь задач заблокируется, если задача Fargate ARM64 или задача Windows отправлена в очередь задач с только вычислительными средами Fargate Spot. Однако вы можете подключить как FARGATE , так и FARGATE_SPOT вычислительные среды к одной очереди задач.repositoryCredentials -> (структура)
Учетные данные для аутентификации частного репозитория.
credentialsParameter -> (строка)
instanceTypes -> (список)
Типы экземпляров базовой инфраструктуры узла для многоузловой параллельной задачи.
Примечание
Этот параметр не применим к задачам, выполняющимся на ресурсах Fargate.
Кроме того, этот список объектов в настоящее время ограничен одним элементом.
(строка)
ecsProperties -> (структура)
Объект, представляющий свойства диапазона узлов для многоузловой параллельной задачи.
taskProperties -> (список)
Объект, содержащий свойства определения задачи Amazon ECS для задачи.
Примечание
В настоящее время этот объект ограничен одним элементом задачи. Однако элемент задачи может запускать до 10 контейнеров.(структура)
Свойства определения задачи, описывающие определения контейнера и тома задачи Amazon ECS. Вы можете указать, какие образы Docker использовать, требуемые ресурсы и другие параметры, связанные с запуском определения задачи через сервис или задачу Amazon ECS.
containers -> (список)
Список контейнеров.
(структура)
Свойства контейнера используются для определений задач на основе Amazon ECS. Эти свойства описывают контейнер, запущенный в рамках задачи.
command -> (список)
Команда, передаваемая контейнеру. Этот параметр соответствует Cmd в разделе «Создание контейнера» в Docker Remote API и параметру COMMAND к docker run . Дополнительную информацию см. в справке Dockerfile: CMD .
(строка)
dependsOn -> (список)
Список контейнеров, от которых зависит данный контейнер.
(структура)
Список контейнеров, от которых зависит данная задача.
containerName -> (строка)
condition -> (строка)
Условие зависимости контейнера. Доступные условия и их поведение:
-
START— Это условие моделирует поведение ссылок и томов на сегодняшний день. Оно проверяет, что зависимый контейнер запущен перед запуском других контейнеров. -
COMPLETE— Это условие проверяет, что зависимый контейнер выполнил свою работу (вышел) перед запуском других контейнеров. Это может быть полезно для необязательных контейнеров, которые выполняют скрипт и затем выходят. Это условие нельзя задать для основного контейнера. -
SUCCESS— Это условие такое же, какCOMPLETE, но также требует, чтобы контейнер завершил работу со статусом 0. Это условие нельзя задать для основного контейнера.
environment -> (список)
Переменные среды, передаваемые контейнеру. Этот параметр соответствует Env в разделе «Создание контейнера» в Docker Remote API и параметру --env к docker run .
Предупреждение
Не рекомендуется использовать текстовые переменные среды для конфиденциальной информации, такой как данные учетных данных.Примечание
Имена переменных среды не могут начинаться сAWS_BATCH . Эта схема именования зарезервирована для переменных, которые устанавливает Batch.(структура)
Объект пары ключ-значение.
name -> (строка)
value -> (строка)
essential -> (булево)
Если параметр essential контейнера установлен в значение true , и этот контейнер завершится сбоем или остановится по какой-либо причине, все остальные контейнеры, входящие в состав задачи, остановятся. Если параметр essential контейнера установлен в значение false, его сбой не повлияет на остальные контейнеры в задаче. Если этот параметр опущен, контейнер считается основным.
Все задачи должны иметь по крайней мере один основной контейнер. Если у вас приложение, состоящее из нескольких контейнеров, сгруппируйте контейнеры, используемые для одной цели, в компоненты и разделите разные компоненты на несколько определений задач. Дополнительную информацию см. в разделе «Архитектура приложения» в руководстве разработчика Amazon Elastic Container Service.
firelensConfiguration -> (структура)
Настройка FireLens для контейнера. Используется для указания и настройки маршрутизатора логов для журналов контейнеров. Дополнительную информацию см. в разделе «Настройка маршрутизации логов» в руководстве разработчика Amazon Elastic Container Service.
type -> (строка)
fluentd или fluentbit .options -> (отображение)
Параметры для настройки маршрутизатора логов. Это необязательное поле, которое можно использовать для указания пользовательского конфигурационного файла или добавления дополнительной метаданных, таких как сведения о задаче, определении задачи, кластере и экземпляре контейнера в событие журнала. Если указано, синтаксис должен быть "options":{"enable-ecs-log-metadata":"true|false","config-file-type:"s3|file","config-file-value":"arn:aws:s3:::mybucket/fluent.conf|filepath"} . Дополнительную информацию см. в руководстве разработчика Amazon Elastic Container Service в разделе «Создание определения задачи, использующей настройку FireLens».
key -> (строка)
value -> (строка)
image -> (строка)
repository-url/image:tag или repository-url/image@digest . Допускается до 255 символов (заглавные и строчные буквы, цифры, дефисы, подчеркивания, двоеточия, точки, слеши и знаки номера). Этот параметр соответствует Image в разделе «Создание контейнера» в Docker Remote API и параметру IMAGE параметра ` docker run https://docs.docker.com/engine/reference/run/#security-configuration`__ .linuxParameters -> (структура)
Модификации, специфичные для Linux, которые применяются к контейнеру, такие как возможности ядра Linux. Для получения дополнительной информации см. KernelCapabilities .
devices -> (список)
Любой из устройств хоста, которые необходимо предоставить контейнеру. Этот параметр сопоставляется с Devices в разделе «Создание контейнера» в Docker Remote API и параметром --device команды docker run .
Примечание
Этот параметр не применим к задачам, выполняющимся на ресурсах Fargate. Не указывайте его для таких задач.(структура)
Объект, представляющий устройство хоста контейнера.
Примечание
Этот объект не применим к задачам, выполняющимся на ресурсах Fargate, и его не следует указывать.hostPath -> (строка)
containerPath -> (строка)
hostPath.permissions -> (список)
Явные разрешения, предоставляемые контейнеру для устройства. По умолчанию контейнер имеет разрешения для read , write и mknod для устройства.
(строка)
initProcessEnabled -> (булево)
init внутри контейнера, который перенаправляет сигналы и собирает процессы. Этот параметр сопоставляется с параметром --init команды docker run . Для этого параметра требуется версия Docker Remote API 1.25 или более поздняя на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"
sharedMemorySize -> (целое число)
Значение размера (в МБ) объема /dev/shm. Этот параметр сопоставляется с параметром --shm-size команды docker run .
Примечание
Этот параметр не применим к задачам, выполняющимся на ресурсах Fargate. Не указывайте его для таких задач.tmpfs -> (список)
Путь контейнера, параметры монтирования и размер (в МБ) монтирования tmpfs. Этот параметр сопоставляется с параметром --tmpfs команды docker run .
Примечание
Этот параметр не применим к задачам, выполняющимся на ресурсах Fargate. Не указывайте этот параметр для этого типа ресурсов.(структура)
Путь контейнера, параметры монтирования и размер монтирования tmpfs.
Примечание
Этот объект не применим к задачам, выполняющимся на ресурсах Fargate.containerPath -> (строка)
tmpfs.size -> (целое число)
tmpfs.mountOptions -> (список)
Список параметров монтирования объема tmpfs.
Допустимые значения: “defaults “ | “ro “ | “rw “ | “suid “ | “nosuid “ | “dev “ | “nodev “ | “exec “ | “noexec “ | “sync “ | “async “ | “dirsync “ | “remount “ | “mand “ | “nomand “ | “atime “ | “noatime “ | “diratime “ | “nodiratime “ | “bind “ | “rbind" | "unbindable" | "runbindable" | "private" | "rprivate" | "shared" | "rshared" | "slave" | "rslave" | "relatime “ | “norelatime “ | “strictatime “ | “nostrictatime “ | “mode “ | “uid “ | “gid “ | “nr_inodes “ | “nr_blocks “ | “mpol “
(строка)
maxSwap -> (целое число)
Общий объем памяти подкачки (в МБ), которую может использовать контейнер. Этот параметр преобразуется в параметр --memory-swap команды docker run , где значение является суммой памяти контейнера и значения maxSwap. Для получения дополнительной информации см. ` --memory-swap детали <https://docs.docker.com/config/containers/resource_constraints/#–memory-swap-details>`__ в документации Docker.
Если задано значение maxSwap 0, контейнер не использует подкачку. Допустимые значения — 0 или любое положительное целое число. Если параметр maxSwap опущен, контейнер не использует конфигурацию подкачки для экземпляра контейнера, на котором он выполняется. Значение maxSwap должно быть установлено для использования параметра swappiness.
Примечание
Этот параметр не применим к задачам, выполняющимся на ресурсах Fargate. Не указывайте его для таких задач.swappiness -> (целое число)
Вы можете использовать этот параметр для настройки поведения подкачки памяти контейнера. Значение swappiness 0 приводит к тому, что подкачка происходит только в крайнем случае. Значение swappiness 100 приводит к агрессивному обмену страницами. Допустимые значения — целые числа от 0 до 100 . Если параметр swappiness не указан, используется значение по умолчанию 60. Если для параметра maxSwap не указано значение, этот параметр игнорируется. Если maxSwap установлено в 0, контейнер не использует подкачку. Этот параметр сопоставляется с параметром --memory-swappiness команды docker run .
Учитывайте следующее, когда вы используете конфигурацию подкачки на уровне контейнера.
- Для использования контейнерами необходимо включить и выделить память подкачки на экземпляре контейнера.
Примечание
По умолчанию в оптимизированных AMIs Amazon ECS подкачка не включена. Вам необходимо включить подкачку на экземпляре, чтобы использовать эту функцию. Для получения дополнительной информации см. Разделы «Том подкачки хранилища экземпляров» в Руководстве пользователя Amazon EC2 для Linux-экземпляров или «Как выделить память для работы в качестве пространства подкачки в экземпляре Amazon EC2, используя файл подкачки?»- Параметры пространства подкачки поддерживаются только для определений задач, использующих ресурсы EC2.
- Если параметры
maxSwapиswappinessопущены из определения задачи, каждый контейнер имеет значение по умолчаниюswappiness60. Кроме того, общее использование памяти подкачки ограничено двойным размером резервирования памяти контейнера.
Примечание
Этот параметр не применим к задачам, выполняющимся на ресурсах Fargate. Не указывайте его для таких задач.logConfiguration -> (структура)
Спецификация конфигурации логирования для контейнера.
Этот параметр соответствует LogConfig в разделе «Создание контейнера» в Docker Remote API и параметру --log-driver в команде docker run.
По умолчанию контейнеры используют тот же драйвер логирования, что и демонтаж Docker. Однако контейнер может использовать другой драйвер логирования, отличного от драйвера демона Docker, указав драйвер логирования в определении контейнера. Для использования другого драйвера логирования для контейнера, система логирования должна быть должным образом настроена на экземпляре контейнера (или на другом сервере логирования для удаленных вариантов логирования). Более подробную информацию о параметрах различных поддерживаемых драйверов логирования можно найти в разделе «Настройка драйверов логирования» в документации Docker.
Примечание
Amazon ECS в настоящее время поддерживает подмножество драйверов логирования, доступных для демона Docker (показано в типе данныхLogConfiguration). Дополнительные драйверы логирования могут быть доступны в будущих версиях агента Amazon ECS контейнеров.Для этого параметра требуется версия Docker Remote API 1.18 или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в ваш экземпляр контейнера и выполните следующую команду: sudo docker version --format '{{.Server.APIVersion}}'
Примечание
Агент Amazon ECS контейнеров, работающий на экземпляре контейнера, должен зарегистрировать доступные на этом экземпляре драйверы логирования с переменной средыECS_AVAILABLE_LOGGING_DRIVERS, прежде чем контейнеры, размещенные на этом экземпляре, смогут использовать эти параметры конфигурации логирования. Дополнительную информацию можно найти в разделе «Настройка агента Amazon ECS контейнеров» в Руководстве разработчика Amazon Elastic Container Service.logDriver -> (string)
Драйвер логирования для использования в контейнере. Действительные значения, указанные для этого параметра, — это драйверы логирования, с которыми агент Amazon ECS контейнеров может взаимодействовать по умолчанию.
Поддерживаемые драйверы логирования: awslogs , fluentd , gelf , json-file , journald , logentries , syslog и splunk.
Примечание
Задачи, выполняемые на ресурсах Fargate, ограничены драйверами логирования awslogs и splunk.
awsfirelens
Указывает драйвер логирования firelens. Дополнительную информацию о настройке Firelens см. в разделе «Отправка журналов Amazon ECS в Amazon Web Services service или Amazon Web Services Partner» в Руководстве разработчика Amazon Elastic Container Service.
Указывает драйвер логирования Amazon CloudWatch Logs. Дополнительную информацию см. в разделе «Использование драйвера awslogs» в Руководстве пользователя Batch и «Драйвер логирования Amazon CloudWatch Logs» в документации Docker.
Указывает драйвер логирования Fluentd. Дополнительную информацию, включая использование и параметры, см. в разделе «Драйвер логирования Fluentd» в документации Docker.
Указывает драйвер логирования Graylog Extended Format (GELF). Дополнительную информацию, включая использование и параметры, см. в разделе «Драйвер логирования Graylog Extended Format» в документации Docker.
Указывает драйвер логирования journald. Дополнительную информацию, включая использование и параметры, см. в разделе «Драйвер логирования journald» в документации Docker.
Указывает драйвер логирования JSON-файл. Дополнительную информацию, включая использование и параметры, см. в разделе «Драйвер логирования JSON-файл» в документации Docker.
Указывает драйвер логирования Splunk. Дополнительную информацию, включая использование и параметры, см. в разделе «Драйвер логирования Splunk» в документации Docker.
Указывает драйвер логирования syslog. Дополнительную информацию, включая использование и параметры, см. в разделе «Драйвер логирования syslog» в документации Docker.
Примечание
Если у вас есть пользовательский драйвер, который не указан выше, с которым вы хотите работать с агентом Amazon ECS контейнеров, вы можете сделать форк проекта агента Amazon ECS контейнеров, доступного на GitHub, и настроить его для работы с этим драйвером. Мы рекомендуем вам отправлять запросы на добавление изменений, которые вы хотите включить. Однако Amazon Web Services в настоящее время не поддерживает запуск измененных копий этого программного обеспечения.Для этого параметра требуется версия Docker Remote API 1.18 или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в ваш экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"
options -> (map)
Параметры конфигурации для отправки драйверу логирования. Для этого параметра требуется версия Docker Remote API 1.19 или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в ваш экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"
key -> (string)
value -> (string)
secretOptions -> (list)
Секреты, которые необходимо передать конфигурации логирования. Дополнительную информацию см. в разделе «Указание конфиденциальных данных» в Руководстве пользователя Batch.
(структура)
Объект, представляющий секрет, который нужно предоставить вашему контейнеру. Секреты могут быть предоставлены контейнеру следующим образом:
- Для вставки конфиденциальных данных в ваши контейнеры в виде переменных среды используйте параметр определения контейнера
secrets. - Для ссылки на конфиденциальную информацию в конфигурации логирования контейнера используйте параметр определения контейнера
secretOptions.
Дополнительную информацию см. в разделе «Указание конфиденциальных данных» в Руководстве пользователя Batch.
name -> (string)
valueFrom -> (string)
Секрет, предоставляемый контейнеру. Поддерживаемые значения — это полный Amazon Resource Name (ARN) секрета Secrets Manager или полный ARN параметра в хранилище параметров Amazon Web Services Systems Manager.
Примечание
Если параметр Amazon Web Services Systems Manager Parameter Store существует в той же области, что и задача, которую вы запускаете, то вы можете использовать либо полный Amazon Resource Name (ARN), либо имя параметра. Если параметр существует в другой области, то должен быть указан полный ARN.mountPoints -> (list)
Точки монтирования томов данных в вашем контейнере.
Этот параметр соответствует Volumes в разделе «Создание контейнера» в Docker Remote API и параметру –volume в команде `docker run .
Контейнеры Windows могут монтировать целые каталоги на том же диске, что и $env:ProgramData. Контейнеры Windows не могут монтировать каталоги на другом диске, и точка монтирования не может быть между дисками.
(структура)
Подробная информация о точке монтирования тома Docker, используемой в свойствах контейнера задачи. Этот параметр соответствует Volumes в разделе «Создание контейнера» в Docker Remote API и параметру --volume в команде docker run.
containerPath -> (string)
readOnly -> (boolean)
true, контейнер имеет только чтение для тома. В противном случае контейнер может записывать в том. Значение по умолчанию — false.sourceVolume -> (string)
name -> (string)
dependsOn и Overrides объекты.privileged -> (boolean)
Когда этот параметр равен true, контейнеру предоставляются расширенные привилегии на экземпляре контейнера хоста (аналогично пользователю root). Этот параметр соответствует Privileged в разделе «Создание контейнера» в Docker Remote API и параметру --privileged в команде docker run.
Примечание
Этот параметр не поддерживается для контейнеров Windows или задач, выполняемых на Fargate.readonlyRootFilesystem -> (boolean)
Когда этот параметр равен true, контейнеру предоставляется только чтение для его корневой файловой системы. Этот параметр соответствует ReadonlyRootfs в разделе «Создание контейнера» в Docker Remote API и параметру --read-only в команде docker run.
Примечание
Этот параметр не поддерживается для контейнеров Windows.repositoryCredentials -> (structure)
Учетные данные аутентификации частного репозитория для использования.
credentialsParameter -> (string)
resourceRequirements -> (list)
Тип и количество ресурсов, которые нужно назначить контейнеру. Поддерживается только ресурс GPU.
(структура)
Тип и количество ресурсов, которые нужно назначить контейнеру. Поддерживаемые ресурсы включают GPU , MEMORY и VCPU .
value -> (строка)
Количество указанного ресурса, которое нужно зарезервировать для контейнера. Значения зависят от указанного type.
Количество физических GPU, которые нужно зарезервировать для контейнера. Убедитесь, что общее количество зарезервированных GPU для всех контейнеров в задаче не превышает количество доступных GPU на вычислительном ресурсе, на котором запущена задача.
Примечание
GPU недоступны для задач, выполняющихся на ресурсах Fargate.
type=”MEMORY”
Максимальный объём памяти (в MiB), доступный контейнеру. Этот параметр поддерживается для задач, выполняющихся на ресурсах Amazon EC2. Если контейнер попытается превысить заданный объём памяти, контейнер будет завершен. Этот параметр соответствует Memory в разделе «Создание контейнера» в Docker Remote API и параметру --memory в команде docker run. Для задачи необходимо указать как минимум 4 MiB памяти. Этот параметр является обязательным, но может быть указан в нескольких местах для задач многоузлового параллельного выполнения (MNP). Он должен быть указан для каждого узла хотя бы один раз. Этот параметр соответствует Memory в разделе «Создание контейнера» в Docker Remote API и параметру --memory в команде docker run.
Примечание
Если вы пытаетесь максимизировать использование ресурсов, предоставляя задачам как можно больше памяти для определённого типа экземпляра, см. Управление памятью в руководстве пользователя Batch .Для задач, выполняющихся на ресурсах Fargate, value является максимальным объёмом (в MiB) и должен соответствовать одному из поддерживаемых значений, а VCPU должно быть одним из значений, поддерживаемых для данного значения памяти.
VCPU = 0.25
VCPU = 0.25 или 0.5
VCPU = 0.25, 0.5 или 1
VCPU = 0.5 или 1
VCPU = 0.5, 1 или 2
VCPU = 1 или 2
VCPU = 1, 2 или 4
VCPU = 2 или 4
VCPU = 2, 4 или 8
VCPU = 4
VCPU = 4 или 8
VCPU = 8
VCPU = 8 или 16
VCPU = 16
Количество виртуальных процессоров (vCPU), зарезервированных для контейнера. Этот параметр соответствует CpuShares в разделе «Создание контейнера» в Docker Remote API и параметру --cpu-shares в команде docker run. Каждый vCPU эквивалентен 1024 CPU-долям. Для ресурсов Amazon EC2 необходимо указать как минимум один vCPU. Этот параметр является обязательным, но может быть указан в нескольких местах; он должен быть указан для каждого узла как минимум один раз.
По умолчанию для квоты ресурсов vCPU Fargate On-Demand установлено 6 vCPU. Дополнительную информацию о квотах Fargate см. в разделе Квоты Fargate в справке Amazon Web Services General Reference.
Для задач, выполняющихся на ресурсах Fargate, value должно соответствовать одному из поддерживаемых значений, а MEMORY должно быть одним из значений, поддерживаемых для данного значения VCPU. Поддерживаемые значения: 0.25, 0.5, 1, 2, 4, 8 и 16
MEMORY = 512, 1024 или 2048
MEMORY = 1024, 2048, 3072 или 4096
MEMORY = 2048, 3072, 4096, 5120, 6144, 7168 или 8192
MEMORY = 4096, 5120, 6144, 7168, 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360 или 16384
MEMORY = 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, 16384, 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696 или 30720
MEMORY = 16384, 20480, 24576, 28672, 32768, 36864, 40960, 45056, 49152, 53248, 57344 или 61440
MEMORY = 32768, 40960, 49152, 57344, 65536, 73728, 81920, 90112, 98304, 106496, 114688 или 122880
type -> (строка)
GPU , MEMORY и VCPU .secrets -> (список)
Секреты, которые нужно передать контейнеру. Дополнительную информацию см. в разделе «Указание конфиденциальных данных» в руководстве разработчика Amazon Elastic Container Service.
(структура)
Объект, представляющий секрет, который нужно предоставить контейнеру. Секреты могут быть предоставлены контейнеру следующим образом:
- Для вставки конфиденциальных данных в контейнеры в качестве переменных окружения используйте параметр определения контейнера
secrets. - Для ссылки на конфиденциальную информацию в конфигурации журналов контейнера используйте параметр определения контейнера
secretOptions.
Дополнительную информацию см. в разделе «Указание конфиденциальных данных» в руководстве пользователя Batch.
name -> (строка)
valueFrom -> (строка)
Секрет для предоставления контейнеру. Поддерживаются полное имя ресурса Amazon (ARN) секрета Secrets Manager или полное ARN параметра в хранилище параметров Amazon Web Services Systems Manager.
Примечание
Если параметр Amazon Web Services Systems Manager Parameter Store существует в той же области, что и запускаемая задача, то можно использовать полное имя ресурса Amazon (ARN) или имя параметра. Если параметр существует в другой области, то необходимо указать полное ARN.ulimits -> (список)
Список ulimits , которые нужно установить в контейнере. Если значение ulimit указано в определении задачи, оно переопределяет значения по умолчанию, заданные Docker. Этот параметр соответствует Ulimits в разделе «Создание контейнера» в Docker Remote API и параметру --ulimit в команде docker run.
Задачи Amazon ECS, размещенные на Fargate, используют значения ограничений ресурсов по умолчанию, заданные операционной системой, за исключением параметра ограничения ресурсов nofile, который переопределяется Fargate. Параметр ограничения ресурсов nofile устанавливает ограничение на количество открытых файлов, которые может использовать контейнер. Значение ограничения по умолчанию nofile — 1024, а максимальное значение — 65535.
Для этого параметра требуется версия Docker Remote API 1.18 или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в него и выполните следующую команду: sudo docker version --format '{{.Server.APIVersion}}'
Примечание
Этот параметр не поддерживается для контейнеров Windows.(структура)
Настройки ulimit, которые нужно передать контейнеру. Дополнительную информацию см. в разделе Ulimit.
Примечание
Этот объект не применим к задачам, выполняющимся на ресурсах Fargate.hardLimit -> (целое число)
ulimit.name -> (строка)
type ulimit. Допустимые значения: core | cpu | data | fsize | locks | memlock | msgqueue | nice | nofile | nproc | rss | rtprio | rttime | sigpending | stack.softLimit -> (целое число)
ulimit.user -> (строка)
Пользователь, который будет использоваться внутри контейнера. Этот параметр соответствует Пользователю в разделе «Создание контейнера» в Docker Remote API и параметру –user в команде docker run.
Примечание
При запуске задач с использованием сетевого режимаhost не используйте контейнеры с пользователем root user (UID 0). Рекомендуется использовать не-root пользователя для повышения безопасности.Можно указать user в следующих форматах. Если указывается UID или GID, необходимо указать его как положительное целое число.
useruser:groupuiduid:giduser:giuid:group
Примечание
Этот параметр не поддерживается для контейнеров Windows.ephemeralStorage -> (структура)
Объем временного хранилища, который нужно выделить для задачи. Этот параметр используется для расширения общего объема временного хранилища, доступного помимо значения по умолчанию, для задач, размещенных на Fargate.
sizeInGiB -> (целое число)
21 GiB, а максимальное — 200 GiB.executionRoleArn -> (строка)
platformVersion -> (строка)
LATEST по умолчанию. Она использует последнюю утверждённую версию платформы Fargate для вычислительных ресурсов. Дополнительную информацию см. в разделе Версии платформы Fargate в руководстве разработчика Amazon Elastic Container Service.ipcMode -> (строка)
Пространство имен ресурсов IPC, используемое для контейнеров в задаче. Допустимые значения — host, task или none.
Если указано host, все контейнеры в задачах, указавших режим IPC host в том же экземпляре контейнера, используют общие ресурсы IPC с экземпляром Amazon EC2.
Если указано task, все контейнеры в указанной задаче используют общие ресурсы IPC.
Если указано none, ресурсы IPC внутри контейнеров задачи являются частными и не используются совместно с другими контейнерами в задаче или на экземпляре контейнера.
Если значение не указано, использование совместного пространства имен ресурсов IPC зависит от настроек демона Docker на экземпляре контейнера. Дополнительную информацию см. в разделе Настройки IPC в справке Docker run.
taskRoleArn -> (строка)
Идентификатор ресурса Amazon (ARN), связанный с задачей Amazon ECS.
Примечание
Этот объект сравним с ContainerProperties:jobRoleArn.pidMode -> (строка)
Пространство имен процессов для контейнеров в задаче. Допустимые значения — host или task. Например, мониторинговые sidecar-контейнеры могут потребовать pidMode для доступа к информации о других контейнерах, выполняющихся в той же задаче.
Если указано host, все контейнеры в задачах, указавших режим PID host в том же экземпляре контейнера, используют общее пространство имен процессов с хост-экземпляром Amazon EC2.
Если указано task, все контейнеры в указанной задаче используют общее пространство имен процессов.
Если значение не указано, по умолчанию используется частное пространство имен для каждого контейнера. Дополнительную информацию см. в разделе Настройки PID в справке Docker run.
networkConfiguration -> (структура)
Настройка сети для задач, выполняемых на ресурсах Fargate. Задачи, выполняемые на ресурсах Amazon EC2, не должны указывать этот параметр.
assignPublicIp -> (строка)
DISABLED».runtimePlatform -> (структура)
Объект, представляющий архитектуру вычислительной среды для задач Batch на Fargate.
operatingSystemFamily -> (строка)
Операционная система вычислительной среды. Допустимые значения: LINUX (по умолчанию), WINDOWS_SERVER_2019_CORE, WINDOWS_SERVER_2019_FULL, WINDOWS_SERVER_2022_CORE и WINDOWS_SERVER_2022_FULL.
Примечание
Следующие параметры нельзя задавать для контейнеров Windows:linuxParameters, privileged, user, ulimits, readonlyRootFilesystem и efsVolumeConfiguration.Примечание
Планировщик Batch проверяет вычислительные среды, присоединённые к очереди задач, перед регистрацией определения задачи в Fargate. В этом случае очередь задач — место отправки задачи. Если задача требует контейнер Windows, и первая вычислительная среда —LINUX, среда пропускается, и проверяется следующая, пока не будет найдена среда Windows.Примечание
Fargate Spot не поддерживается дляARM64 и контейнеров Windows на Fargate. Очередь задач заблокируется, если задача Fargate ARM64 или Windows отправляется в очередь задач с только вычислительными средами Fargate Spot. Однако вы можете прикрепить как FARGATE, так и FARGATE_SPOT вычислительные среды к одной очереди задач.cpuArchitecture -> (строка)
Архитектура vCPU. Значение по умолчанию — X86_64. Допустимые значения — X86_64 и ARM64.
Примечание
Для контейнеров Windows этот параметр должен быть установлен наX86_64.Примечание
Fargate Spot не поддерживается дляARM64 и контейнеров Windows на Fargate. Очередь задач заблокируется, если задача Fargate ARM64 или Windows отправляется в очередь задач с только вычислительными средами Fargate Spot. Однако вы можете прикрепить как FARGATE, так и FARGATE_SPOT вычислительные среды к одной очереди задач.volumes -> (список)
Список томов, связанных с задачей.
(структура)
Том данных, используемый в свойствах контейнера задачи.
host -> (структура)
Содержимое параметра host определяет, сохраняется ли том данных на хост-экземпляре контейнера и где он хранится. Если параметр host пустой, демон Docker назначает путь к хосту для тома данных. Однако данные не гарантированно сохраняются после остановки связанных с ним контейнеров.
Примечание
Этот параметр не применим к задачам, выполняющимся на ресурсах Fargate, и его не следует указывать.sourcePath -> (строка)
Путь на хост-экземпляре контейнера, предоставляемый контейнеру. Если этот параметр пустой, демон Docker назначил путь к хосту. Если этот параметр содержит расположение файла, то том данных сохраняется в указанном месте на хост-экземпляре контейнера до его удаления вручную. Если расположение исходного пути на хост-экземпляре контейнера не существует, демон Docker создаёт его. Если расположение существует, содержимое папки исходного пути экспортируется.
Примечание
Этот параметр не применим к задачам, выполняемым на ресурсах Fargate. Не указывайте его для таких задач.name -> (строка)
sourceVolume определения контейнера mountPoints.efsVolumeConfiguration -> (структура)
Этот параметр используется при использовании Amazon Elastic File System для хранения данных задачи. Задачи, выполняемые на ресурсах Fargate, должны указывать platformVersion длиной не менее 1.4.0.
fileSystemId -> (строка)
rootDirectory -> (строка)
Директория внутри файловой системы Amazon EFS, которая будет смонтирована как корневая директория внутри хоста. Если этот параметр опущен, используется корень тома Amazon EFS. Указание / эквивалентно опущению этого параметра. Максимальная длина — 4096 символов.
Предупреждение
Если вauthorizationConfig указан EFS-точку доступа, параметр rootDirectory должен быть опущен или установлен в /, что навязывает путь, установленный в точке доступа Amazon EFS.transitEncryption -> (строка)
DISABLED. Дополнительную информацию см. в разделе Шифрование данных при передаче в Руководстве пользователя Amazon Elastic File System.transitEncryptionPort -> (целое число)
authorizationConfig -> (структура)
Подробности конфигурации авторизации для файловой системы Amazon EFS.
accessPointId -> (строка)
EFSVolumeConfiguration должно быть опущено или установлено в /, что навязывает путь, установленный в точке доступа EFS. Если используется точка доступа, шифрование во время передачи должно быть включено в EFSVolumeConfiguration. Дополнительную информацию см. в разделе Работа с точками доступа Amazon EFS в Руководстве пользователя Amazon Elastic File System.iam -> (строка)
EFSVolumeConfiguration. Если этот параметр опущен, используется значение по умолчанию — DISABLED. Дополнительную информацию см. в разделе Использование точек доступа Amazon EFS в Руководстве пользователя Batch. Для авторизации IAM EFS необходимо, чтобы TransitEncryption было ENABLED и был указан JobRoleArn.enableExecuteCommand -> (булево)
true, функция выполнения команд включена для всех контейнеров в задаче.eksProperties -> (структура)
Это объект, представляющий свойства диапазона узлов для многоузловой параллельной задачи.
podProperties -> (структура)
Свойства ресурсов Kubernetes pod для задания.
serviceAccountName -> (строка)
hostNetwork -> (логическое значение)
true. Установка этого значения в false включает модель сети Kubernetes pod. Большинство рабочих нагрузок Batch — это только исходящие соединения и не требуют накладных расходов на выделение IP-адресов для каждого pod для входящих соединений. Дополнительную информацию см. в разделах Host namespaces и Pod networking в документации по Kubernetes.dnsPolicy -> (строка)
Политика DNS для pod. Значение по умолчанию — ClusterFirst. Если параметр hostNetwork не указан, значение по умолчанию — ClusterFirstWithHostNet. ClusterFirst указывает, что любой запрос DNS, не соответствующий настроенному суффиксу домена кластера, пересылается в upstream nameserver, унаследованный от узла. Дополнительную информацию см. в разделе Политика DNS под в документации по Kubernetes.
Допустимые значения: Default | ClusterFirst | ClusterFirstWithHostNet
imagePullSecrets -> (список)
Ссылка на ресурс секрета Kubernetes. Содержит список секретов. Эти секреты помогают получить доступ к скачиванию изображений из частного реестра.
ImagePullSecret$name требуется при использовании этого объекта.(структура)
Ссылка на ресурс секрета Kubernetes. Это имя секрета должно начинаться и заканчиваться буквенно-цифровым символом, должно быть в нижнем регистре, может содержать точки (.) и тире (-), и не может содержать более 253 символов.
name -> (строка)
ImagePullSecret. Этот объект требуется при использовании EksPodProperties$imagePullSecrets.containers -> (список)
Свойства контейнера, используемого в pod Amazon EKS.
Примечание
Этот объект ограничен 10 элементами.(структура)
Свойства контейнера EKS используются в определениях заданий для определений заданий на основе Amazon EKS для описания свойств узла контейнера в pod, запускаемого в рамках задания. Это нельзя указать для определений заданий на основе Amazon ECS.
name -> (строка)
Default”. Каждый контейнер в pod должен иметь уникальное имя.image -> (строка)
imagePullPolicy -> (строка)
Always, IfNotPresent и Never. Этот параметр по умолчанию имеет значение IfNotPresent. Однако, если указана метка :latest, она по умолчанию имеет значение Always. Дополнительную информацию см. в разделе Обновление изображений в документации по Kubernetes.command -> (список)
Точка входа в контейнер. Она не выполняется в оболочке. Если она не указана, используется ENTRYPOINT образа контейнера. Ссылки на переменные среды расширяются с использованием среды контейнера.
Если указанная переменная среды не существует, ссылка в команде не изменяется. Например, если ссылка указывает на “$(NAME1)”, а переменная среды NAME1 не существует, строка команды останется “$(NAME1)”. $$ заменяется на $, и результирующая строка не расширяется. Например, $$(VAR_NAME) передается как $(VAR_NAME) независимо от того, существует ли переменная среды VAR_NAME. Точка входа не может быть обновлена. Дополнительную информацию см. в разделе ENTRYPOINT в справочнике по Dockerfile и Определение команды и аргументов для контейнера и Точка входа в документации по Kubernetes.
(строка)
args -> (список)
Массив аргументов для точки входа. Если он не указан, используется CMD образа контейнера. Это соответствует члену args в разделе Точка входа Pod в Kubernetes. Ссылки на переменные среды расширяются с использованием среды контейнера.
Если указанная переменная среды не существует, ссылка в команде не изменяется. Например, если ссылка указывает на “$(NAME1)”, а переменная среды NAME1 не существует, строка команды останется “$(NAME1)”. $$ заменяется на $, и результирующая строка не расширяется. Например, $$(VAR_NAME) передается как $(VAR_NAME) независимо от того, существует ли переменная среды VAR_NAME. Дополнительную информацию см. в разделе Dockerfile reference: CMD и Определение команды и аргументов для pod в документации по Kubernetes.
(строка)
env -> (список)
Переменные среды, которые необходимо передать контейнеру.
Примечание
Переменные среды не могут начинаться с “AWS_BATCH”. Эта соглашение об именовании зарезервировано для переменных, которые устанавливает Batch.(структура)
Переменная среды.
name -> (строка)
value -> (строка)
resources -> (структура)
Тип и количество ресурсов, которые необходимо назначить контейнеру. Поддерживаемые ресурсы включают memory, cpu и nvidia.com/gpu. Дополнительную информацию см. в разделе Управление ресурсами для pod и контейнеров в документации по Kubernetes.
limits -> (карта)
Тип и количество ресурсов, которые необходимо зарезервировать для контейнера. Значения зависят от указанного name. Ресурсы могут быть запрошены с использованием объектов limits или requests.
Ограничение памяти (в МиБ) для контейнера, используя целые числа, с суффиксом «Ми». Если контейнер пытается превысить указанный объем памяти, контейнер завершается. Для задания необходимо указать как минимум 4 МиБ памяти. memory можно указать в limits, requests или обоих. Если memory указано в обоих местах, то значение, указанное в limits, должно быть равно значению, указанному в requests.
Примечание
Чтобы максимально использовать ресурсы, предоставьте своим заданиям как можно больше памяти для конкретного типа экземпляра, который вы используете. Узнайте, как это сделать, в разделе Управление памятью в руководстве пользователя Batch.
cpu
Количество процессоров, зарезервированных для контейнера. Значения должны быть целыми числами, кратными 0.25. cpu можно указать в limits, requests или обоих. Если cpu указано в обоих местах, то значение, указанное в limits, должно быть как минимум таким же большим, как значение, указанное в requests.
Количество графических процессоров, зарезервированных для контейнера. Значения должны быть целыми числами. memory можно указать в limits, requests или обоих. Если memory указано в обоих местах, то значение, указанное в limits, должно быть равно значению, указанному в requests.
key -> (строка)
value -> (строка)
requests -> (карта)
Тип и количество ресурсов, которые необходимо запросить для контейнера. Значения зависят от указанного name. Ресурсы могут быть запрошены с использованием объектов limits или requests.
Ограничение памяти (в МиБ) для контейнера, используя целые числа, с суффиксом «Ми». Если контейнер пытается превысить указанный объем памяти, контейнер завершается. Для задания необходимо указать как минимум 4 МиБ памяти. memory можно указать в limits, requests или обоих. Если memory указано в обоих местах, то значение, указанное в limits, должно быть равно значению, указанному в requests.
Примечание
Если вы пытаетесь максимизировать использование ресурсов, предоставляя своим заданиям как можно больше памяти для конкретного типа экземпляра, см. раздел Управление памятью в руководстве пользователя Batch.
cpu
Количество процессоров, зарезервированных для контейнера. Значения должны быть целыми числами, кратными 0.25. cpu можно указать в limits, requests или обоих. Если cpu указано в обоих местах, то значение, указанное в limits, должно быть как минимум таким же большим, как значение, указанное в requests.
Количество графических процессоров, зарезервированных для контейнера. Значения должны быть целыми числами. nvidia.com/gpu можно указать в limits, requests или обоих. Если nvidia.com/gpu указано в обоих местах, то значение, указанное в limits, должно быть равно значению, указанному в requests.
key -> (строка)
value -> (строка)
volumeMounts -> (список)
Точки монтирования томов для контейнера. Batch поддерживает типы томов emptyDir, hostPath и secret. Дополнительную информацию о томах и точках монтирования томов в Kubernetes см. в разделе Тома в документации по Kubernetes.
(структура)
Точки монтирования томов для контейнера для задания Amazon EKS. Дополнительную информацию о томах и точках монтирования томов в Kubernetes см. в разделе Тома в документации по Kubernetes.
name -> (строка)
mountPath -> (строка)
subPath -> (строка)
readOnly -> (логическое значение)
true, контейнер имеет только доступ для чтения к тому. В противном случае контейнер может записывать в том. Значение по умолчанию — false.securityContext -> (структура)
Контекст безопасности для задания. Дополнительную информацию см. в разделе Настройка контекста безопасности для под или контейнера в документации Kubernetes.
runAsUser -> (long)
uid). Если этот параметр не указан, используется пользователь, указанный в метаданных изображения. Этот параметр соответствует RunAsUser и MustRanAs политике в разделе Пользователи и группы политик безопасности под в документации Kubernetes.runAsGroup -> (long)
gid). Если этот параметр не указан, используется группа, указанная в метаданных изображения. Этот параметр соответствует RunAsGroup и MustRunAs политике в разделе Пользователи и группы политик безопасности под в документации Kubernetes.privileged -> (boolean)
root. Значение по умолчанию - false. Этот параметр соответствует privileged политике в разделе Привилегированные политики безопасности под в документации Kubernetes.allowPrivilegeEscalation -> (boolean)
false.readOnlyRootFilesystem -> (boolean)
false. Этот параметр соответствует ReadOnlyRootFilesystem политике в разделе Тома и файловые системы политик безопасности под в документации Kubernetes.runAsNonRoot -> (boolean)
RunAsUser и MustRunAsNonRoot политике в разделе Пользователи и группы политик безопасности под в документации Kubernetes.initContainers -> (list)
Эти контейнеры выполняются до контейнеров приложения, всегда доводятся до завершения и должны завершиться успешно перед запуском следующего контейнера. Эти контейнеры регистрируются с агентом Amazon EKS Connector и сохраняют информацию о регистрации в хранилище данных Kubernetes backend. Для получения дополнительной информации см. Контейнеры инициализации в документации Kubernetes.
Примечание
Этот объект ограничен 10 элементами.(структура)
Свойства контейнера EKS используются в определениях задач для определений задач на основе Amazon EKS, чтобы описать свойства узла контейнера в под, который запускается в рамках задачи. Это нельзя указать для определений задач на основе Amazon ECS.
name -> (строка)
Default ». Каждый контейнер в под должен иметь уникальное имя.image -> (строка)
imagePullPolicy -> (строка)
Always , IfNotPresent и Never . По умолчанию используется значение IfNotPresent . Однако, если указана метка :latest , по умолчанию используется Always . Для получения дополнительной информации см. Обновление изображений в документации Kubernetes.command -> (список)
Точка входа для контейнера. Она не выполняется внутри оболочки. Если это не указано, используется ENTRYPOINT изображения контейнера. Ссылок на переменные среды расширяются с использованием среды контейнера.
Если указанная переменная среды не существует, ссылка в команде не изменяется. Например, если ссылка указывает на «$(NAME1) », а переменная среды NAME1 не существует, строка команды останется «$(NAME1) ». $$ заменяется на $ , и полученная строка не расширяется. Например, $$(VAR_NAME) будет передана как $(VAR_NAME) независимо от того, существует ли переменная среды VAR_NAME . Точку входа нельзя обновить. Для получения дополнительной информации см. ENTRYPOINT в справочнике по Dockerfile и Определить команду и аргументы для контейнера и Точка входа в документации Kubernetes.
(строка)
args -> (список)
Массив аргументов для точки входа. Если это не указано, используется CMD изображения контейнера. Это соответствует члену args в разделе Entrypoint в Pod в Kubernetes. Ссылок на переменные среды расширяются с использованием среды контейнера.
Если указанная переменная среды не существует, ссылка в команде не изменяется. Например, если ссылка указывает на «$(NAME1) », а переменная среды NAME1 не существует, строка команды останется «$(NAME1) ». $$ заменяется на $ , и полученная строка не расширяется. Например, $$(VAR_NAME) передается как $(VAR_NAME) независимо от того, существует ли переменная среды VAR_NAME . Для получения дополнительной информации см. Справочник по Dockerfile: CMD и Определение команды и аргументов для под в документации Kubernetes.
(строка)
env -> (список)
Переменные среды, которые необходимо передать контейнеру.
Примечание
Переменные среды не могут начинаться с «AWS_BATCH ». Эта соглашение об именовании зарезервировано для переменных, которые устанавливает Batch.(структура)
Переменная среды.
name -> (строка)
value -> (строка)
resources -> (структура)
Тип и количество ресурсов, которые нужно назначить контейнеру. Поддерживаемые ресурсы включают в себя memory , cpu и nvidia.com/gpu . Для получения дополнительной информации см. Управление ресурсами для подов и контейнеров в документации Kubernetes.
limits -> (карта)
Тип и количество ресурсов, которые необходимо зарезервировать для контейнера. Значения зависят от указанного name . Ресурсы можно запросить, используя объекты limits или requests.
Предельное значение памяти (в MiB) для контейнера, используя целые числа со значением «Mi». Если контейнер попытается превысить заданное значение памяти, контейнер будет завершён. Для работы необходимо указать не менее 4 MiB памяти для задания. memory можно указать в limits , requests или обоих. Если memory указано в обоих местах, тогда значение, указанное в limits , должно быть равно значению, указанному в requests.
Примечание
Для максимального использования ресурсов предоставьте своим задачам как можно больше памяти для конкретного типа экземпляра, который вы используете. Чтобы узнать как, см. Управление памятью в Руководстве пользователя Batch.
cpu
Количество ЦП, резервируемых для контейнера. Значения должны быть целым числом, кратным 0.25 . cpu можно указать в limits , requests или обоих. Если cpu указано в обоих местах, то значение, указанное в limits , должно быть не меньше значения, указанного в requests .
Количество графических процессоров, резервируемых для контейнера. Значения должны быть целыми числами. memory можно указать в limits , requests или обоих. Если memory указано в обоих местах, то значение, указанное в limits , должно быть равно значению, указанному в requests .
key -> (строка)
value -> (строка)
requests -> (карта)
Тип и количество ресурсов, которые необходимо запросить для контейнера. Значения зависят от указанного name . Ресурсы можно запросить, используя объекты limits или requests.
Предельное значение памяти (в MiB) для контейнера, используя целые числа со значением «Mi». Если контейнер попытается превысить заданное значение памяти, контейнер будет завершён. Для работы необходимо указать не менее 4 MiB памяти для задания. memory можно указать в limits , requests или обоих. Если memory указано в обоих местах, то значение, указанное в limits , должно быть равно значению, указанному в requests .
Примечание
Если вы пытаетесь максимизировать использование ресурсов, предоставляя своим задачам как можно больше памяти для конкретного типа экземпляра, см. Управление памятью в Руководстве пользователя Batch.
cpu
Количество ЦП, резервируемых для контейнера. Значения должны быть целым числом, кратным 0.25 . cpu можно указать в limits , requests или обоих. Если cpu указано в обоих местах, то значение, указанное в limits , должно быть не меньше значения, указанного в requests .
Количество графических процессоров, резервируемых для контейнера. Значения должны быть целыми числами. nvidia.com/gpu можно указать в limits , requests или обоих. Если nvidia.com/gpu указано в обоих местах, то значение, указанное в limits , должно быть равно значению, указанному в requests .
key -> (строка)
value -> (строка)
volumeMounts -> (список)
Точки монтирования томов для контейнера. Batch поддерживает типы томов emptyDir , hostPath и secret . Дополнительную информацию о томах и точках монтирования томов в Kubernetes см. в документации Kubernetes.
(структура)
Точки монтирования томов для контейнера для задачи Amazon EKS. Для получения дополнительной информации о томах и точках монтирования томов в Kubernetes см. Тома в документации Kubernetes.
name -> (строка)
mountPath -> (строка)
subPath -> (строка)
readOnly -> (булево)
true , контейнер имеет только доступ для чтения к тому. В противном случае контейнер может записывать в том. Значение по умолчанию — false .securityContext -> (структура)
Контекст безопасности для задания. Дополнительную информацию см. в документации Kubernetes «Настройка контекста безопасности для под или контейнера».
runAsUser -> (long)
uid). Если этот параметр не указан, используется пользователь, указанный в метаданных образа. Этот параметр соответствует параметрам RunAsUser и MustRanAs политики в документации Kubernetes «Политики безопасности под по пользователям и группам».runAsGroup -> (long)
gid). Если этот параметр не указан, используется группа, указанная в метаданных образа. Этот параметр соответствует параметрам RunAsGroup и MustRunAs политики в документации Kubernetes «Политики безопасности под по пользователям и группам».privileged -> (boolean)
root. Значение по умолчанию — false. Этот параметр соответствует политике privileged в документации Kubernetes «Политики безопасности под с привилегиями».allowPrivilegeEscalation -> (boolean)
false.readOnlyRootFilesystem -> (boolean)
false. Этот параметр соответствует политике ReadOnlyRootFilesystem в документации Kubernetes «Политики безопасности под по объемам и файловым системам».runAsNonRoot -> (boolean)
uid). Если этот параметр не указан, такое ограничение не применяется. Этот параметр соответствует параметрам RunAsUser и MustRunAsNonRoot политики в документации Kubernetes «Политики безопасности под по пользователям и группам».volumes -> (list)
Указывает объемы для определения задания, использующего ресурсы Amazon EKS.
(structure)
Указывает объем Amazon EKS для определения задания.
name -> (string)
hostPath -> (structure)
Указывает конфигурацию тома Kubernetes hostPath. Дополнительную информацию см. в документации Kubernetes «hostPath».
path -> (string)
emptyDir -> (structure)
Указывает конфигурацию тома Kubernetes emptyDir. Дополнительную информацию см. в документации Kubernetes «emptyDir».
medium -> (string)
Носитель для хранения тома. Значение по умолчанию — пустая строка, использующая хранилище узла.
(Значение по умолчанию) Использует дисковое хранилище узла.
Использует объем tmpfs, который поддерживается оперативной памятью узла. Содержимое тома теряется при перезагрузке узла, а любое хранилище в томе учитывается в пределе памяти контейнера.
sizeLimit -> (string)
secret -> (structure)
Указывает конфигурацию тома Kubernetes secret. Дополнительную информацию см. в документации Kubernetes «secret».
secretName -> (string)
optional -> (boolean)
persistentVolumeClaim -> (structure)
Указывает конфигурацию объёма Kubernetes persistentVolumeClaim, привязанного к persistentVolume. Дополнительную информацию см. в документации Kubernetes «Persistent Volume Claims».
claimName -> (string)
persistentVolumeClaim, привязанного к persistentVolume. Дополнительную информацию см. в документации Kubernetes «Persistent Volume Claims».readOnly -> (boolean)
metadata -> (structure)
Метаданные о Kubernetes pod. Дополнительную информацию см. в документации Kubernetes «Понимание объектов Kubernetes».
labels -> (map)
Ключ-значение, используемые для идентификации, сортировки и организации ресурсов куба. Может содержать до 63 заглавных букв, строчных букв, цифр, дефисов (-) и подчеркиваний (_). Метки можно добавлять или изменять в любое время. Каждый ресурс может иметь несколько меток, но каждый ключ должен быть уникальным для данного объекта.
key -> (string)
value -> (string)
annotations -> (map)
Ключ-значение, используемые для прикрепления произвольных, неидентифицируемых метаданных к объектам Kubernetes. Действительные ключи аннотаций имеют два сегмента: необязательный префикс и имя, разделенные косой чертой (/).
- Префикс необязателен и должен содержать не более 253 символов. Если он указан, префикс должен быть DNS-субдоменом — серией DNS-меток, разделенных точками (.), и он должен заканчиваться косой чертой (/).
- Сегмент имени обязателен и должен содержать не более 63 символов. Он может содержать буквенно-цифровые символы ([a-z0-9A-Z]), дефисы (-), подчеркивания (_) и точки (.), но должен начинаться и заканчиваться буквенно-цифровым символом.
Примечание
Значения аннотаций должны содержать не более 255 символов.Аннотации можно добавлять или изменять в любое время. Каждый ресурс может иметь несколько аннотаций.
key -> (string)
value -> (string)
namespace -> (string)
Пространство имен кластера Amazon EKS. В Kubernetes пространства имен обеспечивают механизм изоляции групп ресурсов в одном кластере. Имена ресурсов должны быть уникальными в рамках пространства имен, но не во всех пространствах имен. Batch помещает под Batch Job в это пространство имен. Если этот параметр указан, его значение не может быть пустым или нулевым. Оно должно соответствовать следующим требованиям:
- Длина от 1 до 63 символов
- Не может быть установлено значение по умолчанию
- Не может начинаться с
kube - Должен соответствовать следующему регулярному выражению:
^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
Дополнительную информацию см. в документации Kubernetes «Пространства имен». Это пространство имен может отличаться от пространства имен kubernetesNamespace, заданного в среде вычислений EksConfiguration, но должно иметь одинаковые роли управления доступом на основе ролей (RBAC) как пространство имен среды вычислений kubernetesNamespace. Для заданий с параллельной обработкой на нескольких узлах необходимо использовать одно и то же значение для всех диапазонов узлов.
shareProcessNamespace -> (boolean)
consumableResourceProperties -> (structure)
Содержит список потребляемых ресурсов, необходимых для задания.
consumableResourceList -> (list)
Список потребляемых ресурсов, необходимых заданию.
(structure)
Информация о потребляемом ресурсе, необходимом для выполнения задания.
consumableResource -> (string)
quantity -> (long)
Синтаксис JSON:
{
"numNodes": integer,
"mainNode": integer,
"nodeRangeProperties": [
{
"targetNodes": "string",
"container": {
"image": "string",
"vcpus": integer,
"memory": integer,
"command": ["string", ...],
"jobRoleArn": "string",
"executionRoleArn": "string",
"volumes": [
{
"host": {
"sourcePath": "string"
},
"name": "string",
"efsVolumeConfiguration": {
"fileSystemId": "string",
"rootDirectory": "string",
"transitEncryption": "ENABLED"|"DISABLED",
"transitEncryptionPort": integer,
"authorizationConfig": {
"accessPointId": "string",
"iam": "ENABLED"|"DISABLED"
}
}
}
...
],
"environment": [
{
"name": "string",
"value": "string"
}
...
],
"mountPoints": [
{
"containerPath": "string",
"readOnly": true|false,
"sourceVolume": "string"
}
...
],
"readonlyRootFilesystem": true|false,
"privileged": true|false,
"ulimits": [
{
"hardLimit": integer,
"name": "string",
"softLimit": integer
}
...
],
"user": "string",
"instanceType": "string",
"resourceRequirements": [
{
"value": "string",
"type": "GPU"|"VCPU"|"MEMORY"
}
...
],
"linuxParameters": {
"devices": [
{
"hostPath": "string",
"containerPath": "string",
"permissions": ["READ"|"WRITE"|"MKNOD", ...]
}
...
],
"initProcessEnabled": true|false,
"sharedMemorySize": integer,
"tmpfs": [
{
"containerPath": "string",
"size": integer,
"mountOptions": ["string", ...]
}
...
],
"maxSwap": integer,
"swappiness": integer
},
"logConfiguration": {
"logDriver": "json-file"|"syslog"|"journald"|"gelf"|"fluentd"|"awslogs"|"splunk"|"awsfirelens",
"options": {"string": "string"
...},
"secretOptions": [
{
"name": "string",
"valueFrom": "string"
}
...
]
},
"secrets": [
{
"name": "string",
"valueFrom": "string"
}
...
],
"networkConfiguration": {
"assignPublicIp": "ENABLED"|"DISABLED"
},
"fargatePlatformConfiguration": {
"platformVersion": "string"
},
"enableExecuteCommand": true|false,
"ephemeralStorage": {
"sizeInGiB": integer
},
"runtimePlatform": {
"operatingSystemFamily": "string",
"cpuArchitecture": "string"
},
"repositoryCredentials": {
"credentialsParameter": "string"
}
},
"instanceTypes": ["string", ...],
"ecsProperties": {
"taskProperties": [
{
"containers": [
{
"command": ["string", ...],
"dependsOn": [
{
"containerName": "string",
"condition": "string"
}
...
],
"environment": [
{
"name": "string",
"value": "string"
}
...
],
"essential": true|false,
"firelensConfiguration": {
"type": "fluentd"|"fluentbit",
"options": {"string": "string"
...}
},
"image": "string",
"linuxParameters": {
"devices": [
{
"hostPath": "string",
"containerPath": "string",
"permissions": ["READ"|"WRITE"|"MKNOD", ...]
}
...
],
"initProcessEnabled": true|false,
"sharedMemorySize": integer,
"tmpfs": [
{
"containerPath": "string",
"size": integer,
"mountOptions": ["string", ...]
}
...
],
"maxSwap": integer,
"swappiness": integer
},
"logConfiguration": {
"logDriver": "json-file"|"syslog"|"journald"|"gelf"|"fluentd"|"awslogs"|"splunk"|"awsfirelens",
"options": {"string": "string"
...},
"secretOptions": [
{
"name": "string",
"valueFrom": "string"
}
...
]
},
"mountPoints": [
{
"containerPath": "string",
"readOnly": true|false,
"sourceVolume": "string"
}
...
],
"name": "string",
"privileged": true|false,
"readonlyRootFilesystem": true|false,
"repositoryCredentials": {
"credentialsParameter": "string"
},
"resourceRequirements": [
{
"value": "string",
"type": "GPU"|"VCPU"|"MEMORY"
}
...
],
"secrets": [
{
"name": "string",
"valueFrom": "string"
}
...
],
"ulimits": [
{
"hardLimit": integer,
"name": "string",
"softLimit": integer
}
...
],
"user": "string"
}
...
],
"ephemeralStorage": {
"sizeInGiB": integer
},
"executionRoleArn": "string",
"platformVersion": "string",
"ipcMode": "string",
"taskRoleArn": "string",
"pidMode": "string",
"networkConfiguration": {
"assignPublicIp": "ENABLED"|"DISABLED"
},
"runtimePlatform": {
"operatingSystemFamily": "string",
"cpuArchitecture": "string"
},
"volumes": [
{
"host": {
"sourcePath": "string"
},
"name": "string",
"efsVolumeConfiguration": {
"fileSystemId": "string",
"rootDirectory": "string",
"transitEncryption": "ENABLED"|"DISABLED",
"transitEncryptionPort": integer,
"authorizationConfig": {
"accessPointId": "string",
"iam": "ENABLED"|"DISABLED"
}
}
}
...
],
"enableExecuteCommand": true|false
}
...
]
},
"eksProperties": {
"podProperties": {
"serviceAccountName": "string",
"hostNetwork": true|false,
"dnsPolicy": "string",
"imagePullSecrets": [
{
"name": "string"
}
...
],
"containers": [
{
"name": "string",
"image": "string",
"imagePullPolicy": "string",
"command": ["string", ...],
"args": ["string", ...],
"env": [
{
"name": "string",
"value": "string"
}
...
],
"resources": {
"limits": {"string": "string"
...},
"requests": {"string": "string"
...}
},
"volumeMounts": [
{
"name": "string",
"mountPath": "string",
"subPath": "string",
"readOnly": true|false
}
...
],
"securityContext": {
"runAsUser": long,
"runAsGroup": long,
"privileged": true|false,
"allowPrivilegeEscalation": true|false,
"readOnlyRootFilesystem": true|false,
"runAsNonRoot": true|false
}
}
...
],
"initContainers": [
{
"name": "string",
"image": "string",
"imagePullPolicy": "string",
"command": ["string", ...],
"args": ["string", ...],
"env": [
{
"name": "string",
"value": "string"
}
...
],
"resources": {
"limits": {"string": "string"
...},
"requests": {"string": "string"
...}
},
"volumeMounts": [
{
"name": "string",
"mountPath": "string",
"subPath": "string",
"readOnly": true|false
}
...
],
"securityContext": {
"runAsUser": long,
"runAsGroup": long,
"privileged": true|false,
"allowPrivilegeEscalation": true|false,
"readOnlyRootFilesystem": true|false,
"runAsNonRoot": true|false
}
}
...
],
"volumes": [
{
"name": "string",
"hostPath": {
"path": "string"
},
"emptyDir": {
"medium": "string",
"sizeLimit": "string"
},
"secret": {
"secretName": "string",
"optional": true|false
},
"persistentVolumeClaim": {
"claimName": "string",
"readOnly": true|false
}
}
...
],
"metadata": {
"labels": {"string": "string"
...},
"annotations": {"string": "string"
...},
"namespace": "string"
},
"shareProcessNamespace": true|false
}
},
"consumableResourceProperties": {
"consumableResourceList": [
{
"consumableResource": "string",
"quantity": long
}
...
]
}
}
...
]
}
--retry-strategy (structure)
Стратегия повторной попытки для завершившихся с ошибкой заданий, отправленных с этим определением задания. Любая стратегия повторной попытки, указанная во время операции SubmitJob, переопределяет стратегию повторной попытки, определенную здесь. Если задание завершилось из-за таймаута, оно не повторяется.
attempts -> (integer)
RUNNABLE. Можно указать от 1 до 10 попыток. Если значение attempts больше одного, задание повторяется при ошибке столько же раз, сколько указывает это значение.evaluateOnExit -> (list)
Массив до 5 объектов, определяющих условия, при которых задания повторяются или завершаются с ошибкой. Если этот параметр указан, то необходимо также указать параметр attempts. Если ни одно из перечисленных условий не соответствует, то задание повторяется.
(structure)
Указывает массив до 5 условий, которые должны быть выполнены, и действие, которое нужно выполнить (RETRY или EXIT), если все условия выполнены. Если ни одно из условий EvaluateOnExit в RetryStrategy не соответствует, то задание повторяется.
onStatusReason -> (string)
StatusReason, возвращаемому для задания. Шаблон может содержать до 512 символов. Он может содержать буквы, цифры, точки (.), двоеточия (:) и пробелы (включая пробелы или табуляцию). Он может необязательно заканчиваться звездочкой (*), чтобы только начало строки было точным совпадением.onReason -> (string)
Reason, возвращаемому для задания. Шаблон может содержать до 512 символов. Он может содержать буквы, цифры, точки (.), двоеточия (:) и пробелы (включая пробелы и табуляцию). Он может необязательно заканчиваться звездочкой (*), чтобы только начало строки было точным совпадением.onExitCode -> (string)
Содержит шаблон поиска, который соответствует десятичному представлению ExitCode, возвращаемому для задания. Шаблон может иметь длину до 512 символов. Он может содержать только цифры и может заканчиваться звездочкой (*), чтобы только начало строки было точным совпадением.
Строка может содержать до 512 символов.
action -> (string)
onStatusReason, onReason и onExitCode) выполнены. Значения не чувствительны к регистру.Сокращенный синтаксис:
attempts=integer,evaluateOnExit=[{onStatusReason=string,onReason=string,onExitCode=string,action=string},{onStatusReason=string,onReason=string,onExitCode=string,action=string}]
Синтаксис JSON:
{
"attempts": integer,
"evaluateOnExit": [
{
"onStatusReason": "string",
"onReason": "string",
"onExitCode": "string",
"action": "RETRY"|"EXIT"
}
...
]
}
--propagate-tags | --no-propagate-tags (boolean)
Указывает, следует ли распространять теги из задания или определения задания на соответствующую задачу Amazon ECS. Если значение не указано, теги не распространяются. Теги могут распространяться только на задачи во время создания задач. Для тегов с одинаковым именем теги задания имеют приоритет над тегами определений задания. Если общее количество объединенных тегов из задания и определения задания превышает 50, задание переводится в состояние FAILED.
Примечание
Если задание выполняется на ресурсах Amazon EKS, то вы не должны указыватьpropagateTags .--timeout (структура)
Настройка таймаута для заданий, которые отправляются с этим определением задания, после чего Batch завершает задания, если они не завершены. Если задание завершается из-за таймаута, оно не повторяется. Минимальное значение таймаута составляет 60 секунд. Любая настройка таймаута, указанная во время операции SubmitJob, переопределяет настройку таймаута, определенную здесь. Дополнительную информацию см. в разделе «Таймауты заданий» в руководстве пользователя Batch .
attemptDurationSeconds -> (целое число)
Время таймаута задания (в секундах), которое измеряется с момента отметки времени начала выполнения задания startedAt. После истечения этого времени Batch завершает задания, если они не завершены. Минимальное значение таймаута составляет 60 секунд.
Для заданий массива таймаут применяется к дочерним заданиям, а не к родительскому заданию массива.
Для заданий многоузловой параллельной обработки (MNP) таймаут применяется ко всему заданию, а не к отдельным узлам.
Сокращённый синтаксис:
attemptDurationSeconds=integer
Синтаксис JSON:
{
"attemptDurationSeconds": integer
}
--tags (словарь)
Теги, которые вы применяете к определению задания, чтобы помочь в категоризации и организации ваших ресурсов. Каждый тег состоит из ключа и необязательного значения. Дополнительную информацию см. в разделе «Тегирование ресурсов Amazon Web Services» в руководстве пользователя Batch .
key -> (строка)
value -> (строка)
Сокращённый синтаксис:
KeyName1=string,KeyName2=string
Синтаксис JSON:
{"string": "string"
...}
--platform-capabilities (список)
Функциональные возможности платформы, требуемые для определения задания. Если значение не указано, оно по умолчанию равно EC2 . Для запуска задания на ресурсах Fargate укажите FARGATE .
Примечание
Если задание выполняется на ресурсах Amazon EKS, то вы не должны указыватьplatformCapabilities .(строка)
Синтаксис:
"string" "string" ...
Where valid values are:
EC2
FARGATE
--eks-properties (структура)
Объект со свойствами, специфичными для заданий на основе Amazon EKS. Его нельзя указывать для определений заданий на основе Amazon ECS.
podProperties -> (структура)
Свойства ресурсов Kubernetes-подов задания.
serviceAccountName -> (строка)
hostNetwork -> (булево)
true . Установка этого значения в false включает модель сетевого взаимодействия Kubernetes-подов. Большинство рабочих нагрузок Batch являются только исходящими и не требуют накладных расходов на выделение IP-адреса для каждого под для входящих подключений. Дополнительную информацию см. в разделах «Пространства имен хостов» и «Сетевое взаимодействие под» в документации Kubernetes.dnsPolicy -> (строка)
Политика DNS для под. Значение по умолчанию — ClusterFirst . Если параметр hostNetwork не указан, значение по умолчанию — ClusterFirstWithHostNet . ClusterFirst указывает, что любой запрос DNS, не соответствующий настроенному суффиксу домена кластера, передаётся в upstream-сервер имен, унаследованный от узла. Дополнительную информацию см. в разделе «Политика DNS под» в документации Kubernetes.
Допустимые значения: Default | ClusterFirst | ClusterFirstWithHostNet
imagePullSecrets -> (список)
Ссылка на ресурс Kubernetes secret. Он содержит список секретов. Эти секреты помогают получить доступ к извлечению изображений из частного репозитория.
ImagePullSecret$name требуется при использовании этого объекта.(структура)
Ссылка на ресурс Kubernetes secret. Это имя секрета должно начинаться и заканчиваться буквенно-цифровым символом, обязательно быть строчным, может содержать точки (.) и дефисы (-), а также не может содержать более 253 символов.
name -> (строка)
ImagePullSecret. Этот объект требуется при использовании EksPodProperties$imagePullSecrets.containers -> (список)
Свойства контейнера, используемого в узле Amazon EKS Pod.
Примечание
Этот объект ограничен 10 элементами.(структура)
Свойства контейнера EKS используются в определениях задач для задач на основе Amazon EKS для описания свойств узла контейнера в под, запускаемом в рамках задачи. Это не может быть указано для определений задач на основе Amazon ECS.
name -> (строка)
Default ». Каждый контейнер в под должен иметь уникальное имя.image -> (строка)
imagePullPolicy -> (строка)
Always , IfNotPresent и Never . По умолчанию используется значение IfNotPresent . Однако, если указана метка :latest , значение по умолчанию — Always . Дополнительную информацию см. в документации Kubernetes по обновлению изображений.command -> (список)
Точка входа для контейнера. Она не выполняется в оболочке. Если она не указана, используется значение ENTRYPOINT изображения контейнера. Ссылки на переменные среды расшифровываются с использованием среды контейнера.
Если переменная среды, на которую есть ссылка, не существует, ссылка в команде не изменяется. Например, если ссылка указывает на «$(NAME1) », а переменная среды NAME1 не существует, строка команды останется «$(NAME1) ». $$ заменяется на $ , и полученная строка не расшифровывается. Например, $$(VAR_NAME) передается как $(VAR_NAME) независимо от того, существует ли переменная среды VAR_NAME . Точка входа не может быть обновлена. Дополнительную информацию см. в разделе ENTRYPOINT в справочнике Dockerfile и Определение команды и аргументов для контейнера и Точка входа в документации Kubernetes.
(строка)
args -> (список)
Массив аргументов для точки входа. Если он не указан, используется значение CMD изображения контейнера. Это соответствует элементу args в разделе «Точка входа» Pod в Kubernetes. Ссылки на переменные среды расшифровываются с использованием среды контейнера.
Если переменная среды, на которую есть ссылка, не существует, ссылка в команде не изменяется. Например, если ссылка указывает на «$(NAME1) », а переменная среды NAME1 не существует, строка команды останется «$(NAME1) ». $$ заменяется на $ , и полученная строка не расшифровывается. Например, $$(VAR_NAME) передается как $(VAR_NAME) независимо от того, существует ли переменная среды VAR_NAME . Дополнительную информацию см. в справочнике Dockerfile: CMD и Определение команды и аргументов для под в документации Kubernetes.
(строка)
env -> (список)
Переменные среды, передаваемые контейнеру.
Примечание
Переменные среды не могут начинаться с «AWS_BATCH ». Эта соглашение об именовании зарезервировано для переменных, которые устанавливает Batch.(структура)
Переменная среды.
name -> (строка)
value -> (строка)
resources -> (структура)
Тип и количество ресурсов, назначаемых контейнеру. Поддерживаемые ресурсы включают memory , cpu и nvidia.com/gpu . Дополнительную информацию см. в разделе Управление ресурсами для под и контейнеров в документации Kubernetes.
limits -> (карта)
Тип и количество ресурсов, резервируемых для контейнера. Значения зависят от указанного name . Ресурсы можно запросить, используя либо объекты limits , либо requests.
Максимальное значение памяти (в МБ) для контейнера, используя целые числа с суффиксом «МБ». Если контейнер попытается превысить заданное значение памяти, контейнер будет завершен. Для задачи необходимо указать как минимум 4 МБ памяти. memory может быть указано в limits , requests или обоих. Если memory указано в обоих местах, значение, указанное в limits , должно быть равно значению, указанному в requests.
Примечание
Для максимального использования ресурсов предоставьте своим задачам как можно больше памяти для конкретного типа экземпляра, который вы используете. Как это сделать, см. в разделе Управление памятью в Руководстве пользователя Batch.
cpu
Количество ЦП, резервируемых для контейнера. Значения должны быть четным кратным 0.25 . cpu может быть указано в limits , requests или обоих. Если cpu указано в обоих местах, значение, указанное в limits , должно быть по крайней мере таким же большим, как значение, указанное в requests.
Количество графических процессоров, резервируемых для контейнера. Значения должны быть целыми числами. memory может быть указано в limits , requests или обоих. Если memory указано в обоих местах, значение, указанное в limits , должно быть равно значению, указанному в requests.
key -> (строка)
value -> (строка)
requests -> (карта)
Тип и количество ресурсов, запрашиваемых для контейнера. Значения зависят от указанного name . Ресурсы можно запросить, используя либо объекты limits , либо requests.
Максимальное значение памяти (в МБ) для контейнера, используя целые числа с суффиксом «МБ». Если контейнер попытается превысить заданное значение памяти, контейнер будет завершен. Для задачи необходимо указать как минимум 4 МБ памяти. memory может быть указано в limits , requests или обоих. Если memory указано в обоих местах, значение, указанное в limits , должно быть равно значению, указанному в requests.
Примечание
Если вы пытаетесь максимизировать использование ресурсов, предоставляя своим задачам как можно больше памяти для определенного типа экземпляра, см. раздел Управление памятью в Руководстве пользователя Batch.
cpu
Количество ЦП, резервируемых для контейнера. Значения должны быть четным кратным 0.25 . cpu может быть указано в limits , requests или обоих. Если cpu указано в обоих местах, значение, указанное в limits , должно быть по крайней мере таким же большим, как значение, указанное в requests.
Количество графических процессоров, резервируемых для контейнера. Значения должны быть целыми числами. nvidia.com/gpu может быть указано в limits , requests или обоих. Если nvidia.com/gpu указано в обоих местах, значение, указанное в limits , должно быть равно значению, указанному в requests.
key -> (строка)
value -> (строка)
volumeMounts -> (список)
Подмонтированные тома для контейнера. Batch поддерживает типы томов emptyDir , hostPath и secret . Дополнительную информацию о томах и монтировании томов в Kubernetes см. в разделе Тома в документации Kubernetes.
(структура)
Подмонтированные тома для контейнера для задачи Amazon EKS. Дополнительную информацию о томах и монтировании томов в Kubernetes см. в разделе Тома в документации Kubernetes.
name -> (строка)
mountPath -> (строка)
subPath -> (строка)
readOnly -> (логическое значение)
true , контейнер имеет доступ только для чтения к тому. В противном случае контейнер может записывать в том. Значение по умолчанию — false.securityContext -> (структура)
Контекст безопасности для задания. Дополнительную информацию см. в разделе Настройка контекста безопасности для под или контейнера в документации Kubernetes.
runAsUser -> (long)
uid). Если этот параметр не указан, используется пользователь, указанный в метаданных образа. Данный параметр соответствует RunAsUser и MustRanAs политике в разделе Пользователи и группы в политиках безопасности Pods в документации Kubernetes.runAsGroup -> (long)
gid). Если этот параметр не указан, используется группа, указанная в метаданных образа. Этот параметр соответствует RunAsGroup и MustRunAs политике в разделе Пользователи и группы в политиках безопасности Pods в документации Kubernetes.privileged -> (boolean)
root. Значение по умолчанию — false. Этот параметр соответствует privileged политике в разделе Разрешения в политиках безопасности Pods в документации Kubernetes.allowPrivilegeEscalation -> (boolean)
false.readOnlyRootFilesystem -> (boolean)
false. Этот параметр соответствует ReadOnlyRootFilesystem политике в разделе Тома и файловые системы в политиках безопасности Pods в документации Kubernetes.runAsNonRoot -> (boolean)
uid). Если этот параметр не указан, такое правило не применяется. Этот параметр соответствует RunAsUser и MustRunAsNonRoot политике в разделе Пользователи и группы в политиках безопасности Pods в документации Kubernetes.initContainers -> (list)
Эти контейнеры выполняются до контейнеров приложения, всегда доводятся до завершения и должны завершиться успешно перед запуском следующего контейнера. Эти контейнеры регистрируются с агентом Amazon EKS Connector и сохраняют информацию о регистрации в хранилище данных Kubernetes. Для получения дополнительной информации см. Контейнеры инициализации в документации Kubernetes.
Примечание
Этот объект ограничен 10 элементами.(структура)
Свойства контейнеров EKS используются в определениях задач для определений задач на основе Amazon EKS для описания свойств узла контейнера в под, который запускается как часть задачи. Это не может быть указано для определений задач на основе Amazon ECS.
name -> (строка)
Default ». Каждый контейнер в под должен иметь уникальное имя.image -> (строка)
imagePullPolicy -> (строка)
Always , IfNotPresent и Never . По умолчанию используется значение IfNotPresent . Однако, если указан тег :latest , значение по умолчанию — Always . Для получения дополнительной информации см. Обновление изображений в документации Kubernetes.command -> (список)
Точка входа для контейнера. Это не выполняется в оболочке. Если это не указано, используется ENTRYPOINT образа контейнера. Ссылки на переменные среды расширяются с использованием среды контейнера.
Если указанная переменная среды не существует, ссылка в команде не изменяется. Например, если ссылка относится к «$(NAME1) », а переменная среды NAME1 не существует, строка команды останется «$(NAME1) ». $$ заменяется на $, и полученная строка не расширяется. Например, $$(VAR_NAME) будет передано как $(VAR_NAME), независимо от существования переменной среды VAR_NAME. Точку входа нельзя обновить. Для получения дополнительной информации см. ENTRYPOINT в справочнике Dockerfile и Определение команды и аргументов для контейнера и Точка входа в документации Kubernetes.
(строка)
args -> (список)
Массив аргументов для точки входа. Если это не указано, используется CMD образа контейнера. Это соответствует члену args в разделе Точка входа в Под в Kubernetes. Ссылки на переменные среды расширяются с использованием среды контейнера.
Если указанная переменная среды не существует, ссылка в команде не изменяется. Например, если ссылка относится к «$(NAME1) », а переменная среды NAME1 не существует, строка команды останется «$(NAME1) ». $$ заменяется на $, и полученная строка не расширяется. Например, $$(VAR_NAME) передаётся как $(VAR_NAME), независимо от существования переменной среды VAR_NAME. Для получения дополнительной информации см. Справочник Dockerfile: CMD и Определение команды и аргументов для под в документации Kubernetes.
(строка)
env -> (список)
Переменные среды, передаваемые контейнеру.
Примечание
Переменные среды не могут начинаться с «AWS_BATCH ». Эта соглашение об именовании зарезервировано для переменных, которые устанавливает Batch.(структура)
Переменная среды.
name -> (строка)
value -> (строка)
resources -> (структура)
Тип и количество ресурсов, назначаемых контейнеру. Поддерживаемые ресурсы включают memory , cpu и nvidia.com/gpu . Для получения дополнительной информации см. Управление ресурсами для под и контейнеров в документации Kubernetes.
limits -> (карта)
Тип и количество ресурсов, резервируемых для контейнера. Значения зависят от указанного name . Ресурсы могут быть запрошены с помощью объектов limits или requests.
Жесткое ограничение памяти (в МиБ) для контейнера, используя целые числа с суффиксом «Ми». Если контейнер пытается превысить указанную память, контейнер завершается. Для задачи необходимо указать как минимум 4 МиБ памяти. memory может быть указано в limits , requests или обоих. Если memory указано в обоих местах, то значение, указанное в limits, должно быть равно значению, указанному в requests.
Примечание
Для максимального использования ресурсов предоставьте задачам как можно больше памяти для конкретного типа экземпляра, который вы используете. Узнайте как в разделе Управление памятью в Руководстве пользователя Batch.
cpu
Количество ЦП, зарезервированных для контейнера. Значения должны быть целыми кратными 0.25. cpu можно указать в limits , requests или обоих. Если cpu указано в обоих местах, то значение, указанное в limits, должно быть не меньше значения, указанного в requests.
Количество графических процессоров, зарезервированных для контейнера. Значения должны быть целыми числами. memory может быть указано в limits , requests или обоих. Если memory указано в обоих местах, то значение, указанное в limits, должно быть равно значению, указанному в requests.
key -> (строка)
value -> (строка)
requests -> (карта)
Тип и количество ресурсов, запрашиваемых для контейнера. Значения зависят от указанного name . Ресурсы могут быть запрошены с помощью объектов limits или requests.
Жесткое ограничение памяти (в МиБ) для контейнера, используя целые числа с суффиксом «Ми». Если контейнер пытается превысить указанную память, контейнер завершается. Для задачи необходимо указать как минимум 4 МиБ памяти. memory может быть указано в limits , requests или обоих. Если memory указано в обоих местах, то значение, указанное в limits, должно быть равно значению, указанному в requests.
Примечание
Если вы пытаетесь максимизировать использование ресурсов, предоставляя задачам как можно больше памяти для определенного типа экземпляра, обратитесь к разделу Управление памятью в Руководстве пользователя Batch.
cpu
Количество ЦП, зарезервированных для контейнера. Значения должны быть целыми кратными 0.25. cpu можно указать в limits , requests или обоих. Если cpu указано в обоих местах, то значение, указанное в limits, должно быть не меньше значения, указанного в requests.
Количество графических процессоров, зарезервированных для контейнера. Значения должны быть целыми числами. nvidia.com/gpu может быть указано в limits , requests или обоих. Если nvidia.com/gpu указано в обоих местах, то значение, указанное в limits, должно быть равно значению, указанному в requests.
key -> (строка)
value -> (строка)
volumeMounts -> (список)
Точки монтирования томов для контейнера. Batch поддерживает типы томов emptyDir , hostPath и secret . Для получения дополнительной информации о томах и точках монтирования томов в Kubernetes см. Тома в документации Kubernetes.
(структура)
Точки монтирования томов для контейнера для задачи Amazon EKS. Для получения дополнительной информации о томах и точках монтирования томов в Kubernetes см. Тома в документации Kubernetes.
name -> (строка)
mountPath -> (строка)
subPath -> (строка)
readOnly -> (логическое значение)
true , контейнер имеет только чтение для тома. В противном случае контейнер может записывать в том. Значение по умолчанию — false.securityContext -> (структура)
Контекст безопасности для задания. Дополнительную информацию см. в разделе Настройка контекста безопасности для под или контейнера в документации Kubernetes.
runAsUser -> (long)
uid). Если этот параметр не указан, по умолчанию используется пользователь, указанный в метаданных изображения. Этот параметр соответствует параметрам RunAsUser и MustRanAs политики в разделе Пользователи и группы политик безопасности под в документации Kubernetes.runAsGroup -> (long)
gid). Если этот параметр не указан, по умолчанию используется группа, указанная в метаданных изображения. Этот параметр соответствует параметрам RunAsGroup и MustRunAs политики в разделе Пользователи и группы политик безопасности под в документации Kubernetes.privileged -> (boolean)
root. Значение по умолчанию - false. Этот параметр соответствует политике privileged в разделе Привилегированные политики безопасности под в документации Kubernetes.allowPrivilegeEscalation -> (boolean)
false.readOnlyRootFilesystem -> (boolean)
false. Этот параметр соответствует политике ReadOnlyRootFilesystem в разделе Тома и файловые системы политик безопасности под в документации Kubernetes.runAsNonRoot -> (boolean)
uid). Если этот параметр не указан, такая политика не применяется. Этот параметр соответствует параметрам RunAsUser и MustRunAsNonRoot политики в разделе Пользователи и группы политик безопасности под в документации Kubernetes.volumes -> (list)
Указывает тома для определения задания, использующего ресурсы Amazon EKS.
(структура)
Указывает том Amazon EKS для определения задания.
name -> (string)
hostPath -> (structure)
Указывает конфигурацию тома Kubernetes hostPath. Дополнительную информацию см. в разделе hostPath в документации Kubernetes.
path -> (string)
emptyDir -> (structure)
Указывает конфигурацию тома Kubernetes emptyDir. Дополнительную информацию см. в разделе emptyDir в документации Kubernetes.
medium -> (string)
Носитель для хранения тома. Значение по умолчанию — пустая строка, использующая хранилище узла.
(По умолчанию) Используйте дисковое хранилище узла.
Используйте том tmpfs, поддерживаемый ОЗУ узла. Содержимое тома теряется при перезагрузке узла, и любое хранилище в томе учитывается в пределе памяти контейнера.
sizeLimit -> (string)
secret -> (structure)
Указывает конфигурацию тома Kubernetes secret. Дополнительную информацию см. в разделе secret в документации Kubernetes.
secretName -> (string)
optional -> (boolean)
persistentVolumeClaim -> (structure)
Указывает конфигурацию Kubernetes-тома, привязанного к persistentVolume. Дополнительную информацию см. в разделе Постоянные объемы требований в документации Kubernetes.
claimName -> (string)
persistentVolumeClaim, привязанного к persistentVolume. Дополнительную информацию см. в разделе Постоянные объемы требований в документации Kubernetes.readOnly -> (boolean)
metadata -> (structure)
Метаданные о Kubernetes-поде. Дополнительную информацию см. в разделе Понимание Kubernetes-объектов в документации Kubernetes.
labels -> (map)
Ключево-значные пары, используемые для идентификации, сортировки и организации ресурсов куба. Может содержать до 63 заглавных и строчных букв, цифр, дефисов (-) и подчеркиваний (_). Метки можно добавлять или изменять в любое время. Каждый ресурс может иметь несколько меток, но каждый ключ должен быть уникальным для данного объекта.
key -> (string)
value -> (string)
annotations -> (map)
Ключево-значные пары, используемые для добавления произвольных, не идентифицирующих метаданных к объектам Kubernetes. Валидные ключи аннотаций имеют два сегмента: необязательный префикс и имя, разделенные косой чертой (/).
- Префикс необязателен и должен быть не более 253 символов. Если указан, префикс должен быть поддоменом DNS — серией меток DNS, разделенных точками (.), и должен заканчиваться косой чертой (/).
- Сегмент имени обязателен и должен быть не более 63 символов. Он может содержать буквенно-цифровые символы ([a-z0-9A-Z]), дефисы (-), подчеркивания (_) и точки (.), но должен начинаться и заканчиваться буквенно-цифровым символом.
Примечание
Значения аннотаций должны быть не более 255 символов.Аннотации можно добавлять или изменять в любое время. Каждый ресурс может иметь несколько аннотаций.
key -> (string)
value -> (string)
namespace -> (string)
Имя пространства Amazon EKS-кластера. В Kubernetes пространства имен обеспечивают механизм изоляции групп ресурсов в одном кластере. Имена ресурсов должны быть уникальными в пределах одного пространства имен, но не в разных пространствах имен. Задания Batch размещают контейнеры Batch Job в этом пространстве имен. Если этот параметр указан, значение не может быть пустым или нулевым. Оно должно соответствовать следующим требованиям:
- Длина от 1 до 63 символов
- Не может быть установлено значение «default»
- Не может начинаться с
kube - Должно соответствовать следующему регулярному выражению:
^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
Дополнительную информацию см. в разделе Пространства имен в документации Kubernetes. Это пространство имен может отличаться от пространства имен, заданного в среде вычислений EksConfiguration, но должно иметь одинаковые роли управления доступом на основе ролей (RBAC) как пространство имен среды вычислений kubernetesNamespace. Для заданий с параллельным выполнением на нескольких узлах необходимо указать одинаковое значение для всех диапазонов узлов.
shareProcessNamespace -> (boolean)
Синтаксис JSON:
{
"podProperties": {
"serviceAccountName": "string",
"hostNetwork": true|false,
"dnsPolicy": "string",
"imagePullSecrets": [
{
"name": "string"
}
...
],
"containers": [
{
"name": "string",
"image": "string",
"imagePullPolicy": "string",
"command": ["string", ...],
"args": ["string", ...],
"env": [
{
"name": "string",
"value": "string"
}
...
],
"resources": {
"limits": {"string": "string"
...},
"requests": {"string": "string"
...}
},
"volumeMounts": [
{
"name": "string",
"mountPath": "string",
"subPath": "string",
"readOnly": true|false
}
...
],
"securityContext": {
"runAsUser": long,
"runAsGroup": long,
"privileged": true|false,
"allowPrivilegeEscalation": true|false,
"readOnlyRootFilesystem": true|false,
"runAsNonRoot": true|false
}
}
...
],
"initContainers": [
{
"name": "string",
"image": "string",
"imagePullPolicy": "string",
"command": ["string", ...],
"args": ["string", ...],
"env": [
{
"name": "string",
"value": "string"
}
...
],
"resources": {
"limits": {"string": "string"
...},
"requests": {"string": "string"
...}
},
"volumeMounts": [
{
"name": "string",
"mountPath": "string",
"subPath": "string",
"readOnly": true|false
}
...
],
"securityContext": {
"runAsUser": long,
"runAsGroup": long,
"privileged": true|false,
"allowPrivilegeEscalation": true|false,
"readOnlyRootFilesystem": true|false,
"runAsNonRoot": true|false
}
}
...
],
"volumes": [
{
"name": "string",
"hostPath": {
"path": "string"
},
"emptyDir": {
"medium": "string",
"sizeLimit": "string"
},
"secret": {
"secretName": "string",
"optional": true|false
},
"persistentVolumeClaim": {
"claimName": "string",
"readOnly": true|false
}
}
...
],
"metadata": {
"labels": {"string": "string"
...},
"annotations": {"string": "string"
...},
"namespace": "string"
},
"shareProcessNamespace": true|false
}
}
--ecs-properties (структура)
Объект со свойствами, специфичными для заданий на основе Amazon ECS. Этот параметр не должен указываться для заданий на основе Amazon EKS.
taskProperties -> (список)
Объект, содержащий свойства определения задачи Amazon ECS для задания.
Примечание
В настоящее время этот объект ограничен одним элементом задачи. Однако элемент задачи может запускать до 10 контейнеров.(структура)
Свойства определения задачи, описывающие определения контейнеров и томов задачи Amazon ECS. Вы можете указать, какие образы Docker использовать, необходимые ресурсы и другие конфигурации, связанные с запуском определения задачи через Amazon ECS-сервис или задачу.
containers -> (список)
Этот объект представляет собой список контейнеров.
(структура)
Свойства контейнеров используются для определений заданий на основе Amazon ECS. Эти свойства описывают контейнер, запускаемый в рамках задания.
command -> (список)
Команда, передаваемая контейнеру. Этот параметр соответствует Cmd в разделе «Создание контейнера» удаленного API Docker и параметру COMMAND параметру к команде docker run. Дополнительную информацию см. в справке по Dockerfile: CMD.
(строка)
dependsOn -> (список)
Список контейнеров, от которых зависит данный контейнер.
(структура)
Список контейнеров, от которых зависит данная задача.
containerName -> (строка)
condition -> (строка)
Условие зависимости контейнера. Доступные условия и их поведение:
-
START- Это условие имитирует поведение связей и томов сегодня. Оно проверяет, что зависимый контейнер запущен до разрешения запуска других контейнеров. -
COMPLETE- Это условие проверяет, что зависимый контейнер завершил выполнение (вышел) до разрешения запуска других контейнеров. Это может быть полезно для необязательных контейнеров, выполняющих скрипт, а затем завершающих работу. Это условие не может быть установлено для основного контейнера. -
SUCCESS- Это условие такое же, какCOMPLETE, но также требует, чтобы контейнер завершился с нулевым статусом. Это условие не может быть установлено для основного контейнера.
environment -> (список)
Переменные среды, передаваемые контейнеру. Этот параметр соответствует параметру Env в разделе «Создание контейнера» удаленного API Docker и параметру --env к команде docker run.
Предупреждение
Не рекомендуется использовать текстовые переменные среды для конфиденциальной информации, например, данных для аутентификации.Примечание
Переменные среды не могут начинаться сAWS_BATCH. Эта соглашение об именовании зарезервировано для переменных, которые устанавливаются Batch.(структура)
Объект пары «ключ-значение».
name -> (строка)
value -> (строка)
essential -> (булево)
Если для параметра essential контейнера установлено значение true, и этот контейнер выходит из строя или останавливается по любой причине, все другие контейнеры, входящие в задачу, остановятся. Если параметр essential контейнера установлен в значение false, его выход из строя не повлияет на остальные контейнеры в задаче. Если этот параметр опущен, контейнер считается основным.
Все задания должны иметь как минимум один основной контейнер. Если у вас приложение, состоящее из нескольких контейнеров, сгруппируйте контейнеры, используемые для одной цели, в компоненты, а различные компоненты разделите на несколько определений задач. Дополнительную информацию см. в разделе «Архитектура приложений» в руководстве разработчика Amazon Elastic Container Service.
firelensConfiguration -> (структура)
Конфигурация FireLens для контейнера. Используется для указания и настройки маршрутизатора журналов для журналов контейнера. Дополнительную информацию см. в разделе «Настройка маршрутизации журналов» в руководстве разработчика Amazon Elastic Container Service.
type -> (строка)
fluentd или fluentbit.options -> (карта)
Параметры, используемые при настройке маршрутизатора журналов. Это поле необязательно и может использоваться для указания файла конфигурации пользовательского конфигурации или добавления дополнительных метаданных, таких как данные задачи, определения задачи, кластера и экземпляра контейнера, в событие журнала. Если указано, используется синтаксис "options":{"enable-ecs-log-metadata":"true|false","config-file-type:"s3|file","config-file-value":"arn:aws:s3:::mybucket/fluent.conf|filepath"}. Дополнительную информацию см. в разделе «Создание определения задачи с использованием конфигурации FireLens» в руководстве разработчика Amazon Elastic Container Service.
key -> (строка)
value -> (строка)
image -> (строка)
repository-url/image:tag или repository-url/image@digest. Разрешается до 255 символов (строчные и прописные буквы), цифр, дефисов, подчеркиваний, двоеточий, точек, слешей и знаков решетки. Этот параметр соответствует Image в разделе «Создание контейнера» удаленного API Docker и параметру IMAGE параметру команды ` docker run https://docs.docker.com/engine/reference/run/#security-configuration`__.linuxParameters -> (структура)
Модификации, специфичные для Linux, которые применяются к контейнеру, такие как возможности ядра Linux. Дополнительную информацию см. в разделе KernelCapabilities .
devices -> (список)
Любые устройства хоста, которые необходимо экспонировать контейнеру. Этот параметр соответствует Devices в разделе «Создание контейнера» в Docker Remote API и параметру --device команды docker run .
Примечание
Этот параметр не применим к задачам, выполняющимся на ресурсах Fargate. Не предоставляйте его для этих задач.(структура)
Объект, представляющий устройство хоста контейнера.
Примечание
Этот объект не применим к задачам, выполняющимся на ресурсах Fargate, и его не следует предоставлять.hostPath -> (строка)
containerPath -> (строка)
hostPath.permissions -> (список)
Явные разрешения, предоставляемые контейнеру для устройства. По умолчанию контейнер имеет разрешения на read , write и mknod для устройства.
(строка)
initProcessEnabled -> (булево)
init внутри контейнера, который перенаправляет сигналы и собирает процессы. Этот параметр соответствует параметру --init команды docker run . Этот параметр требует версии Docker Remote API 1.25 или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"
sharedMemorySize -> (целое число)
Значение размера (в MiB) тома /dev/shm . Этот параметр соответствует параметру --shm-size команды docker run .
Примечание
Этот параметр не применим к задачам, выполняющимся на ресурсах Fargate. Не предоставляйте его для этих задач.tmpfs -> (список)
Путь контейнера, параметры монтирования и размер (в MiB) точки монтирования tmpfs . Этот параметр соответствует параметру --tmpfs команды docker run .
Примечание
Этот параметр не применим к задачам, выполняющимся на ресурсах Fargate. Не предоставляйте этот параметр для этого типа ресурсов.(структура)
Путь контейнера, параметры монтирования и размер точки монтирования tmpfs .
Примечание
Этот объект не применим к задачам, выполняющимся на ресурсах Fargate.containerPath -> (строка)
tmpfs .size -> (целое число)
tmpfs .mountOptions -> (список)
Список параметров монтирования тома tmpfs .
Допустимые значения: “defaults “ | “ro “ | “rw “ | “suid “ | “nosuid “ | “dev “ | “nodev “ | “exec “ | “noexec “ | “sync “ | “async “ | “dirsync “ | “remount “ | “mand “ | “nomand “ | “atime “ | “noatime “ | “diratime “ | “nodiratime “ | “bind “ | “rbind" | "unbindable" | "runbindable" | "private" | "rprivate" | "shared" | "rshared" | "slave" | "rslave" | "relatime “ | “norelatime “ | “strictatime “ | “nostrictatime “ | “mode “ | “uid “ | “gid “ | “nr_inodes “ | “nr_blocks “ | “mpol “
(строка)
maxSwap -> (целое число)
Общий объем памяти подкачки (в MiB), который может использовать контейнер. Этот параметр преобразуется в параметр --memory-swap команды docker run, где значение представляет собой сумму памяти контейнера и значения maxSwap . Дополнительную информацию см. в разделе ` --memory-swap <https://docs.docker.com/config/containers/resource_constraints/#–memory-swap-details>`__ в документации Docker.
Если задано значение maxSwap 0 , контейнер не использует подкачку. Допустимые значения — 0 или любое положительное целое число. Если параметр maxSwap опущен, контейнер не использует настройки подкачки для экземпляра контейнера, на котором он выполняется. Значение maxSwap должно быть задано для использования параметра swappiness .
Примечание
Этот параметр не применим к задачам, выполняющимся на ресурсах Fargate. Не предоставляйте его для этих задач.swappiness -> (целое число)
Этот параметр позволяет настроить поведение подкачки памяти контейнера. Значение swappiness 0 приводит к тому, что подкачка происходит только в случае крайней необходимости. Значение swappiness 100 приводит к агрессивной подкачке страниц. Допустимые значения — целые числа от 0 до 100 . Если параметр swappiness не указан, используется значение по умолчанию 60 . Если значение не указано для maxSwap , этот параметр игнорируется. Если maxSwap установлено в 0, контейнер не использует подкачку. Этот параметр соответствует параметру --memory-swappiness команды docker run .
Следует учитывать следующее при использовании конфигурации подкачки на уровне контейнера.
- Для использования подкачки контейнерами, она должна быть включена и выделена на экземпляре контейнера.
Примечание
По умолчанию в оптимизированных AMI Amazon ECS подкачка отключена. Чтобы использовать эту функцию, необходимо включить подкачку на экземпляре. Дополнительную информацию см. в разделе «Тома подкачки хранилища экземпляров» в руководстве пользователя Amazon EC2 для Linux-экземпляров или «Как выделить память для использования в качестве пространства подкачки в экземпляре Amazon EC2 с использованием файла подкачки?»- Параметры пространства подкачки поддерживаются только для определений задач, использующих ресурсы EC2.
- Если параметры
maxSwapиswappinessопущены из определения задачи, у каждого контейнера используется значениеswappinessпо умолчанию, равное 60. Кроме того, общее использование подкачки ограничено двумя значениями резервирования памяти контейнера.
Примечание
Этот параметр не применим к задачам, выполняющимся на ресурсах Fargate. Не предоставляйте его для этих задач.logConfiguration -> (структура)
Спецификация конфигурации ведения журнала для контейнера.
Этот параметр соответствует LogConfig в разделе «Создание контейнера» в Docker Remote API и параметру --log-driver для команды docker run.
По умолчанию контейнеры используют тот же драйвер ведения журнала, что и демон Docker. Однако контейнер может использовать другой драйвер ведения журнала, отличного от используемого демоном Docker, указав драйвер журнала в определении контейнера. Чтобы использовать другой драйвер ведения журнала для контейнера, система журналов должна быть должным образом настроена на экземпляре контейнера (или на другом сервере журналов для удаленных вариантов ведения журнала). Дополнительную информацию о параметрах различных поддерживаемых драйверов журналов см. в разделе «Настройка драйверов ведения журналов» в документации Docker.
Примечание
Amazon ECS в настоящее время поддерживает подмножество драйверов ведения журналов, доступных демону Docker (показано в типе данныхLogConfiguration). Дополнительные драйверы журналов могут быть доступны в будущих выпусках агента Amazon ECS для контейнеров.Для этого параметра требуется версия 1.18 Docker Remote API или более поздняя на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version --format '{{.Server.APIVersion}}'
Примечание
Агент Amazon ECS, работающий на экземпляре контейнера, должен зарегистрировать доступные на этом экземпляре драйверы ведения журналов с переменной средыECS_AVAILABLE_LOGGING_DRIVERS, прежде чем контейнеры, размещенные на этом экземпляре, смогут использовать эти параметры конфигурации журналов. Дополнительную информацию см. в разделе «Конфигурация агента Amazon ECS для контейнеров» в Руководстве разработчика Amazon Elastic Container Service.logDriver -> (строка)
Драйвер ведения журнала, который следует использовать для контейнера. Допустимые значения, перечисленные для этого параметра, — это драйверы журналов, с которыми агент Amazon ECS для контейнеров может взаимодействовать по умолчанию.
Поддерживаемые драйверы журналов — awslogs , fluentd , gelf , json-file , journald , logentries , syslog и splunk.
Примечание
Задачи, выполняемые на ресурсах Fargate, ограничены драйверами журналов awslogs и splunk.
awsfirelens
Указывает драйвер ведения журнала firelens. Дополнительную информацию о настройке Firelens см. в разделе «Отправка журналов Amazon ECS в сервис Amazon Web Services или партнера Amazon Web Services» в Руководстве разработчика Amazon Elastic Container Service.
Указывает драйвер ведения журнала Amazon CloudWatch Logs. Дополнительную информацию см. в разделе «Использование драйвера журнала awslogs» в Руководстве пользователя Batch и в разделе «Драйвер ведения журнала Amazon CloudWatch Logs» в документации Docker.
Указывает драйвер ведения журнала Fluentd. Дополнительную информацию, включая использование и параметры, см. в разделе «Драйвер ведения журнала Fluentd» в документации Docker.
Указывает драйвер ведения журнала Graylog Extended Format (GELF). Дополнительную информацию, включая использование и параметры, см. в разделе «Драйвер ведения журнала Graylog Extended Format» в документации Docker.
Указывает драйвер ведения журнала journald. Дополнительную информацию, включая использование и параметры, см. в разделе «Драйвер ведения журнала journald» в документации Docker.
Указывает драйвер ведения журнала JSON-файла. Дополнительную информацию, включая использование и параметры, см. в разделе «Драйвер ведения журнала JSON-файла» в документации Docker.
Указывает драйвер ведения журнала Splunk. Дополнительную информацию, включая использование и параметры, см. в разделе «Драйвер ведения журнала Splunk» в документации Docker.
Указывает драйвер ведения журнала syslog. Дополнительную информацию, включая использование и параметры, см. в разделе «Драйвер ведения журнала syslog» в документации Docker.
Примечание
Если у вас есть пользовательский драйвер, который не перечислен выше, с которым вы хотите работать с агентом Amazon ECS для контейнеров, вы можете создать форк проекта агента Amazon ECS для контейнеров, доступного на GitHub, и настроить его для работы с этим драйвером. Мы рекомендуем отправлять запросы на включение необходимых изменений. Однако в настоящее время Amazon Web Services не поддерживает запуск измененных копий этого программного обеспечения.Для этого параметра требуется версия 1.18 Docker Remote API или более поздняя на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"
options -> (карта)
Параметры конфигурации для отправки драйверу ведения журнала. Для этого параметра требуется версия 1.19 Docker Remote API или более поздняя на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"
key -> (строка)
value -> (строка)
secretOptions -> (список)
Секреты для передачи в конфигурацию ведения журнала. Дополнительную информацию см. в разделе «Указание конфиденциальных данных» в Руководстве пользователя Batch.
(структура)
Объект, представляющий секрет, который необходимо открыть для вашего контейнера. Секреты могут быть открыты для контейнера следующим образом:
- Чтобы ввести конфиденциальные данные в контейнеры в виде переменных окружения, используйте параметр определения контейнера
secrets. - Чтобы сослаться на конфиденциальную информацию в конфигурации ведения журнала контейнера, используйте параметр определения контейнера
secretOptions.
Дополнительную информацию см. в разделе «Указание конфиденциальных данных» в Руководстве пользователя Batch.
name -> (строка)
valueFrom -> (строка)
Секрет для открытия в контейнере. Поддерживаемые значения — это полный Amazon Resource Name (ARN) секрета Secrets Manager или полный ARN параметра в хранилище параметров Amazon Web Services Systems Manager.
Примечание
Если параметр хранилища параметров Amazon Web Services Systems Manager существует в той же области, что и задача, которую вы запускаете, вы можете использовать либо полный Amazon Resource Name (ARN), либо имя параметра. Если параметр существует в другой области, необходимо указать полный ARN.mountPoints -> (список)
Точки монтирования томов данных в вашем контейнере.
Этот параметр соответствует Volumes в разделе «Создание контейнера» в Docker Remote API и параметру –volume в `docker run`.
Контейнеры Windows могут монтировать целые каталоги на том же диске, что и $env:ProgramData. Контейнеры Windows не могут монтировать каталоги на другом диске, и точка монтирования не может быть между дисками.
(структура)
Подробности о точке монтирования тома Docker, используемого в свойствах контейнера задачи. Этот параметр соответствует Volumes в разделе «Создание контейнера» в Docker Remote API и параметру --volume для команды docker run.
containerPath -> (строка)
readOnly -> (булево)
true, доступ контейнера к тому — только для чтения. В противном случае контейнер может записывать в том. Значение по умолчанию — false.sourceVolume -> (строка)
name -> (строка)
dependsOn и Overrides.privileged -> (булево)
Когда этот параметр равен true, контейнеру предоставляются повышенные привилегии на экземпляре хост-контейнера (по аналогии с пользователем root). Этот параметр соответствует Privileged в разделе «Создание контейнера» в Docker Remote API и параметру --privileged для команды docker run.
Примечание
Этот параметр не поддерживается для контейнеров Windows или задач, выполняемых на Fargate.readonlyRootFilesystem -> (булево)
Когда этот параметр равен true, контейнеру предоставляется доступ только для чтения к его файловой системе корневого каталога. Этот параметр соответствует ReadonlyRootfs в разделе «Создание контейнера» в Docker Remote API и параметру --read-only для команды docker run.
Примечание
Этот параметр не поддерживается для контейнеров Windows.repositoryCredentials -> (структура)
Учетные данные аутентификации частного репозитория для использования.
credentialsParameter -> (строка)
resourceRequirements -> (список)
Тип и количество ресурсов, которые нужно назначить контейнеру. Поддерживается только ресурс GPU.
(структура)
Тип и количество ресурсов, которые нужно назначить контейнеру. Поддерживаемые ресурсы включают GPU , MEMORY и VCPU .
значение -> (строка)
Количество указанного ресурса, который нужно зарезервировать для контейнера. Значения зависят от указанного type.
Количество физических GPU, которые нужно зарезервировать для контейнера. Убедитесь, что общее количество GPU, зарезервированных для всех контейнеров в задаче, не превышает количество доступных GPU на вычислительном ресурсе, на котором запускается задача.
Примечание
GPU недоступны для задач, выполняемых на ресурсах Fargate.
тип=”MEMORY”
Максимальное ограничение памяти (в МБ), предоставляемое контейнеру. Этот параметр поддерживается для задач, выполняемых на ресурсах Amazon EC2. Если контейнер пытается превысить указанный объем памяти, контейнер завершается. Этот параметр соответствует Memory в разделе «Создание контейнера» в Docker Remote API и параметру --memory команды docker run. Для задачи необходимо указать как минимум 4 МБ памяти. Это обязательно, но может быть указано в нескольких местах для задач с многоузловым параллельным выполнением (MNP). Оно должно быть указано для каждого узла хотя бы один раз. Этот параметр соответствует Memory в разделе «Создание контейнера» в Docker Remote API и параметру --memory команды docker run.
Примечание
Если вы хотите максимизировать использование ресурсов, предоставляя своим задачам как можно больше памяти для определенного типа экземпляра, обратитесь к разделу «Управление памятью» в руководстве пользователя Batch.Для задач, выполняемых на ресурсах Fargate, value является жестким ограничением (в МБ) и должно соответствовать одному из поддерживаемых значений, а VCPU должно быть одним из значений, поддерживаемых для этого значения памяти.
VCPU = 0.25
VCPU = 0.25 или 0.5
VCPU = 0.25, 0.5 или 1
VCPU = 0.5 или 1
VCPU = 0.5, 1 или 2
VCPU = 1 или 2
VCPU = 1, 2 или 4
VCPU = 2 или 4
VCPU = 2, 4 или 8
VCPU = 4
VCPU = 4 или 8
VCPU = 8
VCPU = 8 или 16
VCPU = 16
Количество выделенных виртуальных процессоров (vCPU) для контейнера. Этот параметр соответствует CpuShares в разделе «Создание контейнера» в Docker Remote API и параметру --cpu-shares команды docker run. Каждый vCPU эквивалентен 1024 CPU-долям. Для ресурсов Amazon EC2 необходимо указать как минимум один vCPU. Это обязательно, но может быть указано в нескольких местах; оно должно быть указано для каждого узла хотя бы один раз.
Значение по умолчанию для квоты ресурсов Fargate On-Demand vCPU составляет 6 vCPU. Дополнительную информацию о квотах Fargate см. в разделе «Квоты Fargate» в Общей справке Amazon Web Services.
Для задач, выполняемых на ресурсах Fargate, value должно соответствовать одному из поддерживаемых значений, а MEMORY — одному из значений, поддерживаемых для этого значения VCPU. Поддерживаемые значения: 0.25, 0.5, 1, 2, 4, 8 и 16
MEMORY = 512, 1024 или 2048
MEMORY = 1024, 2048, 3072 или 4096
MEMORY = 2048, 3072, 4096, 5120, 6144, 7168 или 8192
MEMORY = 4096, 5120, 6144, 7168, 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360 или 16384
MEMORY = 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, 16384, 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696 или 30720
MEMORY = 16384, 20480, 24576, 28672, 32768, 36864, 40960, 45056, 49152, 53248, 57344 или 61440
MEMORY = 32768, 40960, 49152, 57344, 65536, 73728, 81920, 90112, 98304, 106496, 114688 или 122880
тип -> (строка)
GPU , MEMORY и VCPU .секреты -> (список)
Секреты, которые нужно передать контейнеру. Дополнительную информацию см. в разделе «Указание конфиденциальных данных» в руководстве разработчика Amazon Elastic Container Service.
(структура)
Объект, представляющий секрет, который нужно предоставить контейнеру. Секреты могут быть предоставлены контейнеру следующим образом:
- Для внедрения конфиденциальных данных в контейнеры в качестве переменных среды используйте параметр определения контейнера
secrets. - Для ссылки на конфиденциальную информацию в конфигурации журналов контейнера используйте параметр определения контейнера
secretOptions.
Дополнительную информацию см. в разделе «Указание конфиденциальных данных» в руководстве пользователя Batch.
имя -> (строка)
значениеИз -> (строка)
Секрет для предоставления контейнеру. Поддерживаемые значения — это полный Amazon Resource Name (ARN) секрета Secrets Manager или полный ARN параметра в Amazon Web Services Systems Manager Parameter Store.
Примечание
Если параметр Amazon Web Services Systems Manager Parameter Store существует в той же области, что и задача, которую вы запускаете, то вы можете использовать либо полный Amazon Resource Name (ARN), либо имя параметра. Если параметр находится в другой области, то необходимо указать полный ARN.ограничения -> (список)
Список ulimits , которые нужно установить в контейнере. Если значение ulimit указано в определении задачи, оно переопределяет значения по умолчанию, заданные Docker. Этот параметр соответствует Ulimits в разделе «Создание контейнера» в Docker Remote API и параметру --ulimit команды docker run.
Задачи Amazon ECS, размещенные на Fargate, используют значения ограничений ресурсов по умолчанию, заданные операционной системой, за исключением параметра ограничения nofile, который Fargate переопределяет. Параметр ограничения nofile устанавливает ограничение на количество открытых файлов, которые может использовать контейнер. Значение по умолчанию для мягкого ограничения nofile равно 1024, а жесткое ограничение по умолчанию равно 65535.
Для этого параметра требуется версия Docker Remote API 1.18 или более поздняя версия на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на своем экземпляре контейнера, войдите в него и выполните следующую команду: sudo docker version --format '{{.Server.APIVersion}}'
Примечание
Этот параметр не поддерживается для контейнеров Windows.(структура)
ulimit параметры, которые нужно передать контейнеру. Дополнительную информацию см. в разделе «Ограничения».
Примечание
Этот объект не применим к задачам, выполняемым на ресурсах Fargate.жесткоеОграничение -> (целое число)
ulimit.имя -> (строка)
type ulimit . Допустимые значения: core | cpu | data | fsize | locks | memlock | msgqueue | nice | nofile | nproc | rss | rtprio | rttime | sigpending | stack.мягкоеОграничение -> (целое число)
ulimit.пользователь -> (строка)
Пользователь, который нужно использовать внутри контейнера. Этот параметр соответствует Пользователь в разделе «Создание контейнера» Docker Remote API и параметру –user команды docker run.
Примечание
При выполнении задач с режимом сетиhost не используйте контейнеры с root user (UID 0). Для повышения безопасности рекомендуется использовать пользователя, отличного от root.Вы можете указать user с использованием следующих форматов. Если вы указываете UID или GID, вы должны указать его как положительное целое число.
useruser:groupuiduid:giduser:giuid:group
Примечание
Этот параметр не поддерживается для контейнеров Windows.временноеХранилище -> (структура)
Объем временного хранилища, который нужно выделить для задачи. Этот параметр используется для увеличения общего объема временного хранилища, доступного помимо стандартного значения, для задач, размещенных на Fargate.
размерВGiB -> (целое число)
21 ГБ, а максимальное — 200 ГБ.executionRoleArn -> (строка)
platformVersion -> (строка)
LATEST. Это использует последнюю одобренную версию платформы Fargate для вычислительных ресурсов. Дополнительную информацию см. в разделе «Версии платформ Fargate» в Руководстве разработчика Amazon Elastic Container Service.ipcMode -> (строка)
Пространство имён ресурсов IPC, используемое для контейнеров в задаче. Допустимые значения — host, task или none.
Если указано host, все контейнеры в задачах, которые указали режим IPC host для того же контейнера, используют общие ресурсы IPC с хост-машиной Amazon EC2.
Если указано task, все контейнеры в заданной task используют общие ресурсы IPC.
Если указано none, ресурсы IPC в контейнерах задачи являются частными и не совместно используются другими контейнерами в задаче или на экземпляре контейнера.
Если значение не указано, то совместное использование пространства имён ресурсов IPC зависит от настроек демона Docker на экземпляре контейнера. Дополнительную информацию см. в разделе Настройки IPC в справке Docker run.
taskRoleArn -> (string)
Amazon Resource Name (ARN), связанный с задачей Amazon ECS.
Примечание
Этот объект сравним с ContainerProperties:jobRoleArn.pidMode -> (string)
Пространство имён процессов, используемое для контейнеров в задаче. Допустимые значения — host или task. Например, контейнеры мониторинга могут потребовать pidMode для доступа к информации об других контейнерах, работающих в той же задаче.
Если указано host, все контейнеры в задачах, которые указали режим PID host для того же экземпляра контейнера, используют общее пространство имён процессов с хост-машиной Amazon EC2.
Если указано task, все контейнеры в указанной задаче используют общее пространство имён процессов.
Если значение не указано, по умолчанию используется частное пространство имён для каждого контейнера. Дополнительную информацию см. в разделе Настройки PID в справке Docker run.
networkConfiguration -> (structure)
Настройка сети для задач, выполняемых на ресурсах Fargate. Задачи, выполняемые на ресурсах Amazon EC2, этот параметр не должны указывать.
assignPublicIp -> (string)
DISABLED».runtimePlatform -> (structure)
Объект, представляющий архитектуру среды выполнения для задач Batch на Fargate.
operatingSystemFamily -> (string)
Операционная система для среды выполнения. Допустимые значения: LINUX (по умолчанию), WINDOWS_SERVER_2019_CORE, WINDOWS_SERVER_2019_FULL, WINDOWS_SERVER_2022_CORE и WINDOWS_SERVER_2022_FULL.
Примечание
Следующие параметры нельзя задавать для контейнеров Windows:linuxParameters, privileged, user, ulimits, readonlyRootFilesystem и efsVolumeConfiguration.Примечание
Планировщик Batch проверяет среды выполнения, присоединённые к очереди задач, перед регистрацией определения задачи в Fargate. В этом случае очередь задач — это место, где подаётся задача. Если задача требует контейнер Windows, и первая среда выполнения —LINUX, среда выполнения пропускается, и проверяется следующая среда выполнения до тех пор, пока не будет найдена среда выполнения на базе Windows.Примечание
Fargate Spot не поддерживается дляARM64 и контейнеров на базе Windows на Fargate. Очередь задач будет заблокирована, если задача Fargate ARM64 или Windows подаётся в очередь задач только со средами выполнения Fargate Spot. Однако вы можете подключить как среды выполнения FARGATE, так и FARGATE_SPOT к одной очереди задач.cpuArchitecture -> (string)
Архитектура vCPU. Значение по умолчанию — X86_64. Допустимые значения — X86_64 и ARM64.
Примечание
Для контейнеров Windows этот параметр должен быть установлен наX86_64.Примечание
Fargate Spot не поддерживается дляARM64 и контейнеров на базе Windows на Fargate. Очередь задач будет заблокирована, если задача Fargate ARM64 или Windows подаётся в очередь задач только со средами выполнения Fargate Spot. Однако вы можете подключить как среды выполнения FARGATE, так и FARGATE_SPOT к одной очереди задач.volumes -> (list)
Список томов, связанных с задачей.
(structure)
Том данных, используемый в свойствах контейнера задачи.
host -> (structure)
Содержимое параметра host определяет, сохраняется ли ваш том данных на хост-экземпляре контейнера и где он хранится. Если параметр host пустой, то демон Docker назначает путь на хост для вашего тома данных. Однако данные не гарантированно сохраняются после остановки контейнеров, связанных с ним.
Примечание
Этот параметр не относится к задачам, выполняемым на ресурсах Fargate, и его не следует указывать.sourcePath -> (string)
Путь на хост-экземпляре контейнера, предоставляемый контейнеру. Если этот параметр пустой, демон Docker назначит для вас путь на хост. Если этот параметр содержит расположение файла, то том данных сохраняется в указанном расположении на хост-экземпляре контейнера до тех пор, пока вы его вручную не удалите. Если расположение источника не существует на хост-экземпляре контейнера, демон Docker его создаёт. Если расположение существует, содержимое папки источника экспортируется.
Примечание
Этот параметр не относится к задачам, выполняемым на ресурсах Fargate. Не указывайте его для этих задач.name -> (string)
sourceVolume определения контейнера mountPoints.efsVolumeConfiguration -> (structure)
Этот параметр указывается при использовании файловой системы Amazon Elastic File System для хранения задач. Задачи, выполняемые на ресурсах Fargate, должны указывать platformVersion объёмом не менее 1.4.0.
fileSystemId -> (string)
rootDirectory -> (string)
Директория в файловой системе Amazon EFS, которая монтируется в качестве корневой директории внутри хоста. Если этот параметр опущен, используется корень тома Amazon EFS. Указание / имеет тот же эффект, что и опускание этого параметра. Максимальная длина — 4096 символов.
Предупреждение
Если вauthorizationConfig указан доступ к точке Amazon EFS, параметр rootDirectory должен быть опущен или установлен на /, что заставляет использовать путь, установленный в точке доступа Amazon EFS.transitEncryption -> (string)
DISABLED. Дополнительную информацию см. в разделе Шифрование данных при передаче в руководстве пользователя Amazon Elastic File System.transitEncryptionPort -> (integer)
authorizationConfig -> (structure)
Детали конфигурации авторизации для файловой системы Amazon EFS.
accessPointId -> (string)
EFSVolumeConfiguration, должно быть опущено или установлено на /, что заставляет использовать путь, установленный в точке доступа EFS. Если используется точка доступа, шифрование при передаче должно быть включено в EFSVolumeConfiguration. Дополнительную информацию см. в разделе Работа с точками доступа Amazon EFS в руководстве пользователя Amazon Elastic File System.iam -> (string)
EFSVolumeConfiguration. Если этот параметр опущен, используется значение по умолчанию — DISABLED. Дополнительную информацию см. в разделе Использование точек доступа Amazon EFS в руководстве пользователя Batch. Авторизация Amazon EFS IAM требует, чтобы TransitEncryption была ENABLED и чтобы был указан JobRoleArn.enableExecuteCommand -> (boolean)
true, функция выполнения команд включена для всех контейнеров в задаче.Синтаксис JSON:
{
"taskProperties": [
{
"containers": [
{
"command": ["string", ...],
"dependsOn": [
{
"containerName": "string",
"condition": "string"
}
...
],
"environment": [
{
"name": "string",
"value": "string"
}
...
],
"essential": true|false,
"firelensConfiguration": {
"type": "fluentd"|"fluentbit",
"options": {"string": "string"
...}
},
"image": "string",
"linuxParameters": {
"devices": [
{
"hostPath": "string",
"containerPath": "string",
"permissions": ["READ"|"WRITE"|"MKNOD", ...]
}
...
],
"initProcessEnabled": true|false,
"sharedMemorySize": integer,
"tmpfs": [
{
"containerPath": "string",
"size": integer,
"mountOptions": ["string", ...]
}
...
],
"maxSwap": integer,
"swappiness": integer
},
"logConfiguration": {
"logDriver": "json-file"|"syslog"|"journald"|"gelf"|"fluentd"|"awslogs"|"splunk"|"awsfirelens",
"options": {"string": "string"
...},
"secretOptions": [
{
"name": "string",
"valueFrom": "string"
}
...
]
},
"mountPoints": [
{
"containerPath": "string",
"readOnly": true|false,
"sourceVolume": "string"
}
...
],
"name": "string",
"privileged": true|false,
"readonlyRootFilesystem": true|false,
"repositoryCredentials": {
"credentialsParameter": "string"
},
"resourceRequirements": [
{
"value": "string",
"type": "GPU"|"VCPU"|"MEMORY"
}
...
],
"secrets": [
{
"name": "string",
"valueFrom": "string"
}
...
],
"ulimits": [
{
"hardLimit": integer,
"name": "string",
"softLimit": integer
}
...
],
"user": "string"
}
...
],
"ephemeralStorage": {
"sizeInGiB": integer
},
"executionRoleArn": "string",
"platformVersion": "string",
"ipcMode": "string",
"taskRoleArn": "string",
"pidMode": "string",
"networkConfiguration": {
"assignPublicIp": "ENABLED"|"DISABLED"
},
"runtimePlatform": {
"operatingSystemFamily": "string",
"cpuArchitecture": "string"
},
"volumes": [
{
"host": {
"sourcePath": "string"
},
"name": "string",
"efsVolumeConfiguration": {
"fileSystemId": "string",
"rootDirectory": "string",
"transitEncryption": "ENABLED"|"DISABLED",
"transitEncryptionPort": integer,
"authorizationConfig": {
"accessPointId": "string",
"iam": "ENABLED"|"DISABLED"
}
}
}
...
],
"enableExecuteCommand": true|false
}
...
]
}
--consumable-resource-properties (structure)
Содержит список потребляемых ресурсов, необходимых для задачи.
consumableResourceList -> (list)
Список потребляемых ресурсов, необходимых для задачи.
(structure)
Информация о потребляемом ресурсе, необходимом для выполнения задачи.
consumableResource -> (string)
quantity -> (long)
Краткая запись:
consumableResourceList=[{consumableResource=string,quantity=long},{consumableResource=string,quantity=long}]
Синтаксис JSON:
{
"consumableResourceList": [
{
"consumableResource": "string",
"quantity": long
}
...
]
}
--cli-input-json | --cli-input-yaml (string) Читает аргументы из предоставленной JSON-строки. JSON-строка следует формату, предоставленному в --generate-cli-skeleton. Если на командной строке указаны другие аргументы, эти значения перепишут значения из JSON. Передать произвольные двоичные значения с помощью JSON-значения в виде строки невозможно, так как строка будет интерпретироваться буквально. Это нельзя указать вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод без отправки запроса к API. Если не указано значение или значение input, выводит JSON-пример входных данных, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если указано yaml-input, он выведет YAML-пример входных данных, который можно использовать с --cli-input-yaml. Если указано значение output, он проверит входные данные команды и вернёт пример выходных данных JSON для этой команды. Сгенерированный JSON-скелет не является стабильным между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном JSON-скелете.
Глобальные параметры
--debug (логическое значение)
Включить отладочную регистрацию.
--endpoint-url (строка)
Переопределить стандартный URL команды на указанный URL.
--no-verify-ssl (логическое значение)
По умолчанию AWS CLI использует SSL при взаимодействии с AWS-сервисами. Для каждого SSL-соединения AWS CLI будет проверять SSL-сертификаты. Этот параметр переопределяет стандартное поведение проверки SSL-сертификатов.
--no-paginate (логическое значение)
Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI выполнит только один вызов для первой страницы результатов.
--output (строка)
Стиль форматирования выходных данных команды.
- json
- text
- table
- yaml
- yaml-stream
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использовать определённый профиль из файла аутентификации.
--region (строка)
Используемый регион. Переопределяет настройки конфигурации/окружения.
--version (строка)
Показать версию этого инструмента.
--color (строка)
Включить/отключить цветной вывод.
- on
- off
- auto
--no-sign-request (логическое значение)
Не подписывать запросы. Кредиты не будут загружены, если этот аргумент предоставлен.
--ca-bundle (строка)
Файл с сертификатами доверенных центров сертификации для проверки SSL-сертификатов. Переопределяет настройки конфигурации/окружения.
--cli-read-timeout (целое число)
Максимальное время чтения сокета в секундах. Если значение равно 0, чтение сокета будет блокирующим и без таймаута. Значение по умолчанию составляет 60 секунд.
--cli-connect-timeout (целое число)
Максимальное время подключения сокета в секундах. Если значение равно 0, подключение сокета будет блокирующим и без таймаута. Значение по умолчанию составляет 60 секунд.
--cli-binary-format (строка)
Стиль форматирования, используемый для двоичных блоков. Формат по умолчанию — base64. Формат base64 ожидает, что двоичные блоки будут предоставлены как строка, закодированная в base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны быть переданы буквально. При предоставлении содержимого из файла, которое отображается на двоичный блок fileb:// всегда будет обрабатываться как двоичный и будет использовать содержимое файла напрямую независимо от настроек cli-binary-format. При использовании file:// содержимое файла должно быть правильно отформатировано для настроенного cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (логическое значение)
Отключить вывод страниц cli.
--cli-auto-prompt (логическое значение)
Автоматически запрашивать параметры входных данных CLI.
--no-cli-auto-prompt (логическое значение)
Отключить автоматическое запросы параметров входных данных CLI.
Примеры
Примечание
Для использования следующих примеров необходимо установить и настроить AWS CLI. Подробнее см. руководство по началу работы в руководстве пользователя AWS CLI.
Если не указано иное, во всех примерах используются правила цитирования Unix-подобных систем. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки. Подробнее см. Использование кавычек со строками в руководстве пользователя AWS CLI.
Для регистрации определения задания
В этом примере регистрируется определение задания для простого контейнерного задания.
Команда:
aws batch register-job-definition --job-definition-name sleep30 --type container --container-properties '{ "image": "busybox", "vcpus": 1, "memory": 128, "command": [ "sleep", "30"]}'
Вывод:
{
"jobDefinitionArn": "arn:aws:batch:us-east-1:012345678910:job-definition/sleep30:1",
"jobDefinitionName": "sleep30",
"revision": 1
}
Вывод
jobDefinitionName -> (строка)
jobDefinitionArn -> (строка)
revision -> (целое число)
© Copyright 2025, Amazon Web Services. Created using Sphinx.