Spec-Zone.ru › AWS CLI v2

[ aws . batch ]

describe-job-definitions

Описание

Описывает список определений заданий. Вы можете указать status (например, ACTIVE ), чтобы возвращать только определения заданий, соответствующие этому статусу.

См. также: AWS API Documentation

describe-job-definitions — это оператор с разбивкой на страницы. Для получения всего набора данных результатов может потребоваться несколько вызовов API. Вы можете отключить разбивку на страницы, указав аргумент --no-paginate. При использовании --output text и аргумента --query в ответе с разбивкой на страницы аргумент --query должен извлекать данные из результатов следующих выражений запросов: jobDefinitions

Сводка

  describe-job-definitions
[--job-definitions <value>]
[--job-definition-name <value>]
[--status <value>]
[--cli-input-json | --cli-input-yaml]
[--starting-token <value>]
[--page-size <value>]
[--max-items <value>]
[--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-definitions (list)

Список из не более 100 определений заданий. Каждая запись в списке может быть либо ARN в формате arn:aws:batch:${Region}:${Account}:job-definition/${JobDefinitionName}:${Revision}, либо краткой версией в формате ${JobDefinitionName}:${Revision}. Этот параметр нельзя использовать с другими параметрами.

(string)

Синтаксис:

"string" "string" ...

--job-definition-name (string)

Имя описываемого определения задания.

--status (string)

Статус, используемый для фильтрации определений заданий.

--cli-input-json | --cli-input-yaml (string) Считывает аргументы из предоставленной строки JSON. Строка JSON соответствует формату, предоставленному --generate-cli-skeleton. Если другие аргументы предоставлены в командной строке, эти значения переопределят значения, предоставленные в JSON. Невозможно передать произвольные двоичные значения, используя значение, предоставленное в JSON, поскольку строка будет воспринята буквально. Это нельзя указывать вместе с --cli-input-yaml.

--starting-token (string)

Токен для указания места начала разбивки на страницы. Это NextToken из ранее усеченного ответа.

Примеры использования см. в разделе Разбиение на страницы в Руководстве пользователя интерфейса командной строки AWS.

--page-size (integer)

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

Примеры использования см. в разделе Разбиение на страницы в Руководстве пользователя интерфейса командной строки AWS.

--max-items (integer)

Общее количество элементов для возврата в выводе команды. Если общее количество доступных элементов превышает указанное значение, в выводе команды будет предоставлен NextToken. Чтобы возобновить разбивку на страницы, укажите значение NextToken в аргументе starting-token последующей команды. Не используйте элемент ответа NextToken непосредственно за пределами AWS CLI.

Примеры использования см. в разделе Разбиение на страницы в Руководстве пользователя интерфейса командной строки AWS.

--generate-cli-skeleton (string) Печатает скелет JSON в стандартный вывод без отправки запроса API. Если не указано значение или указано значение input, печатается образец входного JSON, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если указано yaml-input, будет напечатан образец входного YAML, который можно использовать с --cli-input-yaml. Если указано значение output, оно проверяет входные данные команды и возвращает образец выходного JSON для этой команды. Сгенерированный скелет JSON нестабилен между версиями AWS CLI, и гарантии обратной совместимости в сгенерированном скелете JSON отсутствуют.

Глобальные параметры

--debug (boolean)

Включить ведение журнала отладки.

--endpoint-url (string)

Переопределите URL по умолчанию для команды указанным URL.

--no-verify-ssl (boolean)

По умолчанию AWS CLI использует SSL при взаимодействии с сервисами AWS. Для каждого SSL-соединения AWS CLI будет проверять SSL-сертификаты. Этот параметр переопределяет поведение по умолчанию при проверке SSL-сертификатов.

--no-paginate (boolean)

Отключить автоматическую разбивку на страницы. Если автоматическая разбивка на страницы отключена, AWS CLI выполнит только один вызов для первой страницы результатов.

--output (string)

Стиль форматирования для вывода команды.

  • json
  • text
  • table
  • yaml
  • yaml-stream

--query (string)

Запрос JMESPath для использования при фильтрации данных ответа.

--profile (string)

Использовать определенный профиль из вашего файла учетных данных.

--region (string)

Регион для использования. Переопределяет настройки конфигурации/среды.

--version (string)

Отобразить версию этого инструмента.

--color (string)

Включить/выключить цветной вывод.

  • on
  • off
  • auto

--no-sign-request (boolean)

Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент предоставлен.

--ca-bundle (string)

Пакет сертификата CA для использования при проверке SSL-сертификатов. Переопределяет настройки конфигурации/среды.

--cli-read-timeout (int)

Максимальное время чтения сокета в секундах. Если значение равно 0, чтение сокета будет блокироваться и не завершится по таймауту. Значение по умолчанию — 60 секунд.

--cli-connect-timeout (int)

Максимальное время подключения к сокету в секундах. Если значение равно 0, подключение к сокету будет блокироваться и не завершится по таймауту. Значение по умолчанию — 60 секунд.

--cli-binary-format (string)

Стиль форматирования, который будет использоваться для двоичных больших двоичных объектов. Формат по умолчанию — 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 (boolean)

Отключить пейджер cli для вывода.

--cli-auto-prompt (boolean)

Автоматически запрашивать параметры ввода CLI.

--no-cli-auto-prompt (boolean)

Отключить автоматический запрос параметров ввода CLI.

Примеры

Примечание

Чтобы использовать следующие примеры, необходимо установить и настроить AWS CLI. См. руководство по началу работы в Руководстве пользователя AWS CLI для получения дополнительной информации.

Если не указано иное, все примеры имеют правила цитирования, подобные unix. Эти примеры необходимо будет адаптировать к правилам цитирования вашего терминала. См. раздел Использование кавычек со строками в Руководстве пользователя AWS CLI.

Чтобы описать активные определения заданий

В этом примере описываются все ваши активные определения заданий.

Команда:

aws batch describe-job-definitions --status ACTIVE

Вывод:

{
    "jobDefinitions": [
        {
            "status": "ACTIVE",
            "jobDefinitionArn": "arn:aws:batch:us-east-1:012345678910:job-definition/sleep60:1",
            "containerProperties": {
                "mountPoints": [],
                "parameters": {},
                "image": "busybox",
                "environment": {},
                "vcpus": 1,
                "command": [
                    "sleep",
                    "60"
                ],
                "volumes": [],
                "memory": 128,
                "ulimits": []
            },
            "type": "container",
            "jobDefinitionName": "sleep60",
            "revision": 1
        }
    ]
}

Вывод

jobDefinitions -> (list)

Список определений заданий.

(structure)

Объект, представляющий определение задания Batch.

jobDefinitionName -> (string)

Имя определения задания.

jobDefinitionArn -> (string)

Имя ресурса Amazon (ARN) для определения задания.

revision -> (integer)

Ревизия определения задания.

status -> (string)

Статус определения задания.

type -> (string)

Тип определения задания. Это либо container или multinode . Если задание запускается на ресурсах Fargate, то multinode не поддерживается. Для получения дополнительной информации о параллельных многоузловых заданиях см. раздел Creating a multi-node parallel job definition в Batch User Guide .

schedulingPriority -> (integer)

Приоритет планирования определения задания. Это влияет только на задания в очередях заданий с политикой справедливого распределения. Задания с более высоким приоритетом планирования планируются раньше, чем задания с более низким приоритетом планирования.

parameters -> (map)

Параметры по умолчанию или заполнители для подстановки параметров, которые задаются в определении задания. Параметры указываются в виде сопоставления пар ключ-значение. Параметры в запросе SubmitJob переопределяют любые соответствующие значения параметров по умолчанию из определения задания. Для получения дополнительной информации о указании параметров см. Job definition parameters в Batch User Guide .

key -> (string)

value -> (string)

retryStrategy -> (structure)

Стратегия повторных попыток, используемая для неудачных заданий, отправленных с этим определением задания.

attempts -> (integer)

Количество попыток переместить задание в статус RUNNABLE . Можно указать от 1 до 10 попыток. Если значение attempts больше единицы, задание повторно выполняется в случае сбоя столько раз, сколько указано в значении.

evaluateOnExit -> (list)

Массив, содержащий до 5 объектов, которые указывают условия, при которых задания повторяются или завершаются с ошибкой. Если этот параметр указан, то также необходимо указать параметр attempts . Если ни одно из перечисленных условий не соответствует, задание повторяется.

(structure)

Указывает массив до 5 условий, которые необходимо выполнить, и действие, которое необходимо предпринять (RETRY или EXIT ), если все условия выполнены. Если ни одно из условий EvaluateOnExit в RetryStrategy не соответствует, задание повторяется.

onStatusReason -> (string)

Содержит шаблон glob для сопоставления с StatusReason , возвращенным для задания. Шаблон может содержать до 512 символов. Он может содержать буквы, цифры, точки (.), двоеточия (:) и пробелы (включая пробелы и табуляции). При необходимости он может заканчиваться звездочкой (*), чтобы только начало строки соответствовало точно.

onReason -> (string)

Содержит шаблон glob для сопоставления с Reason , возвращенным для задания. Шаблон может содержать до 512 символов. Он может содержать буквы, цифры, точки (.), двоеточия (:), и пробелы (включая пробелы и табуляции). При необходимости он может заканчиваться звездочкой (*), чтобы только начало строки соответствовало точно.

onExitCode -> (string)

Содержит шаблон glob для сопоставления с десятичным представлением ExitCode , возвращенного для задания. Шаблон может содержать до 512 символов. Он может содержать только цифры и может заканчиваться звездочкой (*), чтобы только начало строки соответствовало точно.

Строка может содержать до 512 символов.

action -> (string)

Указывает действие, которое необходимо предпринять, если выполняются все указанные условия (onStatusReason , onReason и onExitCode ). Значения не чувствительны к регистру.

containerProperties -> (structure)

Объект со свойствами, относящимися к заданиям на основе Amazon ECS. Если containerProperties используется в определении задания, его нельзя использовать в дополнение к eksProperties , ecsProperties или nodeProperties .

image -> (string)

Обязательно. Образ, используемый для запуска контейнера. Эта строка передается непосредственно демону 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 -> (integer)

Этот параметр устарел, используйте resourceRequirements , чтобы указать требования vCPU для определения задания. Он не поддерживается для заданий, работающих на ресурсах Fargate. Для заданий, работающих на ресурсах Amazon EC2, он указывает количество vCPU, зарезервированных для задания.

Каждый vCPU эквивалентен 1024 долям ЦП. Этот параметр сопоставляется с CpuShares в разделе Создание контейнера Docker Remote API и параметром --cpu-shares в docker run . Количество vCPU должно быть указано, но его можно указать в нескольких местах. Вы должны указать его хотя бы один раз для каждой ноды.

memory -> (integer)

Этот параметр устарел, используйте resourceRequirements , чтобы указать требования к памяти для определения задания. Он не поддерживается для заданий, работающих на ресурсах Fargate. Для заданий, которые работают на ресурсах Amazon EC2, он указывает жесткий лимит памяти (в МиБ) для контейнера. Если ваш контейнер пытается превысить указанное число, он завершается. Вы должны указать не менее 4 МиБ памяти для задания, используя этот параметр. Жесткий лимит памяти можно указать в нескольких местах. Он должен быть указан для каждой ноды хотя бы один раз.

command -> (list)

Команда, которая передается в контейнер. Этот параметр сопоставляется с Cmd в разделе Создание контейнера Docker Remote API и параметром COMMAND в docker run . Для получения дополнительной информации см. https://docs.docker.com/engine/reference/builder/#cmd .

(string)

jobRoleArn -> (string)

Amazon Resource Name (ARN) роли IAM, которую контейнер может принять для разрешений Amazon Web Services. Дополнительные сведения см. в разделе Роли IAM для задач в Руководстве разработчика Amazon Elastic Container Service .

executionRoleArn -> (string)

Amazon Resource Name (ARN) роли выполнения, которую может принять Batch. Для заданий, которые работают на ресурсах Fargate, необходимо предоставить роль выполнения. Для получения дополнительной информации см. Batch execution IAM role в Batch User Guide .

volumes -> (list)

Список томов данных, используемых в задании.

(structure)

Том данных, который используется в свойствах контейнера задания.

host -> (structure)

Содержимое параметра host определяет, сохраняется ли ваш том данных в экземпляре хост-контейнера и где он хранится. Если параметр host пуст, демон Docker назначает путь хоста для вашего тома данных. Однако данные не гарантированно сохранятся после того, как контейнеры, связанные с ним, перестанут работать.

Примечание

Этот параметр не применяется к заданиям, работающим на ресурсах Fargate, и его не следует указывать.

sourcePath -> (string)

Путь к экземпляру хост-контейнера, который представляется контейнеру. Если этот параметр пуст, демон Docker назначил вам путь хоста. Если этот параметр содержит расположение файла, том данных сохраняется в указанном месте в экземпляре хост-контейнера до тех пор, пока вы не удалите его вручную. Если местоположение исходного пути не существует в экземпляре хост-контейнера, демон Docker создает его. Если местоположение существует, содержимое папки исходного пути экспортируется.

Примечание

Этот параметр не применяется к заданиям, которые работают на ресурсах Fargate. Не указывайте это для этих заданий.

name -> (string)

Имя тома. Он может иметь длину до 255 символов. Он может содержать прописные и строчные буквы, цифры, дефисы (-) и подчеркивания (_). Это имя указывается в параметре sourceVolume определения контейнера mountPoints .

efsVolumeConfiguration -> (structure)

Этот параметр указывается при использовании файловой системы Amazon Elastic File System для хранения заданий. Задания, которые работают на ресурсах Fargate, должны указать platformVersion не менее 1.4.0 .

fileSystemId -> (string)

Идентификатор файловой системы Amazon EFS для использования.

rootDirectory -> (string)

Каталог в файловой системе Amazon EFS для монтирования в качестве корневого каталога внутри хоста. Если этот параметр опущен, вместо него используется корень тома Amazon EFS. Указание / имеет тот же эффект, что и опускание этого параметра. Максимальная длина составляет 4096 символов.

Предупреждение

Если точка доступа EFS указана в authorizationConfig , параметр root directory должен быть либо опущен, либо установлен в / , что обеспечивает применение пути, установленного в точке доступа Amazon EFS.

transitEncryption -> (string)

Определяет, следует ли включать шифрование для данных Amazon EFS при передаче между хостом Amazon ECS и сервером Amazon EFS. Шифрование при передаче должно быть включено, если используется авторизация Amazon EFS IAM. Если этот параметр опущен, используется значение по умолчанию DISABLED . Дополнительные сведения см. в разделе Encrypting data in transit в Руководстве пользователя Amazon Elastic File System .

transitEncryptionPort -> (integer)

Порт для использования при отправке зашифрованных данных между хостом Amazon ECS и сервером Amazon EFS. Если вы не укажете порт шифрования при передаче, будет использоваться стратегия выбора порта, которую использует вспомогательная программа монтирования Amazon EFS. Значение должно быть от 0 до 65 535. Дополнительные сведения см. в разделе EFS mount helper в Руководстве пользователя Amazon Elastic File System .

authorizationConfig -> (structure)

Сведения о конфигурации авторизации для файловой системы Amazon EFS.

accessPointId -> (string)

Идентификатор точки доступа Amazon EFS для использования. Если указана точка доступа, значение root directory, указанное в EFSVolumeConfiguration , должно быть либо опущено, либо установлено в / , что обеспечивает применение пути, установленного в точке доступа EFS. Если используется точка доступа, шифрование при передаче должно быть включено в EFSVolumeConfiguration . Дополнительные сведения см. в разделе Working with Amazon EFS access points в Руководстве пользователя Amazon Elastic File System .

iam -> (string)

Использовать или нет роль IAM задания Batch, определенную в определении задания, при монтировании файловой системы Amazon EFS. Если включено, шифрование при передаче должно быть включено в EFSVolumeConfiguration . Если этот параметр опущен, используется значение по умолчанию DISABLED . Дополнительные сведения см. в разделе Using Amazon EFS access points в Batch User Guide . Авторизация EFS IAM требует, чтобы TransitEncryption было ENABLED и чтобы было указано JobRoleArn .

environment -> (list)

Переменные среды, которые необходимо передать в контейнер. Этот параметр сопоставляется с Env в разделе Создание контейнера Docker Remote API и параметром --env в docker run .

Предупреждение

Мы не рекомендуем использовать переменные среды в виде обычного текста для конфиденциальной информации, такой как данные учетных данных.

Примечание

Переменные среды не могут начинаться с «AWS_BATCH ». Эта конвенция именования зарезервирована для переменных, которые устанавливает Batch.

(structure)

Объект пары ключ-значение.

name -> (string)

Имя пары ключ-значение. Для переменных среды это имя переменной среды.

value -> (string)

Значение пары ключ-значение. Для переменных среды это значение переменной среды.

mountPoints -> (list)

Точки монтирования для томов данных в вашем контейнере. Этот параметр сопоставляется с Volumes в разделе Создание контейнера Docker Remote API и параметром --volume в docker run .

(structure)

Подробности точки монтирования тома Docker, которая используется в свойствах контейнера задания. Этот параметр сопоставляется с Volumes в разделе Создание контейнера Docker Remote API и параметром --volume в docker run.

containerPath -> (string)

Путь к контейнеру, где монтируется том хоста.

readOnly -> (boolean)

Если это значение true , контейнер имеет доступ только для чтения к тому. В противном случае контейнер может записывать данные на том. Значение по умолчанию - false .

sourceVolume -> (string)

Имя тома для монтирования.

readonlyRootFilesystem -> (boolean)

Когда этот параметр имеет значение true, контейнеру предоставляется доступ только для чтения к его корневой файловой системе. Этот параметр сопоставляется с ReadonlyRootfs в разделе Создание контейнера Docker Remote API и параметром --read-only в docker run .

privileged -> (boolean)

Если этот параметр имеет значение true, контейнеру предоставляются повышенные привилегии в экземпляре контейнера хоста (аналогично пользователю root). Этот параметр сопоставляется с Privileged в разделе Создание контейнера в удаленном API Docker и с параметром --privileged для docker run . Значение по умолчанию — false.

Примечание

Этот параметр не применим к заданиям, выполняемым в ресурсах Fargate, и его не следует указывать или указывать как false.

ulimits -> (список)

Список ulimits для настройки в контейнере. Этот параметр сопоставляется с Ulimits в разделе Создание контейнера в удаленном API Docker и с параметром --ulimit для docker run .

Примечание

Этот параметр не применим к заданиям, выполняемым в ресурсах Fargate, и его не следует указывать.

(структура)

Настройки 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 -> (строка)

Имя пользователя, которое будет использоваться внутри контейнера. Этот параметр сопоставляется с User в разделе Создание контейнера в удаленном API Docker и с параметром --user для docker run .

instanceType -> (строка)

Тип экземпляра, который будет использоваться для параллельного задания с несколькими узлами. Все группы узлов в параллельном задании с несколькими узлами должны использовать один и тот же тип экземпляра.

Примечание

Этот параметр не применим к одноузловым контейнерным заданиям или заданиям, выполняемым в ресурсах Fargate, и его не следует указывать.

resourceRequirements -> (список)

Тип и объем ресурсов, выделяемых контейнеру. Поддерживаемые ресурсы включают GPU, MEMORY и VCPU.

(структура)

Тип и объем ресурса, выделяемого контейнеру. Поддерживаемые ресурсы включают GPU, MEMORY и VCPU.

value -> (строка)

Объем указанного ресурса, резервируемого для контейнера. Значения варьируются в зависимости от указанного type.

type=”GPU”

Количество физических графических процессоров, резервируемых для контейнера. Убедитесь, что количество графических процессоров, зарезервированных для всех контейнеров в задании, не превышает количество доступных графических процессоров на вычислительном ресурсе, на котором запущено задание.

Примечание

Графические процессоры недоступны для заданий, выполняемых в ресурсах Fargate.

type=”MEMORY”

Жесткий лимит памяти (в МиБ), предоставляемый контейнеру. Этот параметр поддерживается для заданий, выполняемых в ресурсах Amazon EC2. Если контейнер пытается превысить указанный объем памяти, контейнер завершает работу. Этот параметр сопоставляется с параметром Memory в разделе Создание контейнера в удаленном API Docker и с параметром --memory для docker run . Необходимо указать не менее 4 МиБ памяти для задания. Это обязательно, но может быть указано в нескольких местах для параллельных заданий с несколькими узлами (MNP). Его необходимо указать для каждого узла хотя бы один раз. Этот параметр сопоставляется с параметром Memory в разделе Создание контейнера в удаленном API Docker и с параметром --memory для docker run .

Примечание

Если вы пытаетесь максимально эффективно использовать ресурсы, предоставляя своим заданиям как можно больше памяти для определенного типа экземпляра, см. раздел Memory management в Batch User Guide .

Для заданий, выполняемых в ресурсах Fargate, value является жестким лимитом (в МиБ), и он должен соответствовать одному из поддерживаемых значений, а значения VCPU должны соответствовать одному из значений, поддерживаемых для этого значения памяти.

value = 512

VCPU = 0.25

value = 1024

VCPU = 0.25 или 0.5

value = 2048

VCPU = 0.25, 0.5 или 1

value = 3072

VCPU = 0.5 или 1

value = 4096

VCPU = 0.5, 1 или 2

value = 5120, 6144 или 7168

VCPU = 1 или 2

value = 8192

VCPU = 1, 2 или 4

value = 9216, 10240, 11264, 12288, 13312, 14336 или 15360

VCPU = 2 или 4

value = 16384

VCPU = 2, 4 или 8

value = 17408, 18432, 19456, 21504, 22528, 23552, 25600, 26624, 27648, 29696 или 30720

VCPU = 4

value = 20480, 24576 или 28672

VCPU = 4 или 8

value = 36864, 45056, 53248 или 61440

VCPU = 8

value = 32768, 40960, 49152 или 57344

VCPU = 8 или 16

value = 65536, 73728, 81920, 90112, 98304, 106496, 114688 или 122880

VCPU = 16

type=”VCPU”

Количество vCPU, зарезервированных для контейнера. Этот параметр сопоставляется с параметром CpuShares в разделе Создание контейнера в удаленном API Docker и с параметром --cpu-shares для docker run . Каждый vCPU эквивалентен 1024 долям ЦП. Для ресурсов Amazon EC2 необходимо указать не менее одного vCPU. Это обязательно, но может быть указано в нескольких местах; его необходимо указать для каждого узла хотя бы один раз.

Значение по умолчанию для квоты на количество ресурсов Fargate On-Demand vCPU составляет 6 vCPU. Дополнительные сведения о квотах Fargate см. в разделе Fargate quotas в Amazon Web Services General Reference .

Для заданий, выполняемых в ресурсах Fargate, value должен соответствовать одному из поддерживаемых значений, а значения MEMORY должны соответствовать одному из значений, поддерживаемых для этого значения VCPU. Поддерживаемые значения: 0.25, 0.5, 1, 2, 4, 8 и 16

value = 0.25

MEMORY = 512, 1024 или 2048

value = 0.5

MEMORY = 1024, 2048, 3072 или 4096

value = 1

MEMORY = 2048, 3072, 4096, 5120, 6144, 7168 или 8192

value = 2

MEMORY = 4096, 5120, 6144, 7168, 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360 или 16384

value = 4

MEMORY = 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, 16384, 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696 или 30720

value = 8

MEMORY = 16384, 20480, 24576, 28672, 32768, 36864, 40960, 45056, 49152, 53248, 57344 или 61440

value = 16

MEMORY = 32768, 40960, 49152, 57344, 65536, 73728, 81920, 90112, 98304, 106496, 114688 или 122880

type -> (string)

Тип ресурса, выделяемого контейнеру. Поддерживаемые ресурсы включают GPU, MEMORY и VCPU.

linuxParameters -> (структура)

Специфичные для Linux модификации, которые применяются к контейнеру, такие как сведения о сопоставлениях устройств.

devices -> (list)

Любые устройства хоста для предоставления контейнеру. Этот параметр сопоставляется с Devices в разделе «Создание контейнера» Docker Remote API и опцией --device для docker run .

Примечание

Этот параметр не применяется к заданиям, выполняемым на ресурсах Fargate. Не предоставляйте его для этих заданий.

(structure)

Объект, представляющий устройство хоста экземпляра контейнера.

Примечание

Этот объект не применяется к заданиям, выполняемым на ресурсах Fargate, и не должен предоставляться.

hostPath -> (string)

Путь для устройства на экземпляре контейнера хоста.

containerPath -> (string)

Путь внутри контейнера, который используется для предоставления устройства хоста. По умолчанию используется значение hostPath.

permissions -> (list)

Явные разрешения для предоставления контейнеру для устройства. По умолчанию контейнер имеет разрешения для read, write и mknod для устройства.

(string)

initProcessEnabled -> (boolean)

Если true, запустите процесс init внутри контейнера, который перенаправляет сигналы и уничтожает процессы. Этот параметр сопоставляется с опцией --init для docker run . Этот параметр требует версию 1.25 Docker Remote API или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"

sharedMemorySize -> (integer)

Значение размера (в МиБ) тома /dev/shm. Этот параметр сопоставляется с опцией --shm-size для docker run .

Примечание

Этот параметр не применяется к заданиям, выполняемым на ресурсах Fargate. Не предоставляйте его для этих заданий.

tmpfs -> (list)

Путь к контейнеру, параметры монтирования и размер (в МиБ) монтирования tmpfs. Этот параметр сопоставляется с опцией --tmpfs для docker run .

Примечание

Этот параметр не применяется к заданиям, выполняемым на ресурсах Fargate. Не предоставляйте этот параметр для этого типа ресурса.

(structure)

Путь к контейнеру, параметры монтирования и размер монтирования tmpfs.

Примечание

Этот объект не применяется к заданиям, выполняемым на ресурсах Fargate.

containerPath -> (string)

Абсолютный путь к файлу в контейнере, где смонтирован том tmpfs.

size -> (integer)

Размер (в МиБ) тома tmpfs.

mountOptions -> (list)

Список параметров монтирования тома 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»

(string)

maxSwap -> (integer)

Общий объем памяти подкачки (в МиБ), который может использовать контейнер. Этот параметр преобразуется в опцию --memory-swap для docker run, где значение представляет собой сумму памяти контейнера плюс значение maxSwap. Для получения дополнительной информации см. ` --memory-swap details <https://docs.docker.com/config/containers/resource_constraints/#–memory-swap-details>`__ в документации Docker.

Если указано значение 0, контейнер не использует подкачку. Допустимые значения: 0 или любое положительное целое число. Если параметр maxSwap опущен, контейнер не использует конфигурацию подкачки для экземпляра контейнера, на котором он работает. maxSwap необходимо задать для использования параметра swappiness.

Примечание

Этот параметр не применяется к заданиям, выполняемым на ресурсах Fargate. Не предоставляйте его для этих заданий.

swappiness -> (integer)

Вы можете использовать этот параметр для настройки поведения подкачки памяти контейнера. Значение 0 приводит к тому, что подкачка не происходит, если это абсолютно необходимо. Значение 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 -> (structure)

Спецификация конфигурации журнала для контейнера.

Этот параметр отображается в LogConfig в разделе "Создание контейнера" удаленного API Docker и в опции --log-driver для docker run . По умолчанию контейнеры используют тот же драйвер журналирования, который использует демон Docker. Однако контейнер может использовать другой драйвер журналирования, чем демон Docker, указав драйвер журнала с этим параметром в определении контейнера. Чтобы использовать другой драйвер журналирования для контейнера, система журналов должна быть настроена должным образом в экземпляре контейнера (или на другом сервере журналов для удаленных параметров ведения журнала). Дополнительные сведения о параметрах для различных поддерживаемых драйверов журналов см. в разделе Настройка драйверов ведения журнала в документации Docker.

Примечание

Пакетная обработка в настоящее время поддерживает подмножество драйверов журналирования, доступных для демона Docker (показано в типе данных LogConfiguration).

Этот параметр требует версию 1.18 удаленного API Docker или выше в вашем экземпляре контейнера. Чтобы проверить версию удаленного API Docker в вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"

Примечание

Агент контейнера 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 или партнер Amazon Web Services" в Руководстве разработчика Amazon Elastic Container Service .

awslogs

Указывает драйвер ведения журнала Amazon CloudWatch Logs. Дополнительные сведения см. в разделе "Использование драйвера журналов awslogs" в Руководстве пользователя Batch и "Драйвер ведения журнала Amazon CloudWatch Logs" в документации Docker.

fluentd

Указывает драйвер ведения журнала Fluentd. Дополнительные сведения, включая использование и параметры, см. в разделе "Драйвер ведения журнала Fluentd" в документации Docker .

gelf

Указывает драйвер ведения журнала Graylog Extended Format (GELF). Дополнительные сведения, включая использование и параметры, см. в разделе "Драйвер ведения журнала Graylog Extended Format" в документации Docker .

journald

Указывает драйвер ведения журнала journald. Дополнительные сведения, включая использование и параметры, см. в разделе "Драйвер ведения журнала Journald" в документации Docker .

json-file

Указывает драйвер ведения журнала JSON file. Дополнительные сведения, включая использование и параметры, см. в разделе "Драйвер ведения журнала JSON File" в документации Docker .

splunk

Указывает драйвер ведения журнала Splunk. Дополнительные сведения, включая использование и параметры, см. в разделе "Драйвер ведения журнала Splunk" в документации Docker .

syslog

Указывает драйвер ведения журнала syslog. Дополнительные сведения, включая использование и параметры, см. в разделе "Драйвер ведения журнала Syslog" в документации Docker .

Примечание

Если у вас есть пользовательский драйвер, который не указан ранее и который вы хотите использовать с агентом контейнера Amazon ECS, вы можете разветвить проект агента контейнера Amazon ECS, доступный на GitHub, и настроить его для работы с этим драйвером. Мы рекомендуем вам отправлять запросы на включение изменений, которые вы хотите включить. Однако Amazon Web Services в настоящее время не поддерживает запуск измененных копий этого программного обеспечения.

Этот параметр требует версию 1.18 удаленного API Docker или выше в вашем экземпляре контейнера. Чтобы проверить версию удаленного API Docker в вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"

options -> (map)

Параметры конфигурации для отправки в драйвер журнала. Этот параметр требует версию 1.19 удаленного API Docker или выше в вашем экземпляре контейнера. Чтобы проверить версию удаленного API Docker в вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"

key -> (string)

value -> (string)

secretOptions -> (list)

Секреты для передачи в конфигурацию журнала. Дополнительные сведения см. в разделе "Указание конфиденциальных данных" в Руководстве пользователя Batch .

(structure)

Объект, представляющий секрет для предоставления вашему контейнеру. Секреты могут быть предоставлены контейнеру следующими способами:

  • Чтобы внедрить конфиденциальные данные в ваши контейнеры в качестве переменных среды, используйте параметр определения контейнера secrets .
  • Чтобы сослаться на конфиденциальную информацию в конфигурации журнала контейнера, используйте параметр определения контейнера secretOptions .

Дополнительные сведения см. в разделе "Указание конфиденциальных данных" в Руководстве пользователя Batch .

name -> (string)

Имя секрета.

valueFrom -> (string)

Секрет для предоставления контейнеру. Поддерживаемые значения — это либо полное имя ресурса Amazon (ARN) секрета Secrets Manager, либо полное имя ресурса (ARN) параметра в Amazon Web Services Systems Manager Parameter Store.

Примечание

Если параметр Amazon Web Services Systems Manager Parameter Store существует в том же регионе, что и задание, которое вы запускаете, вы можете использовать либо полное имя ресурса Amazon (ARN), либо имя параметра. Если параметр существует в другом регионе, необходимо указать полный ARN.

secrets -> (list)

Секреты для контейнера. Дополнительные сведения см. в разделе "Указание конфиденциальных данных" в Руководстве пользователя Batch .

(structure)

Объект, представляющий секрет для предоставления вашему контейнеру. Секреты могут быть предоставлены контейнеру следующими способами:

  • Чтобы внедрить конфиденциальные данные в ваши контейнеры в качестве переменных среды, используйте параметр определения контейнера secrets .
  • Чтобы сослаться на конфиденциальную информацию в конфигурации журнала контейнера, используйте параметр определения контейнера secretOptions .

Дополнительные сведения см. в разделе "Указание конфиденциальных данных" в Руководстве пользователя Batch .

name -> (string)

Имя секрета.

valueFrom -> (string)

Секрет для предоставления контейнеру. Поддерживаемые значения — это либо полное имя ресурса Amazon (ARN) секрета Secrets Manager, либо полное имя ресурса (ARN) параметра в Amazon Web Services Systems Manager Parameter Store.

Примечание

Если параметр Amazon Web Services Systems Manager Parameter Store существует в том же регионе, что и задание, которое вы запускаете, вы можете использовать либо полное имя ресурса Amazon (ARN), либо имя параметра. Если параметр существует в другом регионе, необходимо указать полный ARN.

networkConfiguration -> (structure)

Настройка сети для заданий, которые выполняются на ресурсах Fargate. Задания, которые выполняются на ресурсах Amazon EC2, не должны указывать этот параметр.

assignPublicIp -> (string)

Указывает, имеет ли задание общедоступный IP-адрес. Для задания, которое выполняется на ресурсах Fargate в частной подсети для отправки исходящего трафика в Интернет (например, для извлечения образов контейнеров), частная подсеть требует, чтобы шлюз NAT был прикреплен для маршрутизации запросов в Интернет. Дополнительные сведения см. в разделе "Сетевое взаимодействие задач Amazon ECS" в Руководстве разработчика Amazon Elastic Container Service . Значение по умолчанию — «DISABLED " .

fargatePlatformConfiguration -> (structure)

Конфигурация платформы для заданий, которые выполняются на ресурсах Fargate. Задания, которые выполняются на ресурсах Amazon EC2, не должны указывать этот параметр.

platformVersion -> (string)

Версия платформы Fargate, на которой выполняются задания. Версия платформы указывается только для заданий, которые выполняются на ресурсах Fargate. Если он не указан, по умолчанию используется версия платформы LATEST . Это использует недавнюю, утвержденную версию платформы Fargate для вычислительных ресурсов. Дополнительные сведения см. в разделе "Версии платформы Fargate" в Руководстве разработчика Amazon Elastic Container Service .

enableExecuteCommand -> (boolean)

Определяет, включена ли функция выполнения команд для этой задачи. Если true , функция выполнения команд включена для всех контейнеров в задаче.

ephemeralStorage -> (structure)

Объем временного хранилища для выделения для задачи. Этот параметр используется для расширения общего объема доступного временного хранилища за пределы значения по умолчанию для задач, размещенных в Fargate.

sizeInGiB -> (integer)

Общий объем временного хранилища в ГиБ, который необходимо установить для задачи. Минимальное поддерживаемое значение — 21 ГиБ, а максимальное поддерживаемое значение — 200 ГиБ.

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 .

Примечание

Этот параметр необходимо установить в значение X86_64 для контейнеров Windows.

Примечание

Fargate Spot не поддерживается для ARM64 и контейнеров на базе Windows в Fargate. Очередь заданий будет заблокирована, если задание Fargate ARM64 или Windows отправлено в очередь заданий только с вычислительными средами Fargate Spot. Однако вы можете прикрепить как FARGATE , так и FARGATE_SPOT вычислительные среды к одной и той же очереди заданий.

repositoryCredentials -> (structure)

Учетные данные аутентификации частного репозитория для использования.

credentialsParameter -> (string)

Amazon Resource Name (ARN) секрета, содержащего учетные данные частного репозитория.

timeout -> (structure)

Время ожидания для заданий, отправленных с этим определением задания. По истечении указанного вами времени Batch завершает ваши задания, если они не завершены.

attemptDurationSeconds -> (integer)

Время ожидания задания (в секундах), которое отсчитывается от метки времени startedAt попытки выполнения задания. По истечении этого времени Batch завершает ваши задания, если они не завершены. Минимальное значение времени ожидания — 60 секунд.

Для заданий массива время ожидания применяется к дочерним заданиям, а не к родительскому заданию массива.

Для многоузловых параллельных (MNP) заданий время ожидания применяется ко всему заданию, а не к отдельным узлам.

nodeProperties -> (structure)

Объект со свойствами, специфичными для многоузловых параллельных заданий. Если в определении задания используется nodeProperties , его нельзя использовать в дополнение к containerProperties , ecsProperties или eksProperties .

Примечание

Если задание выполняется на ресурсах Fargate, не указывайте nodeProperties . Используйте containerProperties .

numNodes -> (integer)

Количество узлов, связанных с многоузловым параллельным заданием.

mainNode -> (integer)

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

nodeRangeProperties -> (list)

Список диапазонов узлов и их свойств, связанных с многоузловым параллельным заданием.

(structure)

Это объект, представляющий свойства диапазона узлов для многоузлового параллельного задания.

targetNodes -> (string)

Диапазон узлов с использованием значений индексов узлов. Диапазон 0:3 указывает узлы со значениями индекса от 0 до 3 . Если начальное значение диапазона опущено (:n ), то для запуска диапазона используется 0 . Если конечное значение диапазона опущено (n: ), то для завершения диапазона используется самый высокий возможный индекс узла. Ваши кумулятивные диапазоны узлов должны учитывать все узлы (0:n ). Вы можете вкладывать диапазоны узлов (например, 0:10 и 4:5 ). В этом случае свойства диапазона 4:5 переопределяют свойства 0:10 .

container -> (structure)

Детали контейнера для диапазона узлов.

image -> (string)

Обязательный параметр. Образ, используемый для запуска контейнера. Эта строка передается непосредственно в демон Docker. Образы в реестре Docker Hub доступны по умолчанию. Другие репозитории указываются с помощью `` repository-url /image :tag `` . Он может содержать до 255 символов. Он может содержать прописные и строчные буквы, цифры, дефисы (-), подчеркивания (_), двоеточия (:), точки (.), косые черты (/) и знаки номера (#). Этот параметр соответствует Image в разделе Create a container (Создать контейнер) API 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 -> (integer)

Этот параметр устарел, используйте resourceRequirements , чтобы указать требования vCPU для определения задания. Не поддерживается для заданий, выполняемых на ресурсах Fargate. Для заданий, выполняемых на ресурсах Amazon EC2, он указывает количество виртуальных ЦП, зарезервированных для задания.

Каждый vCPU эквивалентен 1024 долям ЦП. Этот параметр соответствует CpuShares в разделе Create a container (Создать контейнер) API Docker Remote API и параметру --cpu-shares в docker run . Количество vCPU необходимо указать, но его можно указать в нескольких местах. Необходимо указать его как минимум один раз для каждого узла.

memory -> (integer)

Этот параметр устарел, используйте resourceRequirements , чтобы указать требования к памяти для определения задания. Не поддерживается для заданий, выполняемых на ресурсах Fargate. Для заданий, выполняемых на ресурсах Amazon EC2, он указывает жесткий предел памяти (в МиБ) для контейнера. Если контейнер пытается превысить указанное число, он завершается. Необходимо указать не менее 4 МиБ памяти для задания, используя этот параметр. Жесткий предел памяти можно указать в нескольких местах. Его необходимо указать для каждого узла хотя бы один раз.

command -> (list)

Команда, которая передается в контейнер. Этот параметр соответствует Cmd в разделе Create a container (Создать контейнер) API Docker Remote API и параметру COMMAND в docker run . Дополнительные сведения см. по адресу https://docs.docker.com/engine/reference/builder/#cmd .

(string)

jobRoleArn -> (string)

Ресурсный номер Amazon (ARN) роли IAM, которую контейнер может принимать для разрешений Amazon Web Services. Дополнительные сведения см. в разделе IAM roles for tasks (Роли IAM для задач) в Руководстве разработчика Amazon Elastic Container Service .

executionRoleArn -> (string)

Ресурсный номер Amazon (ARN) роли выполнения, которую может принимать Batch. Для заданий, выполняемых на ресурсах Fargate, необходимо предоставить роль выполнения. Дополнительные сведения см. в разделе Batch execution IAM role (Роль IAM выполнения Batch) в Руководстве пользователя Batch .

volumes -> (list)

Список томов данных, используемых в задании.

(structure)

Том данных, который используется в свойствах контейнера задания.

host -> (structure)

Содержимое параметра host определяет, сохраняется ли том данных на экземпляре контейнера хоста и где он хранится. Если параметр host пуст, демон Docker назначает путь к хосту для вашего тома данных. Однако данные не гарантированно сохранятся после прекращения работы связанных с ним контейнеров.

Примечание

Этот параметр не применим к заданиям, которые выполняются на ресурсах Fargate, и его не следует указывать.

sourcePath -> (string)

Путь в экземпляре контейнера хоста, который представлен контейнеру. Если этот параметр пуст, демон Docker назначил для вас путь к хосту. Если этот параметр содержит местоположение файла, том данных сохраняется в указанном месте в экземпляре контейнера хоста до тех пор, пока вы не удалите его вручную. Если местоположение пути к источнику не существует в экземпляре контейнера хоста, демон Docker создает его. Если местоположение существует, содержимое папки пути к источнику экспортируется.

Примечание

Этот параметр не применим к заданиям, которые выполняются на ресурсах Fargate. Не указывайте его для этих заданий.

name -> (string)

Имя тома. Он может содержать до 255 символов. Он может содержать прописные и строчные буквы, цифры, дефисы (-) и подчеркивания (_). На это имя ссылаются в параметре sourceVolume определения контейнера mountPoints .

efsVolumeConfiguration -> (structure)

Этот параметр указывается при использовании файловой системы Amazon Elastic File System для хранения заданий. Задания, выполняемые на ресурсах Fargate, должны указывать параметр platformVersion не менее 1.4.0 .

fileSystemId -> (string)

Идентификатор файловой системы Amazon EFS для использования.

rootDirectory -> (string)

Каталог внутри файловой системы Amazon EFS, который необходимо подключить в качестве корневого каталога внутри хоста. Если этот параметр опущен, вместо этого используется корень тома Amazon EFS. Указание параметра / имеет тот же эффект, что и пропуск этого параметра. Максимальная длина — 4096 символов.

Предупреждение

Если в authorizationConfig указана точка доступа EFS, параметр корневого каталога должен быть либо опущен, либо установлен в значение / , что обеспечивает соблюдение пути, заданного в точке доступа Amazon EFS.

transitEncryption -> (string)

Определяет, следует ли включать шифрование для данных Amazon EFS при передаче между хостом Amazon ECS и сервером Amazon EFS. Шифрование при передаче должно быть включено, если используется авторизация IAM Amazon EFS. Если этот параметр опущен, используется значение по умолчанию DISABLED . Дополнительные сведения см. в разделе Encrypting data in transit (Шифрование данных при передаче) в Руководстве пользователя Amazon Elastic File System .

transitEncryptionPort -> (integer)

Порт, используемый при отправке зашифрованных данных между хостом Amazon ECS и сервером Amazon EFS. Если не указать порт шифрования при передаче, используется стратегия выбора порта, которую использует помощник подключения Amazon EFS. Значение должно быть от 0 до 65 535. Дополнительные сведения см. в разделе EFS mount helper (Помощник подключения EFS) в Руководстве пользователя Amazon Elastic File System .

authorizationConfig -> (structure)

Сведения о конфигурации авторизации для файловой системы Amazon EFS.

accessPointId -> (string)

Идентификатор точки доступа Amazon EFS для использования. Если указана точка доступа, значение корневого каталога, указанное в EFSVolumeConfiguration , должно быть либо опущено, либо установлено в значение / , что обеспечивает соблюдение пути, заданного в точке доступа EFS. Если используется точка доступа, шифрование при передаче должно быть включено в EFSVolumeConfiguration . Дополнительные сведения см. в разделе Working with Amazon EFS access points (Работа с точками доступа Amazon EFS) в Руководстве пользователя Amazon Elastic File System .

iam -> (string)

Следует ли использовать роль IAM задания Batch, определенную в определении задания, при подключении файловой системы Amazon EFS. Если включено, шифрование при передаче должно быть включено в EFSVolumeConfiguration . Если этот параметр опущен, используется значение по умолчанию DISABLED . Дополнительные сведения см. в разделе Using Amazon EFS access points (Использование точек доступа Amazon EFS) в Руководстве пользователя Batch . Для авторизации IAM EFS требуется, чтобы TransitEncryption было ENABLED и было указано значение JobRoleArn.

environment -> (list)

Переменные среды, которые необходимо передать в контейнер. Этот параметр соответствует Env в разделе Create a container (Создать контейнер) API Docker Remote API и параметру --env в docker run .

Предупреждение

Мы не рекомендуем использовать обычные переменные среды для конфиденциальной информации, такой как данные учетных данных.

Примечание

Переменные среды не могут начинаться с «AWS_BATCH ». Эта конвенция именования зарезервирована для переменных, которые задает Batch.

(structure)

Объект пары "ключ-значение".

name -> (string)

Имя пары "ключ-значение". Для переменных среды это имя переменной среды.

value -> (string)

Значение пары "ключ-значение". Для переменных среды это значение переменной среды.

mountPoints -> (list)

Точки подключения для томов данных в вашем контейнере. Этот параметр соответствует Volumes в разделе Create a container (Создать контейнер) API Docker Remote API и параметру --volume в docker run .

(structure)

Сведения о точке подключения тома Docker, которая используется в свойствах контейнера задания. Этот параметр соответствует Volumes в разделе Create a container (Создать контейнер) Docker Remote API и параметру --volume в docker run.

containerPath -> (string)

Путь в контейнере, где подключен том хоста.

readOnly -> (boolean)

Если это значение равно true , контейнер имеет доступ только для чтения к тому. В противном случае контейнер может выполнять запись в том. Значение по умолчанию — false .

sourceVolume -> (string)

Имя тома для подключения.

readonlyRootFilesystem -> (boolean)

Когда этот параметр имеет значение true, контейнеру предоставляется доступ только для чтения к его корневой файловой системе. Этот параметр соответствует ReadonlyRootfs в разделе Create a container (Создать контейнер) API Docker Remote API и параметру --read-only в docker run .

privileged -> (boolean)

Когда этот параметр имеет значение true, контейнеру предоставляются повышенные разрешения в экземпляре контейнера хоста (аналогично пользователю root). Этот параметр соответствует Privileged в разделе Create a container (Создать контейнер) API Docker Remote API и параметру --privileged в docker run . Значение по умолчанию — false.

Примечание

Этот параметр не применим к заданиям, которые выполняются на ресурсах Fargate, и его не следует указывать или указывать как false.

ulimits -> (list)

Список 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.

type=”GPU”

Количество физических графических процессоров, резервируемых для контейнера. Убедитесь, что количество графических процессоров, зарезервированных для всех контейнеров в задании, не превышает количество доступных графических процессоров на вычислительном ресурсе, на котором запущено задание.

Примечание

Графические процессоры недоступны для заданий, выполняющихся на ресурсах Fargate.

type=”MEMORY”

Жесткий предел памяти (в МиБ), представленный контейнеру. Этот параметр поддерживается для заданий, выполняющихся на ресурсах Amazon EC2. Если ваш контейнер пытается превысить указанный объем памяти, контейнер завершается. Этот параметр сопоставляется с Memory в разделе Создание контейнера в Docker Remote API и параметром --memory для docker run. Необходимо указать не менее 4 МиБ памяти для задания. Это обязательно, но может быть указано в нескольких местах для параллельных многоузловых (MNP) заданий. Он должен быть указан для каждого узла хотя бы один раз. Этот параметр сопоставляется с Memory в разделе Создание контейнера в Docker Remote API и параметром --memory для docker run.

Примечание

Если вы пытаетесь максимально эффективно использовать ресурсы, предоставляя своим заданиям как можно больше памяти для определенного типа экземпляра, см. раздел Memory management в Руководстве пользователя Batch .

Для заданий, выполняющихся на ресурсах Fargate, value является жестким пределом (в МиБ), и он должен соответствовать одному из поддерживаемых значений, а значения VCPU должны быть одним из значений, поддерживаемых для этого значения памяти.

value = 512

VCPU = 0.25

value = 1024

VCPU = 0.25 или 0.5

value = 2048

VCPU = 0.25, 0.5 или 1

value = 3072

VCPU = 0.5 или 1

value = 4096

VCPU = 0.5, 1 или 2

value = 5120, 6144 или 7168

VCPU = 1 или 2

value = 8192

VCPU = 1, 2 или 4

value = 9216, 10240, 11264, 12288, 13312, 14336 или 15360

VCPU = 2 или 4

value = 16384

VCPU = 2, 4 или 8

value = 17408, 18432, 19456, 21504, 22528, 23552, 25600, 26624, 27648, 29696 или 30720

VCPU = 4

value = 20480, 24576 или 28672

VCPU = 4 или 8

value = 36864, 45056, 53248 или 61440

VCPU = 8

value = 32768, 40960, 49152 или 57344

VCPU = 8 или 16

value = 65536, 73728, 81920, 90112, 98304, 106496, 114688 или 122880

VCPU = 16

type=”VCPU”

Количество vCPU, зарезервированных для контейнера. Этот параметр сопоставляется с CpuShares в разделе Создание контейнера в Docker Remote API и параметром --cpu-shares для docker run. Каждый vCPU эквивалентен 1024 долям ЦП. Для ресурсов Amazon EC2 необходимо указать не менее одного vCPU. Это обязательно, но может быть указано в нескольких местах; он должен быть указан для каждого узла хотя бы один раз.

По умолчанию для квоты ресурсов vCPU Fargate On-Demand составляет 6 vCPU. Дополнительные сведения о квотах Fargate см. в разделе Квоты Fargate в Общем справочнике Amazon Web Services.

Для заданий, выполняющихся на ресурсах Fargate, value должен соответствовать одному из поддерживаемых значений, а значения MEMORY должны быть одним из значений, поддерживаемых для этого значения VCPU. Поддерживаемые значения: 0.25, 0.5, 1, 2, 4, 8 и 16

value = 0.25

MEMORY = 512, 1024 или 2048

value = 0.5

MEMORY = 1024, 2048, 3072 или 4096

value = 1

MEMORY = 2048, 3072, 4096, 5120, 6144, 7168 или 8192

value = 2

MEMORY = 4096, 5120, 6144, 7168, 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360 или 16384

value = 4

MEMORY = 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, 16384, 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696 или 30720

value = 8

MEMORY = 16384, 20480, 24576, 28672, 32768, 36864, 40960, 45056, 49152, 53248, 57344 или 61440

value = 16

MEMORY = 32768, 40960, 49152, 57344, 65536, 73728, 81920, 90112, 98304, 106496, 114688 или 122880

type -> (string)

Тип ресурса, выделяемого контейнеру. Поддерживаемые ресурсы включают GPU, MEMORY и VCPU.

linuxParameters -> (structure)

Специфичные для Linux модификации, которые применяются к контейнеру, такие как детали сопоставления устройств.

devices -> (list)

Любые устройства хоста, которые необходимо предоставить контейнеру. Этот параметр отображается в Devices в разделе «Создание контейнера» в Docker Remote API и в опции --device для docker run.

Примечание

Этот параметр неприменим к заданиям, выполняемым на ресурсах Fargate. Не указывайте его для этих заданий.

(structure)

Объект, представляющий устройство хоста экземпляра контейнера.

Примечание

Этот объект неприменим к заданиям, выполняемым на ресурсах Fargate, и его не следует указывать.

hostPath -> (string)

Путь к устройству на экземпляре контейнера хоста.

containerPath -> (string)

Путь внутри контейнера, используемый для предоставления устройства хоста. По умолчанию используется значение hostPath .

permissions -> (list)

Явные разрешения, которые необходимо предоставить контейнеру для устройства. По умолчанию контейнер имеет разрешения для read , write и mknod для устройства.

(string)

initProcessEnabled -> (boolean)

Если true, запустите процесс init внутри контейнера, который перенаправляет сигналы и собирает процессы. Этот параметр отображается в опции --init для docker run. Этот параметр требует версию 1.25 Docker Remote API или выше на экземпляре контейнера. Чтобы проверить версию Docker Remote API на экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"

sharedMemorySize -> (integer)

Значение размера (в МиБ) тома /dev/shm . Этот параметр отображается в опции --shm-size для docker run.

Примечание

Этот параметр неприменим к заданиям, выполняемым на ресурсах Fargate. Не указывайте его для этих заданий.

tmpfs -> (list)

Путь к контейнеру, параметры монтирования и размер (в МиБ) точки монтирования tmpfs . Этот параметр отображается в опции --tmpfs для docker run.

Примечание

Этот параметр неприменим к заданиям, выполняемым на ресурсах Fargate. Не указывайте этот параметр для этого типа ресурсов.

(structure)

Путь к контейнеру, параметры монтирования и размер точки монтирования tmpfs .

Примечание

Этот объект неприменим к заданиям, выполняемым на ресурсах Fargate.

containerPath -> (string)

Абсолютный путь к файлу в контейнере, где смонтирован том tmpfs .

size -> (integer)

Размер (в МиБ) тома tmpfs .

mountOptions -> (list)

Список параметров монтирования тома 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 “

(string)

maxSwap -> (integer)

Общий объем памяти подкачки (в МиБ), который может использовать контейнер. Этот параметр преобразуется в опцию --memory-swap для docker run, где значение представляет собой сумму памяти контейнера плюс значение maxSwap . Для получения дополнительной информации см. ` --memory-swap details <https://docs.docker.com/config/containers/resource_constraints/#–memory-swap-details>`__ в документации Docker.

Если указано значение maxSwap 0 , контейнер не использует подкачку. Допустимые значения — 0 или любое положительное целое число. Если параметр maxSwap опущен, контейнер не использует конфигурацию подкачки для экземпляра контейнера, на котором он работает. Необходимо установить значение maxSwap для использования параметра swappiness .

Примечание

Этот параметр неприменим к заданиям, выполняемым на ресурсах Fargate. Не указывайте его для этих заданий.

swappiness -> (integer)

Вы можете использовать этот параметр для настройки поведения подкачки памяти контейнера. Значение 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 -> (structure)

Спецификация конфигурации журнала для контейнера.

Этот параметр сопоставляется с LogConfig в разделе «Создание контейнера» удаленного API Docker и опцией --log-driver для docker run. По умолчанию контейнеры используют тот же драйвер ведения журнала, что и демон Docker. Однако контейнер может использовать другой драйвер ведения журнала, чем демон Docker, указав драйвер журнала с этим параметром в определении контейнера. Чтобы использовать другой драйвер ведения журнала для контейнера, система ведения журнала должна быть правильно настроена на экземпляре контейнера (или на другом сервере журнала для параметров удаленного ведения журнала). Для получения дополнительной информации о параметрах различных поддерживаемых драйверов ведения журнала см. Настройка драйверов ведения журнала в документации Docker.

Примечание

В настоящее время Batch поддерживает подмножество драйверов ведения журнала, доступных для демона Docker (показано в типе данных LogConfiguration).

Этот параметр требует версию 1.18 удаленного API Docker или более позднюю на вашем экземпляре контейнера. Чтобы проверить версию удаленного API Docker на вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"

Примечание

Агент контейнера 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 или партнера Amazon Web Services в Руководстве разработчика Amazon Elastic Container Service.

awslogs

Указывает драйвер ведения журнала Amazon CloudWatch Logs. Для получения дополнительной информации см. Использование драйвера журнала awslogs в Руководстве пользователя Batch и Драйвер ведения журнала Amazon CloudWatch Logs в документации Docker.

fluentd

Указывает драйвер ведения журнала Fluentd. Для получения дополнительной информации, включая использование и параметры, см. Драйвер ведения журнала Fluentd в документации Docker.

gelf

Указывает драйвер ведения журнала Graylog Extended Format (GELF). Для получения дополнительной информации, включая использование и параметры, см. Драйвер ведения журнала Graylog Extended Format в документации Docker.

journald

Указывает драйвер ведения журнала journald. Для получения дополнительной информации, включая использование и параметры, см. Драйвер ведения журнала Journald в документации Docker.

json-file

Указывает драйвер ведения журнала JSON. Для получения дополнительной информации, включая использование и параметры, см. Драйвер ведения журнала JSON File в документации Docker.

splunk

Указывает драйвер ведения журнала Splunk. Для получения дополнительной информации, включая использование и параметры, см. Драйвер ведения журнала Splunk в документации Docker.

syslog

Указывает драйвер ведения журнала syslog. Для получения дополнительной информации, включая использование и параметры, см. Драйвер ведения журнала Syslog в документации Docker.

Примечание

Если у вас есть пользовательский драйвер, который не указан выше и который вы хотите использовать с агентом контейнера Amazon ECS, вы можете сделать форк проекта агента контейнера Amazon ECS, доступного на GitHub, и настроить его для работы с этим драйвером. Мы рекомендуем вам отправлять запросы на включение изменений, которые вы хотите включить. Однако в настоящее время Amazon Web Services не поддерживает запуск измененных копий этого программного обеспечения.

Этот параметр требует версию 1.18 удаленного API Docker или более позднюю на вашем экземпляре контейнера. Чтобы проверить версию удаленного API Docker на вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"

options -> (map)

Параметры конфигурации для отправки в драйвер журнала. Этот параметр требует версию 1.19 удаленного API Docker или более позднюю на вашем экземпляре контейнера. Чтобы проверить версию удаленного API Docker на вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"

key -> (string)

value -> (string)

secretOptions -> (list)

Секреты для передачи в конфигурацию журнала. Для получения дополнительной информации см. Указание конфиденциальных данных в Руководстве пользователя Batch.

(structure)

Объект, представляющий секрет для предоставления вашему контейнеру. Секреты могут быть предоставлены контейнеру следующими способами:

  • Чтобы внедрить конфиденциальные данные в ваши контейнеры в виде переменных среды, используйте параметр определения контейнера secrets.
  • Чтобы сослаться на конфиденциальную информацию в конфигурации журнала контейнера, используйте параметр определения контейнера secretOptions.

Для получения дополнительной информации см. Указание конфиденциальных данных в Руководстве пользователя Batch.

name -> (string)

Имя секрета.

valueFrom -> (string)

Секрет для предоставления контейнеру. Поддерживаемые значения — это либо полное имя ресурса Amazon (ARN) секрета Secrets Manager, либо полное имя ресурса (ARN) параметра в Amazon Web Services Systems Manager Parameter Store.

Примечание

Если параметр Amazon Web Services Systems Manager Parameter Store существует в том же регионе, что и запускаемое вами задание, вы можете использовать либо полное имя ресурса Amazon (ARN), либо имя параметра. Если параметр существует в другом регионе, необходимо указать полный ARN.

secrets -> (list)

Секреты для контейнера. Для получения дополнительной информации см. Указание конфиденциальных данных в Руководстве пользователя Batch.

(structure)

Объект, представляющий секрет для предоставления вашему контейнеру. Секреты могут быть предоставлены контейнеру следующими способами:

  • Чтобы внедрить конфиденциальные данные в ваши контейнеры в виде переменных среды, используйте параметр определения контейнера secrets.
  • Чтобы сослаться на конфиденциальную информацию в конфигурации журнала контейнера, используйте параметр определения контейнера secretOptions.

Для получения дополнительной информации см. Указание конфиденциальных данных в Руководстве пользователя Batch.

name -> (string)

Имя секрета.

valueFrom -> (string)

Секрет для предоставления контейнеру. Поддерживаемые значения — это либо полное имя ресурса Amazon (ARN) секрета Secrets Manager, либо полное имя ресурса (ARN) параметра в Amazon Web Services Systems Manager Parameter Store.

Примечание

Если параметр Amazon Web Services Systems Manager Parameter Store существует в том же регионе, что и запускаемое вами задание, вы можете использовать либо полное имя ресурса Amazon (ARN), либо имя параметра. Если параметр существует в другом регионе, необходимо указать полный ARN.

networkConfiguration -> (structure)

Конфигурация сети для заданий, выполняемых на ресурсах Fargate. Задания, выполняемые на ресурсах Amazon EC2, не должны указывать этот параметр.

assignPublicIp -> (string)

Указывает, имеет ли задание общедоступный IP-адрес. Для задания, выполняемого на ресурсах Fargate в частной подсети, чтобы отправлять исходящий трафик в Интернет (например, для извлечения образов контейнеров), частная подсеть требует, чтобы шлюз NAT был подключен для маршрутизации запросов в Интернет. Для получения дополнительной информации см. Сеть задач Amazon ECS в Руководстве разработчика Amazon Elastic Container Service. Значение по умолчанию — «DISABLED».

fargatePlatformConfiguration -> (structure)

Конфигурация платформы для заданий, выполняемых на ресурсах Fargate. Задания, выполняемые на ресурсах Amazon EC2, не должны указывать этот параметр.

platformVersion -> (string)

Версия платформы Fargate, на которой выполняются задания. Версия платформы указывается только для заданий, выполняемых на ресурсах Fargate. Если ни одна из них не указана, по умолчанию используется версия платформы LATEST. Это использует недавнюю, одобренную версию платформы Fargate для вычислительных ресурсов. Для получения дополнительной информации см. Версии платформы Fargate в Руководстве разработчика Amazon Elastic Container Service.

enableExecuteCommand -> (boolean)

Определяет, включена ли функция выполнения команд для этой задачи. Если true, функция выполнения команд включена во всех контейнерах задачи.

ephemeralStorage -> (structure)

Объем временного хранилища, выделяемого для задачи. Этот параметр используется для расширения общего объема доступного временного хранилища, помимо значения по умолчанию, для задач, размещенных в Fargate.

sizeInGiB -> (integer)

Общий объем временного хранилища в ГиБ для установки для задачи. Минимальное поддерживаемое значение — 21 ГиБ, а максимальное поддерживаемое значение — 200 ГиБ.

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 .

Примечание

Этот параметр должен быть установлен в X86_64 для контейнеров Windows.

Примечание

Fargate Spot не поддерживается для ARM64 и контейнеров на базе Windows в Fargate. Очередь заданий будет заблокирована, если задание Fargate ARM64 или задание Windows отправлено в очередь заданий только с вычислительными средами Fargate Spot. Однако вы можете прикрепить вычислительные среды FARGATE и FARGATE_SPOT к одной и той же очереди заданий.

repositoryCredentials -> (structure)

Учетные данные аутентификации частного репозитория для использования.

credentialsParameter -> (string)

Имя ресурса Amazon (ARN) секрета, содержащего учетные данные частного репозитория.

instanceTypes -> (list)

Типы экземпляров базовой инфраструктуры хоста параллельного задания с несколькими узлами.

Примечание

Этот параметр не применяется к заданиям, выполняемым в ресурсах Fargate.

Кроме того, этот объект списка в настоящее время ограничен одним элементом.

(string)

ecsProperties -> (structure)

Это объект, представляющий свойства диапазона узлов для параллельного задания с несколькими узлами.

taskProperties -> (list)

Объект, содержащий свойства для определения задачи Amazon ECS задания.

Примечание

Этот объект в настоящее время ограничен одним элементом задачи. Однако элемент задачи может запускать до 10 контейнеров.

(structure)

Свойства для определения задачи, описывающего определения контейнера и тома задачи Amazon ECS. Вы можете указать, какие образы Docker использовать, необходимые ресурсы и другие конфигурации, связанные с запуском определения задачи через службу или задачу Amazon ECS.

containers -> (list)

Этот объект — список контейнеров.

(structure)

Свойства контейнера используются для определений заданий на основе Amazon ECS. Эти свойства описывают контейнер, который запускается в рамках задания.

command -> (list)

Команда, передаваемая в контейнер. Этот параметр сопоставляется с Cmd в разделе «Создание контейнера» удаленного API Docker и параметром COMMAND для docker run . Дополнительные сведения см. в справочнике Dockerfile: CMD .

(string)

dependsOn -> (list)

Список контейнеров, от которых зависит этот контейнер.

(structure)

Список контейнеров, от которых зависит эта задача.

containerName -> (string)

Уникальный идентификатор для контейнера.

condition -> (string)

Условие зависимости контейнера. Доступны следующие условия и их поведение:

  • START - Это условие эмулирует поведение ссылок и томов сегодня. Оно проверяет, что зависимый контейнер запущен, прежде чем разрешить запуск других контейнеров.
  • COMPLETE - Это условие проверяет, что зависимый контейнер завершил работу (завершил работу) до того, как разрешить запуск других контейнеров. Это может быть полезно для несущественных контейнеров, которые запускают сценарий, а затем завершают работу. Это условие нельзя установить для основного контейнера.
  • SUCCESS - Это условие совпадает с COMPLETE , но также требует, чтобы контейнер завершил работу с нулевым статусом. Это условие нельзя установить для основного контейнера.

environment -> (list)

Переменные среды, которые необходимо передать в контейнер. Этот параметр сопоставляется с Env в разделе «Создание контейнера» удаленного API Docker и параметром --env для docker run .

Предупреждение

Мы не рекомендуем использовать переменные среды в виде обычного текста для конфиденциальной информации, например данных учетных данных.

Примечание

Переменные среды не могут начинаться с AWS_BATCH . Эта конвенция именования зарезервирована для переменных, которые задает Batch.

(structure)

Объект пары ключ-значение.

name -> (string)

Имя пары ключ-значение. Для переменных среды это имя переменной среды.

value -> (string)

Значение пары ключ-значение. Для переменных среды это значение переменной среды.

essential -> (boolean)

Если параметр essential контейнера помечен как true , и этот контейнер завершает работу или останавливается по какой-либо причине, все остальные контейнеры, которые являются частью задачи, останавливаются. Если параметр essential контейнера помечен как false, его сбой не влияет на остальные контейнеры в задаче. Если этот параметр опущен, предполагается, что контейнер является основным.

Все задания должны иметь как минимум один основной контейнер. Если у вас есть приложение, состоящее из нескольких контейнеров, сгруппируйте контейнеры, используемые для общей цели, в компоненты и разделите разные компоненты на несколько определений задач. Дополнительные сведения см. в разделе Application Architecture в Руководстве разработчика Amazon Elastic Container Service .

firelensConfiguration -> (structure)

Конфигурация FireLens для контейнера. Это используется для указания и настройки маршрутизатора журналов для журналов контейнера. Дополнительные сведения см. в разделе Custom log routing в Руководстве разработчика Amazon Elastic Container Service .

type -> (string)

Маршрутизатор журналов для использования. Допустимые значения: fluentd или fluentbit .

options -> (map)

Параметры, используемые при настройке маршрутизатора журналов. Это поле является необязательным и может использоваться для указания пользовательского файла конфигурации или для добавления дополнительных метаданных, таких как задача, определение задачи, кластер и сведения об экземпляре контейнера в событие журнала. При указании синтаксис для использования: "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 -> (string)

value -> (string)

image -> (string)

Образ, используемый для запуска контейнера. Эта строка передается непосредственно демону Docker. По умолчанию доступны образы в реестре Docker Hub. Другие репозитории указываются с помощью 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 -> (structure)

Специфичные для Linux модификации, которые применяются к контейнеру, такие как возможности ядра Linux. Для получения дополнительной информации см. KernelCapabilities.

devices -> (list)

Любые устройства хоста, которые нужно предоставить контейнеру. Этот параметр сопоставляется с Devices в разделе Создание контейнера API Docker Remote и опцией --device для docker run.

Примечание

Этот параметр не применим к заданиям, выполняемым на ресурсах Fargate. Не указывайте его для этих заданий.

(structure)

Объект, представляющий устройство хоста экземпляра контейнера.

Примечание

Этот объект не применим к заданиям, выполняемым на ресурсах Fargate, и его не следует указывать.

hostPath -> (string)

Путь для устройства в экземпляре хоста контейнера.

containerPath -> (string)

Путь внутри контейнера, который используется для предоставления доступа к устройству хоста. По умолчанию используется значение hostPath.

permissions -> (list)

Явные разрешения, которые необходимо предоставить контейнеру для устройства. По умолчанию контейнер имеет разрешения для read, write и mknod для устройства.

(string)

initProcessEnabled -> (boolean)

Если значение true, запустите процесс init внутри контейнера, который перенаправляет сигналы и освобождает процессы. Этот параметр сопоставляется с опцией --init для docker run. Этот параметр требует версию 1.25 Docker Remote API или выше в вашем экземпляре контейнера. Чтобы проверить версию API Docker Remote в вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"

sharedMemorySize -> (integer)

Значение размера (в МиБ) тома /dev/shm. Этот параметр сопоставляется с опцией --shm-size для docker run.

Примечание

Этот параметр не применим к заданиям, выполняемым на ресурсах Fargate. Не указывайте его для этих заданий.

tmpfs -> (list)

Путь к контейнеру, параметры монтирования и размер (в МиБ) монтирования tmpfs. Этот параметр сопоставляется с опцией --tmpfs для docker run.

Примечание

Этот параметр не применим к заданиям, выполняемым на ресурсах Fargate. Не указывайте этот параметр для этого типа ресурса.

(structure)

Путь к контейнеру, параметры монтирования и размер монтирования tmpfs.

Примечание

Этот объект не применим к заданиям, выполняемым на ресурсах Fargate.

containerPath -> (string)

Абсолютный путь к файлу в контейнере, в котором смонтирован том tmpfs.

size -> (integer)

Размер (в МиБ) тома tmpfs.

mountOptions -> (list)

Список параметров монтирования тома 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 “

(string)

maxSwap -> (integer)

Общий объем памяти подкачки (в МиБ), который может использовать контейнер. Этот параметр переводится в опцию --memory-swap для docker run, где значение представляет собой сумму памяти контейнера плюс значение maxSwap. Для получения дополнительной информации см. ` --memory-swap details <https://docs.docker.com/config/containers/resource_constraints/#–memory-swap-details>`__ в документации Docker.

Если указано значение maxSwap равное 0, контейнер не использует подкачку. Допустимые значения: 0 или любое положительное целое число. Если параметр maxSwap опущен, контейнер не использует конфигурацию подкачки для экземпляра контейнера, на котором он работает. Необходимо установить значение maxSwap для использования параметра swappiness.

Примечание

Этот параметр не применим к заданиям, выполняемым на ресурсах Fargate. Не указывайте его для этих заданий.

swappiness -> (integer)

Этот параметр можно использовать для настройки поведения подкачки памяти контейнера. Значение 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 -> (structure)

Спецификация конфигурации журнала для контейнера.

Этот параметр сопоставляется с LogConfig в разделе «Создание контейнера» в удаленном API Docker и с опцией --log-driver для docker run.

По умолчанию контейнеры используют тот же драйвер журналирования, который использует демон Docker. Однако контейнер может использовать другой драйвер журналирования, чем демон Docker, указав драйвер журнала с этим параметром в определении контейнера. Чтобы использовать другой драйвер журналирования для контейнера, система журнала должна быть правильно настроена на экземпляре контейнера (или на другом сервере журнала для удаленных параметров ведения журнала). Дополнительные сведения о параметрах для различных поддерживаемых драйверов журналов см. в разделе «Настройка драйверов журналирования» в документации по Docker.

Примечание

Amazon ECS в настоящее время поддерживает подмножество драйверов журналирования, доступных для демона Docker (показано в типе данных LogConfiguration). Дополнительные драйверы журналов могут быть доступны в будущих версиях агента контейнера Amazon ECS.

Этот параметр требует версии 1.18 удаленного API Docker или выше на вашем экземпляре контейнера. Чтобы проверить версию удаленного API Docker на экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: 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 или партнер Amazon Web Services» в Руководстве разработчика Amazon Elastic Container Service.

awslogs

Указывает драйвер журналирования Amazon CloudWatch Logs. Дополнительные сведения см. в разделе «Использование драйвера журнала awslogs» в Руководстве пользователя Batch и «Драйвер журнала Amazon CloudWatch Logs» в документации по Docker.

fluentd

Указывает драйвер журналирования Fluentd. Дополнительные сведения, включая использование и параметры, см. в разделе «Драйвер журналирования Fluentd» в документации по Docker.

gelf

Указывает драйвер журналирования Graylog Extended Format (GELF). Дополнительные сведения, включая использование и параметры, см. в разделе «Драйвер журналирования Graylog Extended Format» в документации по Docker.

journald

Указывает драйвер журналирования journald. Дополнительные сведения, включая использование и параметры, см. в разделе «Драйвер журналирования Journald» в документации по Docker.

json-file

Указывает драйвер журналирования JSON file. Дополнительные сведения, включая использование и параметры, см. в разделе «Драйвер журналирования JSON File» в документации по Docker.

splunk

Указывает драйвер журналирования Splunk. Дополнительные сведения, включая использование и параметры, см. в разделе «Драйвер журналирования Splunk» в документации по Docker.

syslog

Указывает драйвер журналирования Syslog. Дополнительные сведения, включая использование и параметры, см. в разделе «Драйвер журналирования Syslog» в документации по Docker.

Примечание

Если у вас есть пользовательский драйвер, который не указан выше, который вы хотите использовать с агентом контейнера Amazon ECS, вы можете создать форк проекта агента контейнера Amazon ECS, доступного на GitHub, и настроить его для работы с этим драйвером. Мы рекомендуем вам отправлять запросы на включение изменений, которые вы хотите включить. Однако Amazon Web Services в настоящее время не поддерживает запуск измененных копий этого программного обеспечения.

Этот параметр требует версии 1.18 удаленного API Docker или выше на вашем экземпляре контейнера. Чтобы проверить версию удаленного API Docker на экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"

options -> (map)

Параметры конфигурации для отправки в драйвер журнала. Этот параметр требует версии 1.19 удаленного API Docker или выше на вашем экземпляре контейнера. Чтобы проверить версию удаленного API Docker на экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"

key -> (string)

value -> (string)

secretOptions -> (list)

Секреты для передачи в конфигурацию журнала. Дополнительные сведения см. в разделе «Указание конфиденциальных данных» в Руководстве пользователя Batch.

(structure)

Объект, представляющий секрет, который будет предоставлен вашему контейнеру. Секреты могут быть предоставлены контейнеру следующими способами:

  • Чтобы внедрить конфиденциальные данные в ваши контейнеры в виде переменных среды, используйте параметр определения контейнера secrets.
  • Чтобы сослаться на конфиденциальную информацию в конфигурации журнала контейнера, используйте параметр определения контейнера secretOptions.

Дополнительные сведения см. в разделе «Указание конфиденциальных данных» в Руководстве пользователя Batch.

name -> (string)

Имя секрета.

valueFrom -> (string)

Секрет для предоставления контейнеру. Поддерживаемые значения — это либо полный ARN секрета Secrets Manager, либо полный ARN параметра в Amazon Web Services Systems Manager Parameter Store.

Примечание

Если параметр Amazon Web Services Systems Manager Parameter Store находится в том же регионе, что и задание, которое вы запускаете, вы можете использовать либо полный ARN (Amazon Resource Name), либо имя параметра. Если параметр находится в другом регионе, необходимо указать полный ARN.

mountPoints -> (list)

Точки монтирования для томов данных в вашем контейнере.

Этот параметр сопоставляется с Volumes в разделе «Создание контейнера» удаленного API Docker и с опцией –volume для docker run.

Контейнеры Windows могут монтировать целые каталоги на том же диске, что и $env:ProgramData. Контейнеры Windows не могут монтировать каталоги на другом диске, а точка монтирования не может быть между дисками.

(structure)

Сведения о точке монтирования тома Docker, используемой в свойствах контейнера задания. Этот параметр сопоставляется с Volumes в разделе «Создание контейнера» удаленного API Docker и с опцией --volume для docker run.

containerPath -> (string)

Путь в контейнере, где смонтирован том хоста.

readOnly -> (boolean)

Если это значение true, контейнер имеет доступ к тому только для чтения. В противном случае контейнер может записывать в том. Значение по умолчанию — false.

sourceVolume -> (string)

Имя тома для монтирования.

name -> (string)

Имя контейнера. Имя может использоваться в качестве уникального идентификатора для нацеливания ваших объектов dependsOn и Overrides.

privileged -> (boolean)

Когда этот параметр true, контейнеру предоставляются повышенные привилегии в экземпляре хост-контейнера (аналогично пользователю root). Этот параметр сопоставляется с Privileged в разделе «Создание контейнера» удаленного API Docker и с опцией --privileged для docker run.

Примечание

Этот параметр не поддерживается для контейнеров Windows или задач, выполняемых в Fargate.

readonlyRootFilesystem -> (boolean)

Когда этот параметр имеет значение true, контейнеру предоставляется доступ только для чтения к его корневой файловой системе. Этот параметр сопоставляется с ReadonlyRootfs в разделе «Создание контейнера» удаленного API Docker и с опцией --read-only для docker run.

Примечание

Этот параметр не поддерживается для контейнеров Windows.

repositoryCredentials -> (structure)

Учетные данные для аутентификации в частном репозитории для использования.

credentialsParameter -> (string)

Имя ресурса Amazon (ARN) секрета, содержащего учетные данные частного репозитория.

resourceRequirements -> (list)

Тип и объем ресурса, назначаемого контейнеру. Единственным поддерживаемым ресурсом является GPU.

(структура)

Тип и объем ресурса, назначаемого контейнеру. Поддерживаемые ресурсы включают GPU , MEMORY и VCPU .

значение -> (string)

Количество указанного ресурса для резервирования для контейнера. Значения варьируются в зависимости от указанного type .

type=”GPU”

Количество физических GPU для резервирования для контейнера. Убедитесь, что количество GPU, зарезервированных для всех контейнеров в задании, не превышает количество доступных GPU на вычислительном ресурсе, на котором запущено задание.

Примечание

GPU недоступны для заданий, выполняющихся на ресурсах Fargate.

type=”MEMORY”

Жесткий предел памяти (в MiB), имеющийся у контейнера. Этот параметр поддерживается для заданий, выполняющихся на ресурсах Amazon EC2. Если ваш контейнер пытается превысить указанную память, контейнер завершается. Этот параметр отображается в Memory в разделе Create a container Docker Remote API и в опции --memory для docker run . Необходимо указать не менее 4 MiB памяти для задания. Это обязательно, но может быть указано в нескольких местах для многоузловых параллельных (MNP) заданий. Он должен быть указан для каждого узла как минимум один раз. Этот параметр отображается в Memory в разделе Create a container Docker Remote API и в опции --memory для docker run .

Примечание

Если вы пытаетесь максимально использовать свои ресурсы, предоставляя своим заданиям как можно больше памяти для конкретного типа экземпляра, см. раздел Управление памятью в Batch User Guide .

Для заданий, выполняющихся на ресурсах Fargate, тогда value — жесткий предел (в MiB), и он должен соответствовать одному из поддерживаемых значений, а значения VCPU должны быть одним из значений, поддерживаемых для этого значения памяти.

value = 512

VCPU = 0.25

value = 1024

VCPU = 0.25 или 0.5

value = 2048

VCPU = 0.25, 0.5 или 1

value = 3072

VCPU = 0.5 или 1

value = 4096

VCPU = 0.5, 1 или 2

value = 5120, 6144, или 7168

VCPU = 1 или 2

value = 8192

VCPU = 1, 2 или 4

value = 9216, 10240, 11264, 12288, 13312, 14336, или 15360

VCPU = 2 или 4

value = 16384

VCPU = 2, 4 или 8

value = 17408, 18432, 19456, 21504, 22528, 23552, 25600, 26624, 27648, 29696, или 30720

VCPU = 4

value = 20480, 24576, или 28672

VCPU = 4 или 8

value = 36864, 45056, 53248, или 61440

VCPU = 8

value = 32768, 40960, 49152, или 57344

VCPU = 8 или 16

value = 65536, 73728, 81920, 90112, 98304, 106496, 114688, или 122880

VCPU = 16

type=”VCPU”

Количество vCPU, зарезервированных для контейнера. Этот параметр отображается в CpuShares в разделе Create a container Docker Remote API и в опции --cpu-shares для docker run . Каждый vCPU эквивалентен 1024 долям CPU. Для ресурсов Amazon EC2 необходимо указать как минимум один vCPU. Это обязательно, но может быть указано в нескольких местах; это должно быть указано для каждого узла как минимум один раз.

По умолчанию для квоты ресурсов vCPU Fargate по запросу составляет 6 vCPU. Для получения дополнительной информации о квотах Fargate см. раздел Квоты Fargate в Amazon Web Services General Reference .

Для заданий, выполняющихся на ресурсах Fargate, тогда value должно соответствовать одному из поддерживаемых значений, а значения MEMORY должны быть одним из значений, поддерживаемых для этого значения VCPU . Поддерживаемые значения: 0.25, 0.5, 1, 2, 4, 8 и 16

value = 0.25

MEMORY = 512, 1024 или 2048

value = 0.5

MEMORY = 1024, 2048, 3072 или 4096

value = 1

MEMORY = 2048, 3072, 4096, 5120, 6144, 7168 или 8192

value = 2

MEMORY = 4096, 5120, 6144, 7168, 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360 или 16384

value = 4

MEMORY = 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, 16384, 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696 или 30720

value = 8

MEMORY = 16384, 20480, 24576, 28672, 32768, 36864, 40960, 45056, 49152, 53248, 57344 или 61440

value = 16

MEMORY = 32768, 40960, 49152, 57344, 65536, 73728, 81920, 90112, 98304, 106496, 114688 или 122880

type -> (string)

Тип ресурса, который будет назначен контейнеру. Поддерживаемые ресурсы включают GPU , MEMORY и VCPU .

secrets -> (list)

Секреты, передаваемые контейнеру. Для получения дополнительной информации см. раздел Указание конфиденциальных данных в Руководстве разработчика Amazon Elastic Container Service.

(структура)

Объект, представляющий секрет, который нужно предоставить вашему контейнеру. Секреты могут быть предоставлены контейнеру следующими способами:

  • Чтобы внедрить конфиденциальные данные в ваши контейнеры в качестве переменных среды, используйте параметр определения контейнера secrets .
  • Чтобы сослаться на конфиденциальную информацию в конфигурации журнала контейнера, используйте параметр определения контейнера secretOptions .

Для получения дополнительной информации см. раздел Указание конфиденциальных данных в Batch User Guide .

имя -> (string)

Имя секрета.

valueFrom -> (string)

Секрет, который будет предоставлен контейнеру. Поддерживаемыми значениями являются полное имя ресурса Amazon (ARN) секрета Secrets Manager или полное ARN параметра в Amazon Web Services Systems Manager Parameter Store.

Примечание

Если параметр Amazon Web Services Systems Manager Parameter Store существует в том же регионе, что и задание, которое вы запускаете, вы можете использовать либо полное имя ресурса Amazon (ARN), либо имя параметра. Если параметр существует в другом регионе, необходимо указать полное ARN.

ulimits -> (list)

Список ulimits для установки в контейнере. Если в определении задачи указано значение ulimit , оно переопределяет значения по умолчанию, установленные Docker. Этот параметр отображается в Ulimits в разделе Create a container Docker Remote API и в опции --ulimit для docker run .

Задачи Amazon ECS, размещенные в Fargate, используют значения ограничения ресурсов по умолчанию, установленные операционной системой, за исключением параметра ограничения ресурса nofile, который Fargate переопределяет. Ограничение ресурса nofile устанавливает ограничение на количество открытых файлов, которые может использовать контейнер. Значение по умолчанию nofile мягкого ограничения — 1024 , а значение по умолчанию жесткого ограничения — 65535 .

Этот параметр требует версии 1.18 Docker Remote API или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version --format '{{.Server.APIVersion}}'

Примечание

Этот параметр не поддерживается для контейнеров Windows.

(структура)

Настройки ulimit для передачи контейнеру. Для получения дополнительной информации см. Ulimit .

Примечание

Этот объект не применим к заданиям, выполняющимся на ресурсах Fargate.

hardLimit -> (integer)

Жесткое ограничение для типа ulimit .

имя -> (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.

Примечание

При выполнении задач с использованием сетевого режима host не запускайте контейнеры с использованием root user (UID 0) . Мы рекомендуем использовать пользователя без прав root для большей безопасности.

Вы можете указать user в следующих форматах. При указании UID или GID необходимо указать его в виде положительного целого числа.

  • user
  • user:group
  • uid
  • uid:gid
  • user:gi
  • uid:group

Примечание

Этот параметр не поддерживается для контейнеров Windows.

ephemeralStorage -> (structure)

Объем временного хранилища, выделяемого для задачи. Этот параметр используется для расширения общего объема доступного временного хранилища, помимо значения по умолчанию, для задач, размещенных в Fargate.

sizeInGiB -> (integer)

Общий объем (в GiB) временного хранилища, который необходимо настроить для задачи. Минимальное поддерживаемое значение — 21 GiB, а максимальное поддерживаемое значение — 200 GiB.

executionRoleArn -> (string)

Имя ресурса Amazon (ARN) роли выполнения, которую может принять Batch. Для заданий, выполняемых на ресурсах Fargate, необходимо предоставить роль выполнения. Для получения дополнительной информации см. Роль IAM выполнения Batch в Batch User Guide .

platformVersion -> (string)

Версия платформы Fargate, на которой выполняются задания. Версия платформы указывается только для заданий, выполняющихся на ресурсах Fargate. Если ни один из них не указан, LATEST версия платформы используется по умолчанию. Это использует недавнюю, одобренную версию платформы Fargate для вычислительных ресурсов. Для получения дополнительной информации см. Версии платформы Fargate в Amazon Elastic Container Service Developer Guide .

ipcMode -> (string)

Пространство имен ресурса IPC для использования контейнерами в задаче. Допустимые значения: host , task или none .

Если указано host , все контейнеры в задачах, которые указали режим IPC host , на одном и том же экземпляре контейнера совместно используют одни и те же ресурсы IPC с экземпляром Amazon EC2 хоста.

Если указано task , все контейнеры в указанной task совместно используют одни и те же ресурсы IPC.

Если указано none , ресурсы IPC в контейнерах задачи являются приватными и не используются совместно с другими контейнерами в задаче или в экземпляре контейнера.

Если значение не указано, общий доступ к пространству имен ресурса IPC зависит от настроек демона Docker на экземпляре контейнера. Дополнительные сведения см. в разделе Параметры IPC в справочнике по Docker run.

taskRoleArn -> (string)

Имя ресурса Amazon (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)

Указывает, имеет ли задача общедоступный IP-адрес. Для задачи, которая выполняется на ресурсах Fargate в частной подсети для отправки исходящего трафика в Интернет (например, для извлечения образов контейнеров), частная подсеть требует, чтобы шлюз NAT был присоединен для маршрутизации запросов в Интернет. Дополнительные сведения см. в разделе Сеть задач Amazon ECS в Руководстве разработчика Amazon Elastic Container Service . Значение по умолчанию: «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 Scheduler проверяет вычислительные среды, присоединенные к очереди заданий, перед регистрацией определения задачи в 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 .

Примечание

Этот параметр должен быть установлен в значение X86_64 для контейнеров Windows.

Примечание

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)

Имя тома. Его длина может составлять до 255 символов. Он может содержать прописные и строчные буквы, цифры, дефисы (-) и символы подчеркивания (_). На это имя ссылаются в параметре sourceVolume определения контейнера mountPoints .

efsVolumeConfiguration -> (structure)

Этот параметр указывается, когда вы используете файловую систему Amazon Elastic File System для хранения заданий. Задания, выполняющиеся на ресурсах Fargate, должны указывать platformVersion минимум 1.4.0 .

fileSystemId -> (string)

Идентификатор файловой системы Amazon EFS для использования.

rootDirectory -> (string)

Каталог в файловой системе Amazon EFS для монтирования в качестве корневого каталога внутри хоста. Если этот параметр опущен, вместо этого используется корень тома Amazon EFS. Указание / имеет тот же эффект, что и пропуск этого параметра. Максимальная длина — 4096 символов.

Предупреждение

Если точка доступа EFS указана в authorizationConfig , параметр root directory должен быть либо опущен, либо установлен в значение / , которое применяет путь, установленный в точке доступа Amazon EFS.

transitEncryption -> (string)

Определяет, следует ли включать шифрование для данных Amazon EFS при передаче между хостом Amazon ECS и сервером Amazon EFS. Шифрование при передаче должно быть включено, если используется авторизация IAM Amazon EFS. Если этот параметр опущен, используется значение по умолчанию DISABLED . Дополнительные сведения см. в разделе Шифрование данных при передаче в Руководстве пользователя Amazon Elastic File System .

transitEncryptionPort -> (integer)

Порт для использования при отправке зашифрованных данных между хостом Amazon ECS и сервером Amazon EFS. Если вы не укажете порт шифрования при передаче, будет использоваться стратегия выбора порта, которую использует вспомогательная программа монтирования Amazon EFS. Значение должно быть от 0 до 65 535. Дополнительные сведения см. в разделе Вспомогательная программа монтирования EFS в Руководстве пользователя Amazon Elastic File System .

authorizationConfig -> (structure)

Сведения о конфигурации авторизации для файловой системы Amazon EFS.

accessPointId -> (string)

Идентификатор точки доступа Amazon EFS для использования. Если указана точка доступа, значение корневого каталога, указанное в EFSVolumeConfiguration , должно быть либо опущено, либо установлено в значение / , которое применяет путь, установленный в точке доступа EFS. Если используется точка доступа, шифрование при передаче должно быть включено в EFSVolumeConfiguration . Дополнительные сведения см. в разделе Работа с точками доступа Amazon EFS в Руководстве пользователя Amazon Elastic File System .

iam -> (string)

Использовать ли роль IAM задания Batch, определенную в определении задания, при монтировании файловой системы Amazon EFS. Если включено, шифрование при передаче должно быть включено в EFSVolumeConfiguration . Если этот параметр опущен, используется значение по умолчанию DISABLED . Дополнительные сведения см. в разделе Использование точек доступа Amazon EFS в Руководстве пользователя Batch . Для авторизации EFS IAM требуется, чтобы TransitEncryption было ENABLED , и чтобы был указан JobRoleArn .

enableExecuteCommand -> (boolean)

Определяет, включена ли функциональность команды execute для этой задачи. Если true , функциональность команды execute включена для всех контейнеров в задаче.

eksProperties -> (structure)

Это объект, представляющий свойства диапазона узлов для многоузловой параллельной задачи.

podProperties -> (structure)

Свойства ресурсов pod Kubernetes для задания.

serviceAccountName -> (string)

Имя учетной записи службы, используемой для запуска pod. Дополнительные сведения см. в разделах Учетные записи служб Kubernetes и Настройка учетной записи службы Kubernetes для принятия роли IAM в Руководстве пользователя Amazon EKS и Настройка учетных записей служб для pod в документации Kubernetes .

hostNetwork -> (boolean)

Указывает, использует ли pod сетевой IP-адрес хостов. Значение по умолчанию — true . Если это значение равно false , включается модель сети pod Kubernetes. Большинство рабочих нагрузок Batch предназначены только для исходящего трафика и не требуют накладных расходов на выделение IP-адреса для каждого pod для входящих подключений. Дополнительные сведения см. в разделах Пространства имен хостов и Сеть Pod в документации Kubernetes .

dnsPolicy -> (string)

Политика DNS для pod. Значение по умолчанию — ClusterFirst . Если параметр hostNetwork не указан, значение по умолчанию — ClusterFirstWithHostNet . ClusterFirst указывает, что любой DNS-запрос, который не соответствует настроенному суффиксу домена кластера, пересылается в вышестоящий сервер имен, унаследованный от узла. Дополнительные сведения см. в разделе Политика DNS pod в документации Kubernetes .

Допустимые значения: Default | ClusterFirst | ClusterFirstWithHostNet

imagePullSecrets -> (list)

Ссылается на ресурс секрета Kubernetes. Он содержит список секретов. Эти секреты помогают получить доступ для извлечения образов из частного реестра.

ImagePullSecret$name требуется, когда этот объект используется.

(structure)

Ссылается на ресурс секрета Kubernetes. Это имя секрета должно начинаться и заканчиваться буквенно-цифровым символом, должно быть строчным, может включать точки (.) и дефисы (-), и не может содержать более 253 символов.

name -> (string)

Предоставляет уникальный идентификатор для ImagePullSecret . Этот объект требуется, когда используется EksPodProperties$imagePullSecrets .

containers -> (list)

Свойства контейнера, который используется в pod Amazon EKS.

Примечание

Этот объект ограничен 10 элементами.

(structure)

Свойства контейнера EKS используются в определениях заданий для определений заданий на основе Amazon EKS, чтобы описать свойства для узла контейнера в pod, который запускается как часть задания. Это нельзя указать для определений заданий на основе Amazon ECS.

name -> (string)

Имя контейнера. Если имя не указано, используется имя по умолчанию «Default». Каждый контейнер в pod должен иметь уникальное имя.

image -> (string)

Образ Docker, используемый для запуска контейнера.

imagePullPolicy -> (string)

Политика извлечения образов для контейнера. Поддерживаются значения Always , IfNotPresent и Never . По умолчанию этот параметр равен IfNotPresent . Однако если указан тег :latest , по умолчанию используется Always . Дополнительные сведения см. в разделе Обновление образов в документации Kubernetes .

command -> (list)

Точка входа для контейнера. Это не запускается в оболочке. Если это не указано, используется ENTRYPOINT образа контейнера. Ссылки на переменные среды расширяются с использованием среды контейнера.

Если указанная переменная среды не существует, ссылка в команде не изменяется. Например, если ссылка на «$(NAME1) » и переменная среды NAME1 не существует, строка команды останется «$(NAME1) ». $$ заменяется на $ , и результирующая строка не расширяется. Например, $$(VAR_NAME) будет передано как $(VAR_NAME) , существует или нет переменная среды VAR_NAME . Точку входа нельзя обновить. Дополнительные сведения см. в разделе ENTRYPOINT в справочнике по Dockerfile и Определите команду и аргументы для контейнера и Точка входа в документации Kubernetes .

(string)

args -> (list)

Массив аргументов для точки входа. Если это не указано, используется CMD образа контейнера. Это соответствует члену args в разделе Точка входа Pod в Kubernetes. Ссылки на переменные среды расширяются с использованием среды контейнера.

Если указанная переменная среды не существует, ссылка в команде не изменяется. Например, если ссылка на «$(NAME1) » и переменная среды NAME1 не существует, строка команды останется «$(NAME1) ». $$ заменяется на $ , и результирующая строка не расширяется. Например, $$(VAR_NAME) передается как $(VAR_NAME) , существует или нет переменная среды VAR_NAME . Дополнительные сведения см. в разделе Справочник по Dockerfile: CMD и Определите команду и аргументы для pod в документации Kubernetes .

(string)

env -> (list)

Переменные среды для передачи в контейнер.

Примечание

Переменные среды не могут начинаться с «AWS_BATCH ». Это соглашение об именах зарезервировано для переменных, которые устанавливает Batch.

(structure)

Переменная среды.

name -> (string)

Имя переменной среды.

value -> (string)

Значение переменной среды.

resources -> (structure)

Тип и объем ресурсов для назначения контейнеру. Поддерживаемые ресурсы включают memory , cpu и nvidia.com/gpu . Дополнительные сведения см. в разделе Управление ресурсами для pod и контейнеров в документации Kubernetes .

limits -> (map)

Тип и количество ресурсов для резервирования для контейнера. Значения варьируются в зависимости от указанного name . Ресурсы можно запросить, используя либо объекты limits , либо объекты requests .

memory

Жесткий лимит памяти (в Мбайт) для контейнера, используя целые числа, с суффиксом «Mi». Если ваш контейнер пытается превысить указанный объем памяти, контейнер завершается. Необходимо указать не менее 4 МиБ памяти для задания. memory можно указать в limits , requests или в обоих. Если memory указано в обоих местах, то значение, указанное в limits , должно быть равно значению, указанному в requests .

Примечание

Чтобы максимально эффективно использовать ресурсы, предоставляйте своим заданиям как можно больше памяти для конкретного типа экземпляра, который вы используете. Чтобы узнать, как это сделать, см. раздел Управление памятью в Руководстве пользователя Batch .

cpu

Количество ЦП, зарезервированных для контейнера. Значения должны быть четными кратными 0.25 . cpu можно указать в limits , requests или в обоих. Если cpu указано в обоих местах, то значение, указанное в limits , должно быть как минимум таким же большим, как значение, указанное в requests .

nvidia.com/gpu

Количество графических процессоров, зарезервированных для контейнера. Значения должны быть целым числом. memory можно указать в limits , requests или в обоих. Если memory указано в обоих местах, то значение, указанное в limits , должно быть равно значению, указанному в requests .

key -> (string)

value -> (string)

requests -> (map)

Тип и количество ресурсов для запроса для контейнера. Значения варьируются в зависимости от указанного name . Ресурсы можно запросить, используя либо объекты limits , либо объекты requests .

memory

Жесткий лимит памяти (в Мбайт) для контейнера, используя целые числа, с суффиксом «Mi». Если ваш контейнер пытается превысить указанный объем памяти, контейнер завершается. Необходимо указать не менее 4 МиБ памяти для задания. memory можно указать в limits , requests или в обоих. Если memory указано в обоих, то значение, указанное в limits , должно быть равно значению, указанному в requests .

Примечание

Если вы пытаетесь максимально эффективно использовать свои ресурсы, предоставив своим заданиям как можно больше памяти для определенного типа экземпляра, см. раздел Управление памятью в Руководстве пользователя Batch .

cpu

Количество ЦП, зарезервированных для контейнера. Значения должны быть четными кратными 0.25 . cpu можно указать в limits , requests или в обоих. Если cpu указано в обоих, то значение, указанное в limits , должно быть как минимум таким же большим, как значение, указанное в requests .

nvidia.com/gpu

Количество графических процессоров, зарезервированных для контейнера. Значения должны быть целым числом. nvidia.com/gpu можно указать в limits , requests или в обоих. Если nvidia.com/gpu указано в обоих местах, то значение, указанное в limits , должно быть равно значению, указанному в requests .

key -> (string)

value -> (string)

volumeMounts -> (list)

Подключения томов для контейнера. Batch поддерживает emptyDir , hostPath и secret типы томов. Дополнительные сведения о томах и подключениях томов в Kubernetes см. в разделе Тома в документации Kubernetes .

(structure)

Подключения томов для контейнера для задания Amazon EKS. Дополнительные сведения о томах и подключениях томов в Kubernetes см. в разделе Тома в документации Kubernetes .

name -> (string)

Имя подключения тома. Он должен соответствовать имени одного из томов в pod.

mountPath -> (string)

Путь в контейнере, где подключен том.

subPath -> (string)

Подпуть внутри указанного тома, а не его корень.

readOnly -> (boolean)

Если это значение true , контейнер имеет доступ только для чтения к тому. В противном случае контейнер может записывать в том. Значение по умолчанию — false .

securityContext -> (structure)

Контекст безопасности для задания. Для получения дополнительной информации см. Настройка контекста безопасности для pod или контейнера в документации Kubernetes .

runAsUser -> (long)

Если этот параметр указан, контейнер запускается с указанным идентификатором пользователя (uid ). Если этот параметр не указан, по умолчанию используется пользователь, указанный в метаданных образа. Этот параметр соответствует политике RunAsUser и MustRanAs в политиках безопасности pod «Пользователи и группы» в документации Kubernetes .

runAsGroup -> (long)

Если этот параметр указан, контейнер запускается с указанным идентификатором группы (gid ). Если этот параметр не указан, по умолчанию используется группа, указанная в метаданных образа. Этот параметр соответствует политике RunAsGroup и MustRunAs в политиках безопасности pod «Пользователи и группы» в документации Kubernetes .

privileged -> (boolean)

Когда этот параметр true , контейнеру предоставляются повышенные разрешения в экземпляре хост-контейнера. Уровень разрешений аналогичен разрешениям пользователя root . Значение по умолчанию — false . Этот параметр соответствует политике privileged в политиках безопасности pod «Привилегированные» в документации Kubernetes .

allowPrivilegeEscalation -> (boolean)

Разрешено ли контейнеру или pod Kubernetes получать больше привилегий, чем его родительский процесс. Значение по умолчанию — false .

readOnlyRootFilesystem -> (boolean)

Когда этот параметр true , контейнеру предоставляется доступ только для чтения к его корневой файловой системе. Значение по умолчанию — false . Этот параметр соответствует политике ReadOnlyRootFilesystem в политиках безопасности pod «Тома и файловые системы» в документации Kubernetes .

runAsNonRoot -> (boolean)

Если этот параметр указан, контейнер запускается от имени пользователя с uid , отличным от 0. Если этот параметр не указан, такое правило не применяется. Этот параметр соответствует политике RunAsUser и MustRunAsNonRoot в политиках безопасности pod «Пользователи и группы» в документации Kubernetes .

initContainers -> (list)

Эти контейнеры запускаются перед контейнерами приложений, всегда завершаются и должны успешно завершиться до запуска следующего контейнера. Эти контейнеры регистрируются с агентом Amazon EKS Connector и сохраняют информацию о регистрации в хранилище данных Kubernetes. Для получения дополнительной информации см. раздел Init Containers в документации Kubernetes .

Примечание

Этот объект ограничен 10 элементами.

(структура)

Свойства контейнера EKS используются в определениях заданий для определений заданий на основе Amazon EKS для описания свойств узла контейнера в pod, который запускается как часть задания. Это нельзя указать для определений заданий на основе Amazon ECS.

name -> (string)

Имя контейнера. Если имя не указано, используется имя по умолчанию “Default ”. Каждый контейнер в pod должен иметь уникальное имя.

image -> (string)

Образ Docker, используемый для запуска контейнера.

imagePullPolicy -> (string)

Политика извлечения образов для контейнера. Поддерживаемые значения: Always , IfNotPresent и Never . Этот параметр по умолчанию имеет значение IfNotPresent . Однако если указан тег :latest , по умолчанию используется значение Always . Дополнительные сведения см. в разделе Обновление образов в документации Kubernetes .

command -> (list)

Точка входа для контейнера. Это не выполняется внутри оболочки. Если это не указано, используется ENTRYPOINT образа контейнера. Ссылки на переменные среды расширяются с использованием среды контейнера.

Если указанная переменная среды не существует, ссылка в команде не изменяется. Например, если ссылка относится к “$(NAME1) “ и переменная среды NAME1 не существует, строка команды останется “$(NAME1) .” $$ заменяется на $ , и полученная строка не расширяется. Например, $$(VAR_NAME) будет передана как $(VAR_NAME) независимо от того, существует ли переменная среды VAR_NAME . Точку входа нельзя обновить. Дополнительные сведения см. в разделе ENTRYPOINT в справочнике Dockerfile и Определите команду и аргументы для контейнера и точку входа в документации Kubernetes .

(string)

args -> (list)

Массив аргументов для точки входа. Если это не указано, используется CMD образа контейнера. Это соответствует члену args в разделе Entrypoint pod в Kubernetes. Ссылки на переменные среды расширяются с использованием среды контейнера.

Если указанная переменная среды не существует, ссылка в команде не изменяется. Например, если ссылка относится к “$(NAME1) “ и переменная среды NAME1 не существует, строка команды останется “$(NAME1) .” $$ заменяется на $ , и полученная строка не расширяется. Например, $$(VAR_NAME) передается как $(VAR_NAME) независимо от того, существует ли переменная среды VAR_NAME . Дополнительные сведения см. в разделе Справочник Dockerfile: CMD и Определите команду и аргументы для pod в документации Kubernetes .

(string)

env -> (list)

Переменные среды для передачи в контейнер.

Примечание

Переменные среды не могут начинаться с “AWS_BATCH ”. Это соглашение об именовании зарезервировано для переменных, которые устанавливает Batch.

(structure)

Переменная среды.

name -> (string)

Имя переменной среды.

value -> (string)

Значение переменной среды.

resources -> (structure)

Тип и количество ресурсов, выделяемых контейнеру. Поддерживаемые ресурсы включают memory , cpu и nvidia.com/gpu . Дополнительные сведения см. в разделе Управление ресурсами для pods и контейнеров в документации Kubernetes .

limits -> (map)

Тип и количество ресурсов, которые необходимо зарезервировать для контейнера. Значения варьируются в зависимости от указанного параметра name . Ресурсы можно запрашивать, используя объекты limits или requests .

memory

Жесткий лимит памяти (в МиБ) для контейнера, используя целые числа, с суффиксом «Ми». Если контейнер пытается превысить указанную память, контейнер завершается. Для задания необходимо указать не менее 4 МиБ памяти. memory можно указать в limits , requests или в обоих. Если memory указано в обоих местах, значение, указанное в limits , должно быть равно значению, указанному в requests .

Примечание

Чтобы максимизировать использование ресурсов, предоставляйте своим заданиям как можно больше памяти для определенного типа экземпляра, который вы используете. Чтобы узнать как, см. раздел Управление памятью в Руководстве пользователя Batch .

cpu

Количество ЦП, зарезервированных для контейнера. Значения должны быть четными кратными 0.25 . cpu можно указать в limits , requests или в обоих. Если cpu указано в обоих местах, значение, указанное в limits , должно быть не меньше значения, указанного в requests .

nvidia.com/gpu

Количество графических процессоров, зарезервированных для контейнера. Значения должны быть целым числом. memory можно указать в limits , requests или в обоих. Если memory указано в обоих местах, значение, указанное в limits , должно быть равно значению, указанному в requests .

key -> (string)

value -> (string)

requests -> (map)

Тип и количество ресурсов, которые необходимо запросить для контейнера. Значения варьируются в зависимости от указанного параметра name . Ресурсы можно запрашивать с помощью объектов limits или requests .

memory

Жесткий лимит памяти (в МиБ) для контейнера, используя целые числа, с суффиксом «Ми». Если контейнер пытается превысить указанную память, контейнер завершается. Для задания необходимо указать не менее 4 МиБ памяти. memory можно указать в limits , requests или в обоих. Если memory указано в обоих, значение, указанное в limits , должно быть равно значению, указанному в requests .

Примечание

Если вы пытаетесь максимизировать использование ресурсов, предоставляя своим заданиям как можно больше памяти для определенного типа экземпляра, см. раздел Управление памятью в Руководстве пользователя Batch .

cpu

Количество ЦП, зарезервированных для контейнера. Значения должны быть четными кратными 0.25 . cpu можно указать в limits , requests или в обоих. Если cpu указано в обоих, значение, указанное в limits , должно быть не меньше значения, указанного в requests .

nvidia.com/gpu

Количество графических процессоров, зарезервированных для контейнера. Значения должны быть целым числом. nvidia.com/gpu можно указать в limits , requests или в обоих. Если nvidia.com/gpu указано в обоих местах, значение, указанное в limits , должно быть равно значению, указанному в requests .

key -> (string)

value -> (string)

volumeMounts -> (list)

Точки монтирования томов для контейнера. Batch поддерживает типы томов emptyDir , hostPath и secret . Дополнительные сведения о томах и точках монтирования томов в Kubernetes см. в разделе Тома в документации Kubernetes .

(structure)

Точки монтирования томов для контейнера для задания Amazon EKS. Дополнительные сведения о томах и точках монтирования томов в Kubernetes см. в разделе Тома в документации Kubernetes .

name -> (string)

Имя точки монтирования тома. Оно должно соответствовать имени одного из томов в pod.

mountPath -> (string)

Путь в контейнере, где монтируется том.

subPath -> (string)

Подпуть внутри ссылочного тома, а не его корневого каталога.

readOnly -> (boolean)

Если это значение true , контейнер имеет доступ к тому только для чтения. В противном случае контейнер может записывать в том. Значение по умолчанию — false .

securityContext -> (structure)

Контекст безопасности для задания. Для получения дополнительной информации см. Configure a security context for a pod or container в документации Kubernetes .

runAsUser -> (long)

Когда этот параметр указан, контейнер запускается с указанным идентификатором пользователя (uid ). Если этот параметр не указан, по умолчанию используется пользователь, указанный в метаданных изображения. Этот параметр отображается в RunAsUser и MustRanAs политиках в политиках безопасности Pod для пользователей и групп в документации Kubernetes .

runAsGroup -> (long)

Когда этот параметр указан, контейнер запускается с указанным идентификатором группы (gid ). Если этот параметр не указан, по умолчанию используется группа, указанная в метаданных изображения. Этот параметр отображается в RunAsGroup и MustRunAs политиках в политиках безопасности Pod для пользователей и групп в документации Kubernetes .

privileged -> (boolean)

Когда этот параметр true , контейнеру предоставляются повышенные разрешения в экземпляре хост-контейнера. Уровень разрешений аналогичен разрешениям пользователя root . Значение по умолчанию — false . Этот параметр отображается в privileged политике в политиках безопасности Pod для привилегированных пользователей в документации Kubernetes .

allowPrivilegeEscalation -> (boolean)

Разрешено ли контейнеру или модулю Kubernetes получать больше привилегий, чем у родительского процесса. Значение по умолчанию — false .

readOnlyRootFilesystem -> (boolean)

Когда этот параметр true , контейнеру предоставляется доступ только для чтения к его корневой файловой системе. Значение по умолчанию — false . Этот параметр отображается в ReadOnlyRootFilesystem политике в политиках безопасности Pod для томов и файловых систем в документации Kubernetes .

runAsNonRoot -> (boolean)

Когда этот параметр указан, контейнер запускается от имени пользователя с uid , отличным от 0. Если этот параметр не указан, такое правило не применяется. Этот параметр отображается в RunAsUser и MustRunAsNonRoot политиках в политиках безопасности Pod для пользователей и групп в документации Kubernetes .

volumes -> (list)

Задает тома для определения задания, которое использует ресурсы Amazon EKS.

(structure)

Указывает том Amazon EKS для определения задания.

name -> (string)

Имя тома. Имя должно быть допустимым именем поддомена DNS. Для получения дополнительной информации см. DNS subdomain names в документации Kubernetes .

hostPath -> (structure)

Указывает конфигурацию тома Kubernetes hostPath. Для получения дополнительной информации см. hostPath в документации Kubernetes .

path -> (string)

Путь к файлу или каталогу на хосте для монтирования в контейнеры в модуле.

emptyDir -> (structure)

Указывает конфигурацию тома Kubernetes emptyDir. Для получения дополнительной информации см. emptyDir в документации Kubernetes .

medium -> (string)

Среда для хранения тома. Значение по умолчанию — пустая строка, которая использует хранилище узла.

“”

(По умолчанию) Используйте дисковое хранилище узла.

“Memory”

Используйте том tmpfs , поддерживаемый ОЗУ узла. Содержимое тома теряется при перезагрузке узла, и любое хранилище в томе учитывается в ограничении памяти контейнера.

sizeLimit -> (string)

Максимальный размер тома. По умолчанию максимальный размер не определен.

secret -> (structure)

Указывает конфигурацию тома Kubernetes secret. Для получения дополнительной информации см. secret в документации Kubernetes .

secretName -> (string)

Имя секрета. Имя должно быть допустимым именем поддомена DNS. Для получения дополнительной информации см. DNS subdomain names в документации Kubernetes .

optional -> (boolean)

Указывает, необходимо ли определить секрет или ключи секрета.

persistentVolumeClaim -> (structure)

Указывает конфигурацию Kubernetes persistentVolumeClaim , привязанного к persistentVolume . Для получения дополнительной информации см. Persistent Volume Claims в документации Kubernetes .

claimName -> (string)

Имя persistentVolumeClaim , привязанного к persistentVolume . Для получения дополнительной информации см. Persistent Volume Claims в документации Kubernetes .

readOnly -> (boolean)

Необязательное логическое значение, указывающее, является ли монтирование только для чтения. По умолчанию false. Для получения дополнительной информации см. Read Only Mounts в документации Kubernetes .

metadata -> (structure)

Метаданные о модуле Kubernetes. Для получения дополнительной информации см. Understanding Kubernetes Objects в документации 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 в это пространство имен. Если это поле указано, значение не может быть пустым или null. Оно должно соответствовать следующим требованиям:

  • Длина от 1 до 63 символов
  • Не может быть установлено в значение default
  • Не может начинаться с kube
  • Должен соответствовать следующему регулярному выражению: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$

Для получения дополнительной информации см. Namespaces в документации Kubernetes . Это пространство имен может отличаться от kubernetesNamespace , установленного в EksConfiguration среде вычислений, но должно иметь идентичные роли управления доступом на основе ролей (RBAC) в качестве kubernetesNamespace среды вычислений. Для параллельных заданий с несколькими узлами должно быть предоставлено одно и то же значение во всех диапазонах узлов.

shareProcessNamespace -> (boolean)

Указывает, являются ли процессы в контейнере общими или видимыми для других контейнеров в том же модуле. Для получения дополнительной информации см. Share Process Namespace between Containers in a Pod .

consumableResourceProperties -> (structure)

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

consumableResourceList -> (list)

Список потребляемых ресурсов, необходимых для задания.

(structure)

Информация о потребляемом ресурсе, необходимом для запуска задания.

consumableResource -> (string)

Имя или ARN потребляемого ресурса.

quantity -> (long)

Необходимое количество потребляемого ресурса.

tags -> (map)

Теги, которые применяются к определению задания.

key -> (string)

value -> (string)

propagateTags -> (boolean)

Указывает, следует ли распространять теги из задания или определения задания в соответствующую задачу Amazon ECS. Если значение не указано, теги не распространяются. Теги могут распространяться только на задачи при создании задач. Для тегов с одинаковым именем тегам задания отдается приоритет над тегами определения задания. Если общее количество объединенных тегов из задания и определения задания превышает 50, задание переносится в состояние FAILED .

platformCapabilities -> (list)

Возможности платформы, требуемые определением задания. Если значение не указано, по умолчанию используется EC2 . Задания, выполняемые в ресурсах Fargate, указывают FARGATE .

(string)

ecsProperties -> (structure)

Объект, содержащий свойства для ресурсов Amazon ECS задания. Если ecsProperties используется в определении задания, его нельзя использовать вместе с containerProperties , eksProperties или nodeProperties .

taskProperties -> (list)

Объект, содержащий свойства для определения задачи Amazon ECS задания.

Примечание

В настоящее время этот объект ограничен одним элементом задачи. Однако элемент задачи может запускать до 10 контейнеров.

(structure)

Свойства для определения задачи, описывающей определения контейнеров и томов задачи Amazon ECS. Вы можете указать, какие образы Docker использовать, требуемые ресурсы и другие конфигурации, связанные с запуском определения задачи через службу или задачу Amazon ECS.

containers -> (list)

Этот объект представляет собой список контейнеров.

(structure)

Свойства контейнера используются для определений заданий на основе Amazon ECS. Эти свойства описывают контейнер, который запускается как часть задания.

command -> (list)

Команда, которая передается в контейнер. Этот параметр соответствует Cmd в разделе Create a container (Создание контейнера) в Docker Remote API и параметру COMMAND для docker run . Дополнительные сведения см. в разделе Dockerfile reference: CMD .

(string)

dependsOn -> (list)

Список контейнеров, от которых зависит этот контейнер.

(structure)

Список контейнеров, от которых зависит эта задача.

containerName -> (string)

Уникальный идентификатор для контейнера.

condition -> (string)

Условие зависимости контейнера. Доступны следующие условия и их поведение:

  • START - Это условие эмулирует поведение связей и томов сегодня. Он проверяет, что зависимый контейнер запущен до того, как другим контейнерам будет разрешено запускаться.
  • COMPLETE - Это условие проверяет, что зависимый контейнер завершает работу (завершается) до того, как другим контейнерам будет разрешено запускаться. Это может быть полезно для несущественных контейнеров, которые запускают сценарий, а затем завершают работу. Это условие нельзя установить для существенного контейнера.
  • SUCCESS - Это условие такое же, как и COMPLETE , но также требует, чтобы контейнер завершил работу с нулевым статусом. Это условие нельзя установить для существенного контейнера.

environment -> (list)

Переменные среды, которые необходимо передать в контейнер. Этот параметр соответствует Env в разделе Create a container (Создание контейнера) Docker Remote API и параметру --env для docker run .

Предупреждение

Мы не рекомендуем использовать текстовые переменные среды для конфиденциальной информации, такой как данные учетных данных.

Примечание

Переменные среды не могут начинаться с AWS_BATCH . Это соглашение об именовании зарезервировано для переменных, которые задает Batch.

(structure)

Объект пары «ключ-значение».

name -> (string)

Имя пары «ключ-значение». Для переменных среды это имя переменной среды.

value -> (string)

Значение пары «ключ-значение». Для переменных среды это значение переменной среды.

essential -> (boolean)

Если параметр essential контейнера отмечен как true , и этот контейнер завершает работу с ошибкой или останавливается по какой-либо причине, все остальные контейнеры, входящие в задачу, останавливаются. Если параметр essential контейнера отмечен как false, его сбой не влияет на остальные контейнеры в задаче. Если этот параметр опущен, контейнер считается существенным.

Все задания должны иметь хотя бы один существенный контейнер. Если у вас есть приложение, которое состоит из нескольких контейнеров, сгруппируйте контейнеры, которые используются для общей цели, в компоненты и разделите различные компоненты на несколько определений задач. Дополнительные сведения см. в разделе Application Architecture (Архитектура приложений) в Руководстве разработчика Amazon Elastic Container Service .

firelensConfiguration -> (structure)

Конфигурация FireLens для контейнера. Это используется для указания и настройки маршрутизатора журналов для журналов контейнеров. Дополнительные сведения см. в разделе Custom log routing (Настройка маршрутизации журналов) в Руководстве разработчика Amazon Elastic Container Service .

type -> (string)

Используемый маршрутизатор журналов. Допустимые значения: fluentd или fluentbit .

options -> (map)

Параметры, используемые при настройке маршрутизатора журналов. Это поле является необязательным и может использоваться для указания пользовательского файла конфигурации или для добавления дополнительных метаданных, таких как задача, определение задачи, кластер и сведения об экземпляре контейнера в событие журнала. Если указано, используемый синтаксис: "options":{"enable-ecs-log-metadata":"true|false","config-file-type:"s3|file","config-file-value":"arn:aws:s3:::mybucket/fluent.conf|filepath"} . Дополнительные сведения см. в разделе Creating a task definition that uses a FireLens configuration (Создание определения задачи, использующего конфигурацию FireLens) в Руководстве разработчика Amazon Elastic Container Service .

key -> (string)

value -> (string)

image -> (string)

Изображение, используемое для запуска контейнера. Эта строка передается непосредственно демону Docker. По умолчанию доступны изображения в реестре Docker Hub. Другие репозитории указываются с помощью repository-url/image:tag или repository-url/image@digest . Допускается до 255 букв (прописных и строчных), цифр, дефисов, подчеркиваний, двоеточий, точек, косых черт и знаков номера. Этот параметр соответствует Image в разделе Create a container (Создание контейнера) в Docker Remote API и параметру IMAGE параметра ` docker run https://docs.docker.com/engine/reference/run/#security-configuration`__ .

linuxParameters -> (structure)

Linux-specific modifications that are applied to the container, such as Linux kernel capabilities. For more information, see KernelCapabilities .

devices -> (list)

Any of the host devices to expose to the container. This parameter maps to Devices in the Create a container section of the Docker Remote API and the --device option to docker run .

Примечание

Этот параметр не применяется к заданиям, которые выполняются на ресурсах Fargate. Не указывайте его для этих заданий.

(structure)

An object that represents a container instance host device.

Примечание

Этот объект не применяется к заданиям, которые выполняются на ресурсах Fargate, и его не следует предоставлять.

hostPath -> (string)

The path for the device on the host container instance.

containerPath -> (string)

The path inside the container that’s used to expose the host device. By default, the hostPath value is used.

permissions -> (list)

The explicit permissions to provide to the container for the device. By default, the container has permissions for read , write , and mknod for the device.

(string)

initProcessEnabled -> (boolean)

If true, run an init process inside the container that forwards signals and reaps processes. This parameter maps to the --init option to docker run . This parameter requires version 1.25 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version | grep "Server API version"

sharedMemorySize -> (integer)

The value for the size (in MiB) of the /dev/shm volume. This parameter maps to the --shm-size option to docker run .

Примечание

Этот параметр не применяется к заданиям, которые выполняются на ресурсах Fargate. Не указывайте его для этих заданий.

tmpfs -> (list)

The container path, mount options, and size (in MiB) of the tmpfs mount. This parameter maps to the --tmpfs option to docker run .

Примечание

Этот параметр не применяется к заданиям, которые выполняются на ресурсах Fargate. Не указывайте этот параметр для этого типа ресурсов.

(structure)

The container path, mount options, and size of the tmpfs mount.

Примечание

Этот объект не применяется к заданиям, которые выполняются на ресурсах Fargate.

containerPath -> (string)

The absolute file path in the container where the tmpfs volume is mounted.

size -> (integer)

The size (in MiB) of the tmpfs volume.

mountOptions -> (list)

The list of tmpfs volume mount options.

Valid values: “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 “

(string)

maxSwap -> (integer)

The total amount of swap memory (in MiB) a container can use. This parameter is translated to the --memory-swap option to docker run where the value is the sum of the container memory plus the maxSwap value. For more information, see ` --memory-swap details <https://docs.docker.com/config/containers/resource_constraints/#–memory-swap-details>`__ in the Docker documentation.

If a maxSwap value of 0 is specified, the container doesn’t use swap. Accepted values are 0 or any positive integer. If the maxSwap parameter is omitted, the container doesn’t use the swap configuration for the container instance on which it runs. A maxSwap value must be set for the swappiness parameter to be used.

Примечание

Этот параметр не применяется к заданиям, которые выполняются на ресурсах Fargate. Не указывайте его для этих заданий.

swappiness -> (integer)

You can use this parameter to tune a container’s memory swappiness behavior. A swappiness value of 0 causes swapping to not occur unless absolutely necessary. A swappiness value of 100 causes pages to be swapped aggressively. Valid values are whole numbers between 0 and 100 . If the swappiness parameter isn’t specified, a default value of 60 is used. If a value isn’t specified for maxSwap , then this parameter is ignored. If maxSwap is set to 0, the container doesn’t use swap. This parameter maps to the --memory-swappiness option to docker run .

Consider the following when you use a per-container swap configuration.

  • Swap space must be enabled and allocated on the container instance for the containers to use.

Примечание

По умолчанию оптимизированные образы Amazon ECS не имеют включенной подкачки. Необходимо включить подкачку в экземпляре, чтобы использовать эту функцию. Дополнительные сведения см. в разделе Instance store swap volumes в Руководстве пользователя Amazon EC2 для экземпляров Linux или Как выделить память для работы в качестве пространства подкачки в экземпляре Amazon EC2 с использованием файла подкачки?
  • The swap space parameters are only supported for job definitions using EC2 resources.
  • If the maxSwap and swappiness parameters are omitted from a job definition, each container has a default swappiness value of 60. Moreover, the total swap usage is limited to two times the memory reservation of the container.

Примечание

Этот параметр не применяется к заданиям, которые выполняются на ресурсах Fargate. Не указывайте его для этих заданий.

logConfiguration -> (structure)

Спецификация конфигурации журнала для контейнера.

Этот параметр отображается на LogConfig в разделе Create a container API Docker Remote и на опцию --log-driver для docker run .

По умолчанию контейнеры используют тот же драйвер ведения журнала, который использует демон Docker. Однако контейнер может использовать другой драйвер ведения журнала, чем демон Docker, указав драйвер журнала с этим параметром в определении контейнера. Чтобы использовать другой драйвер ведения журнала для контейнера, система журналов должна быть правильно настроена в экземпляре контейнера (или на другом сервере журналов для удаленных параметров ведения журнала). Для получения дополнительной информации о параметрах для различных поддерживаемых драйверов журналов см. раздел Configure logging drivers в Документации Docker .

Примечание

В настоящее время Amazon ECS поддерживает подмножество драйверов ведения журнала, доступных для демона Docker (показано в типе данных LogConfiguration). Дополнительные драйверы журналов могут быть доступны в будущих выпусках агента контейнера Amazon ECS.

Для этого параметра требуется версия 1.18 API Docker Remote или более поздняя версия в экземпляре контейнера. Чтобы проверить версию API Docker Remote в экземпляре контейнера, войдите в экземпляр контейнера и выполните следующую команду: sudo docker version --format '{{.Server.APIVersion}}'

Примечание

Агент контейнера Amazon ECS, работающий в экземпляре контейнера, должен зарегистрировать драйверы ведения журнала, доступные в этом экземпляре, с помощью переменной среды ECS_AVAILABLE_LOGGING_DRIVERS, прежде чем контейнеры, помещенные в этот экземпляр, смогут использовать эти параметры конфигурации журнала. Для получения дополнительной информации см. Amazon ECS container agent configuration в Руководстве разработчика Amazon Elastic Container Service .

logDriver -> (string)

Драйвер журнала, используемый для контейнера. Допустимые значения, перечисленные для этого параметра, представляют собой драйверы журналов, с которыми агент контейнера Amazon ECS может взаимодействовать по умолчанию.

Поддерживаемые драйверы журналов: awslogs, fluentd, gelf, json-file, journald, logentries, syslog и splunk.

Примечание

Для заданий, выполняемых на ресурсах Fargate, разрешены только драйверы журналов awslogs и splunk.

awsfirelens

Указывает драйвер ведения журнала firelens. Для получения дополнительной информации о настройке Firelens см. раздел Send Amazon ECS logs to an Amazon Web Services service or Amazon Web Services Partner в Руководстве разработчика Amazon Elastic Container Service .

awslogs

Указывает драйвер ведения журнала Amazon CloudWatch Logs. Для получения дополнительной информации см. разделы Using the awslogs log driver в Batch User Guide и Amazon CloudWatch Logs logging driver в документации Docker.

fluentd

Указывает драйвер ведения журнала Fluentd. Для получения дополнительной информации, включая использование и параметры, см. Fluentd logging driver в Документации Docker .

gelf

Указывает драйвер ведения журнала Graylog Extended Format (GELF). Для получения дополнительной информации, включая использование и параметры, см. Graylog Extended Format logging driver в Документации Docker .

journald

Указывает драйвер ведения журнала journald. Для получения дополнительной информации, включая использование и параметры, см. Journald logging driver в Документации Docker .

json-file

Указывает драйвер ведения журнала JSON file. Для получения дополнительной информации, включая использование и параметры, см. JSON File logging driver в Документации Docker .

splunk

Указывает драйвер ведения журнала Splunk. Для получения дополнительной информации, включая использование и параметры, см. Splunk logging driver в Документации Docker .

syslog

Указывает драйвер ведения журнала syslog. Для получения дополнительной информации, включая использование и параметры, см. Syslog logging driver в Документации Docker .

Примечание

Если у вас есть пользовательский драйвер, который не указан выше и с которым вы хотите работать с агентом контейнера Amazon ECS, вы можете создать вилку проекта агента контейнера Amazon ECS, доступного на GitHub, и настроить его для работы с этим драйвером. Мы рекомендуем вам отправлять запросы на включение изменений, которые вы хотите включить. Однако в настоящее время Amazon Web Services не поддерживает запуск измененных копий этого программного обеспечения.

Для этого параметра требуется версия 1.18 API Docker Remote или более поздняя версия в экземпляре контейнера. Чтобы проверить версию API Docker Remote в экземпляре контейнера, войдите в экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"

options -> (map)

Параметры конфигурации для отправки в драйвер журнала. Для этого параметра требуется версия 1.19 API Docker Remote или более поздняя версия в экземпляре контейнера. Чтобы проверить версию API Docker Remote в экземпляре контейнера, войдите в экземпляр контейнера и выполните следующую команду: sudo docker version | grep "Server API version"

key -> (string)

value -> (string)

secretOptions -> (list)

Секреты, которые необходимо передать в конфигурацию журнала. Для получения дополнительной информации см. раздел Specifying sensitive data в Batch User Guide .

(structure)

Объект, представляющий секрет, который необходимо предоставить вашему контейнеру. Секреты могут быть предоставлены контейнеру следующими способами:

  • Чтобы внедрить конфиденциальные данные в ваши контейнеры в качестве переменных среды, используйте параметр определения контейнера secrets.
  • Чтобы сослаться на конфиденциальную информацию в конфигурации журнала контейнера, используйте параметр определения контейнера secretOptions.

Для получения дополнительной информации см. раздел Specifying sensitive data в Batch User Guide .

name -> (string)

Имя секрета.

valueFrom -> (string)

Секрет, который необходимо предоставить контейнеру. Поддерживаемые значения — это либо полный ARN секрета Secrets Manager, либо полный ARN параметра в Amazon Web Services Systems Manager Parameter Store.

Примечание

Если параметр Amazon Web Services Systems Manager Parameter Store существует в том же регионе, что и задание, которое вы запускаете, вы можете использовать либо полный ARN, либо имя параметра. Если параметр существует в другом регионе, необходимо указать полный ARN.

mountPoints -> (list)

Точки монтирования для томов данных в вашем контейнере.

Этот параметр отображается на Volumes в разделе Create a container API Docker Remote и на опцию –volume для `docker run .

Контейнеры Windows могут монтировать целые каталоги на тот же диск, что и $env:ProgramData . Контейнеры Windows не могут монтировать каталоги на другом диске, а точка монтирования не может быть между дисками.

(structure)

Сведения о точке монтирования тома Docker, используемой в свойствах контейнера задания. Этот параметр отображается на Volumes в разделе Create a container Docker Remote API и на опцию --volume для docker run.

containerPath -> (string)

Путь в контейнере, в котором монтируется том хоста.

readOnly -> (boolean)

Если это значение равно true, контейнер имеет доступ только для чтения к тому. В противном случае контейнер может записывать в том. Значение по умолчанию — false.

sourceVolume -> (string)

Имя тома для монтирования.

name -> (string)

Имя контейнера. Имя можно использовать в качестве уникального идентификатора для целевых объектов dependsOn и Overrides.

privileged -> (boolean)

Когда этот параметр равен true, контейнеру предоставляются повышенные привилегии в экземпляре хоста контейнера (аналогично пользователю root). Этот параметр отображается на Privileged в разделе Create a container API Docker Remote и на опцию --privileged для docker run .

Примечание

Этот параметр не поддерживается для контейнеров Windows или задач, выполняемых в Fargate.

readonlyRootFilesystem -> (boolean)

Когда этот параметр равен true, контейнер получает доступ только для чтения к своей корневой файловой системе. Этот параметр отображается на ReadonlyRootfs в разделе Create a container API Docker Remote и на опцию --read-only для docker run .

Примечание

Этот параметр не поддерживается для контейнеров Windows.

repositoryCredentials -> (structure)

Учетные данные аутентификации частного репозитория для использования.

credentialsParameter -> (string)

Ресурс Amazon Name (ARN) секрета, содержащего учетные данные частного репозитория.

resourceRequirements -> (list)

Тип и количество ресурса, который необходимо назначить контейнеру. Единственным поддерживаемым ресурсом является GPU.

(структура)

Тип и количество ресурса, который необходимо назначить контейнеру. Поддерживаемые ресурсы включают GPU , MEMORY и VCPU .

значение -> (string)

Количество указанного ресурса для резервирования для контейнера. Значения варьируются в зависимости от указанного type .

type=”GPU”

Количество физических графических процессоров, которые необходимо зарезервировать для контейнера. Убедитесь, что количество графических процессоров, зарезервированных для всех контейнеров в задании, не превышает количество доступных графических процессоров на вычислительном ресурсе, на котором запущено задание.

Примечание

Графические процессоры недоступны для заданий, выполняемых на ресурсах 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 .

Примечание

Если вы пытаетесь максимально эффективно использовать свои ресурсы, предоставив своим заданиям как можно больше памяти для конкретного типа экземпляра, см. раздел Memory management в Руководстве пользователя Batch .

Для заданий, выполняемых на ресурсах Fargate, value является жестким лимитом (в МиБ) и должен соответствовать одному из поддерживаемых значений, а значения VCPU должны быть одним из значений, поддерживаемых для этого значения памяти.

значение = 512

VCPU = 0.25

значение = 1024

VCPU = 0.25 или 0.5

значение = 2048

VCPU = 0.25, 0.5 или 1

значение = 3072

VCPU = 0.5 или 1

значение = 4096

VCPU = 0.5, 1 или 2

значение = 5120, 6144 или 7168

VCPU = 1 или 2

значение = 8192

VCPU = 1, 2 или 4

значение = 9216, 10240, 11264, 12288, 13312, 14336 или 15360

VCPU = 2 или 4

значение = 16384

VCPU = 2, 4 или 8

значение = 17408, 18432, 19456, 21504, 22528, 23552, 25600, 26624, 27648, 29696 или 30720

VCPU = 4

значение = 20480, 24576 или 28672

VCPU = 4 или 8

значение = 36864, 45056, 53248 или 61440

VCPU = 8

значение = 32768, 40960, 49152 или 57344

VCPU = 8 или 16

значение = 65536, 73728, 81920, 90112, 98304, 106496, 114688 или 122880

VCPU = 16

type=”VCPU”

Количество vCPU, зарезервированных для контейнера. Этот параметр соответствует CpuShares в разделе Create a container раздела Docker Remote API и опции --cpu-shares для docker run . Каждый vCPU эквивалентен 1024 долям ЦП. Для ресурсов Amazon EC2 необходимо указать не менее одного vCPU. Это необходимо, но может быть указано в нескольких местах; это необходимо указать для каждого узла хотя бы один раз.

По умолчанию для квоты ресурсов vCPU по требованию Fargate составляет 6 vCPU. Дополнительную информацию о квотах Fargate см. в разделе Fargate quotas в Общей справке по Amazon Web Services .

Для заданий, выполняемых на ресурсах Fargate, value должно соответствовать одному из поддерживаемых значений, а значения MEMORY должны быть одним из значений, поддерживаемых для этого значения VCPU . Поддерживаемыми значениями являются 0.25, 0.5, 1, 2, 4, 8 и 16.

значение = 0.25

MEMORY = 512, 1024 или 2048

значение = 0.5

MEMORY = 1024, 2048, 3072 или 4096

значение = 1

MEMORY = 2048, 3072, 4096, 5120, 6144, 7168 или 8192

значение = 2

MEMORY = 4096, 5120, 6144, 7168, 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360 или 16384

значение = 4

MEMORY = 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, 16384, 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696 или 30720

значение = 8

MEMORY = 16384, 20480, 24576, 28672, 32768, 36864, 40960, 45056, 49152, 53248, 57344 или 61440

значение = 16

MEMORY = 32768, 40960, 49152, 57344, 65536, 73728, 81920, 90112, 98304, 106496, 114688 или 122880

type -> (string)

Тип ресурса, который необходимо назначить контейнеру. Поддерживаемые ресурсы включают GPU , MEMORY и VCPU .

secrets -> (list)

Секреты для передачи контейнеру. Дополнительные сведения см. в разделе Указание конфиденциальных данных в Руководстве разработчика Amazon Elastic Container Service.

(структура)

Объект, представляющий секрет для предоставления вашему контейнеру. Секреты могут быть предоставлены контейнеру следующими способами:

  • Чтобы внедрить конфиденциальные данные в ваши контейнеры в качестве переменных среды, используйте параметр определения контейнера secrets .
  • Чтобы сослаться на конфиденциальную информацию в конфигурации журнала контейнера, используйте параметр определения контейнера secretOptions .

Дополнительные сведения см. в разделе Указание конфиденциальных данных в Руководстве пользователя Batch .

name -> (string)

Имя секрета.

valueFrom -> (string)

Секрет для предоставления контейнеру. Поддерживаемыми значениями являются либо полный ARN секрета Secrets Manager, либо полный ARN параметра в хранилище параметров Amazon Web Services Systems Manager.

Примечание

Если параметр хранилища параметров Amazon Web Services Systems Manager существует в том же регионе, что и запускаемое вами задание, вы можете использовать либо полный ARN, либо имя параметра. Если параметр существует в другом регионе, необходимо указать полный ARN.

ulimits -> (list)

Список ulimits для установки в контейнере. Если в определении задачи указано значение ulimit , оно переопределяет значения по умолчанию, установленные Docker. Этот параметр соответствует Ulimits в разделе Create a container раздела Docker Remote API и опции --ulimit для docker run .

Задачи Amazon ECS, размещенные на Fargate, используют значения лимита ресурсов по умолчанию, установленные операционной системой, за исключением параметра лимита ресурсов nofile, который Fargate переопределяет. Лимит ресурсов nofile устанавливает ограничение на количество открытых файлов, которые может использовать контейнер. По умолчанию nofile мягкий лимит составляет 1024 , а жесткий лимит по умолчанию составляет 65535 .

Этот параметр требует версию 1.18 Docker Remote API или более позднюю версию на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version --format '{{.Server.APIVersion}}'

Примечание

Этот параметр не поддерживается для контейнеров Windows.

(структура)

Параметры 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.

Примечание

При выполнении задач с использованием сетевого режима host не запускайте контейнеры с помощью root user (UID 0) . Мы рекомендуем использовать непривилегированного пользователя для повышения безопасности.

Вы можете указать user , используя следующие форматы. При указании UID или GID необходимо указать его в виде положительного целого числа.

  • user
  • user:group
  • uid
  • uid:gid
  • user:gi
  • uid:group

Примечание

Этот параметр не поддерживается для контейнеров Windows.

ephemeralStorage -> (structure)

Объем временного хранилища для выделения задаче. Этот параметр используется для увеличения общего объема доступного временного хранилища, помимо объема по умолчанию, для задач, размещенных на Fargate.

sizeInGiB -> (integer)

Общий объем временного хранилища в ГиБ, который необходимо настроить для задачи. Минимальное поддерживаемое значение составляет 21 ГиБ, а максимальное поддерживаемое значение составляет 200 ГиБ.

executionRoleArn -> (string)

Имя ресурса Amazon (ARN) роли выполнения, которую может принять Batch. Для заданий, выполняемых на ресурсах Fargate, необходимо предоставить роль выполнения. Дополнительные сведения см. в разделе Роль IAM для выполнения Batch в Руководстве пользователя Batch .

platformVersion -> (string)

Версия платформы Fargate, на которой выполняются задания. Версия платформы указывается только для заданий, выполняемых на ресурсах Fargate. Если ни одна из них не указана, по умолчанию используется версия платформы LATEST . Это использует недавнюю одобренную версию платформы Fargate для вычислительных ресурсов. Дополнительные сведения см. в разделе Версии платформы Fargate в Руководстве разработчика Amazon Elastic Container Service .

ipcMode -> (string)

Пространство имен ресурсов IPC для использования контейнерами в задаче. Допустимые значения: host, task или none.

Если указано host, все контейнеры в задачах, для которых указан режим IPC host в том же экземпляре контейнера, совместно используют одни и те же ресурсы IPC с экземпляром хоста Amazon EC2.

Если указано task, все контейнеры в указанном task совместно используют одни и те же ресурсы IPC.

Если указано none, ресурсы IPC в контейнерах задачи являются частными и не совместно используются с другими контейнерами в задаче или в экземпляре контейнера.

Если значение не указано, совместное использование пространства имен ресурсов IPC зависит от настройки демона Docker в экземпляре контейнера. Дополнительную информацию см. в разделе «Параметры IPC» в справочнике Docker run.

taskRoleArn -> (string)

Имя ресурса Amazon (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)

Указывает, есть ли у задания общедоступный IP-адрес. Для задания, которое выполняется на ресурсах Fargate в частной подсети для отправки исходящего трафика в Интернет (например, для извлечения образов контейнеров), частная подсеть требует, чтобы был прикреплен шлюз NAT для маршрутизации запросов в Интернет. Дополнительную информацию см. в разделе «Сетевое взаимодействие задач Amazon ECS» в Руководстве разработчика Amazon Elastic Container Service. Значение по умолчанию — «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 Spot будет отправлено задание Fargate ARM64 или задание Windows. Однако вы можете прикрепить как вычислительные среды FARGATE, так и FARGATE_SPOT к одной и той же очереди заданий.

cpuArchitecture -> (string)

Архитектура vCPU. Значение по умолчанию — X86_64. Допустимые значения: X86_64 и ARM64.

Примечание

Этот параметр должен быть установлен в значение X86_64 для контейнеров Windows.

Примечание

Fargate Spot не поддерживается для контейнеров ARM64 и Windows в Fargate. Очередь заданий будет заблокирована, если в очередь заданий с вычислительными средами только Fargate Spot будет отправлено задание Fargate ARM64 или задание Windows. Однако вы можете прикрепить как вычислительные среды FARGATE, так и FARGATE_SPOT к одной и той же очереди заданий.

volumes -> (list)

Список томов, связанных с заданием.

(structure)

Том данных, который используется в свойствах контейнера задания.

host -> (structure)

Содержимое параметра host определяет, будет ли том данных сохраняться в экземпляре хост-контейнера и где он будет храниться. Если параметр host пуст, демон Docker назначает путь хоста для тома данных. Однако нет гарантии, что данные будут сохраняться после прекращения работы контейнеров, связанных с ним.

Примечание

Этот параметр не применим к заданиям, выполняемым на ресурсах Fargate, и его не следует указывать.

sourcePath -> (string)

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

Примечание

Этот параметр не применим к заданиям, которые выполняются на ресурсах Fargate. Не указывайте это для этих заданий.

name -> (string)

Имя тома. Оно может содержать до 255 символов. Оно может содержать прописные и строчные буквы, цифры, дефисы (-) и знаки подчеркивания (_). На это имя ссылается параметр sourceVolume определения контейнера mountPoints.

efsVolumeConfiguration -> (structure)

Этот параметр указывается при использовании файловой системы Amazon Elastic File System для хранения заданий. Задания, которые выполняются на ресурсах Fargate, должны указать platformVersion как минимум 1.4.0.

fileSystemId -> (string)

Идентификатор файловой системы Amazon EFS для использования.

rootDirectory -> (string)

Каталог в файловой системе Amazon EFS, который будет смонтирован в качестве корневого каталога внутри хоста. Если этот параметр опущен, вместо него используется корень тома Amazon EFS. Указание / имеет тот же эффект, что и опущение этого параметра. Максимальная длина составляет 4 096 символов.

Предупреждение

Если точка доступа EFS указана в authorizationConfig, параметр root directory должен быть либо опущен, либо установлен в значение /, что обеспечивает соблюдение пути, заданного в точке доступа Amazon EFS.

transitEncryption -> (string)

Определяет, следует ли включить шифрование для данных Amazon EFS при передаче между хостом Amazon ECS и сервером Amazon EFS. Шифрование при передаче должно быть включено, если используется авторизация Amazon EFS IAM. Если этот параметр опущен, используется значение по умолчанию DISABLED. Дополнительные сведения см. в разделе Шифрование данных при передаче в Руководстве пользователя Amazon Elastic File System.

transitEncryptionPort -> (integer)

Порт для использования при отправке зашифрованных данных между хостом Amazon ECS и сервером Amazon EFS. Если вы не укажете порт шифрования передачи, будет использоваться стратегия выбора порта, которую использует помощник монтирования Amazon EFS. Значение должно быть от 0 до 65 535. Дополнительные сведения см. в разделе «Помощник монтирования EFS» в Руководстве пользователя Amazon Elastic File System.

authorizationConfig -> (structure)

Сведения о конфигурации авторизации для файловой системы Amazon EFS.

accessPointId -> (string)

Идентификатор точки доступа Amazon EFS для использования. Если указана точка доступа, значение корневого каталога, указанное в EFSVolumeConfiguration, должно быть либо опущено, либо установлено в /, что обеспечивает соблюдение пути, заданного в точке доступа EFS. Если используется точка доступа, шифрование передачи должно быть включено в EFSVolumeConfiguration. Дополнительные сведения см. в разделе Работа с точками доступа Amazon EFS в Руководстве пользователя Amazon Elastic File System.

iam -> (string)

Следует ли использовать роль IAM задания Batch, определенную в определении задания, при монтировании файловой системы Amazon EFS. Если включено, шифрование передачи должно быть включено в EFSVolumeConfiguration. Если этот параметр опущен, используется значение по умолчанию DISABLED. Дополнительные сведения см. в разделе Использование точек доступа Amazon EFS в Руководстве пользователя Batch. Для авторизации EFS IAM требуется, чтобы TransitEncryption было ENABLED и чтобы было указано JobRoleArn.

enableExecuteCommand -> (boolean)

Определяет, включена ли функция execute command для этой задачи. Если true, функция execute command включена во всех контейнерах задачи.

eksProperties -> (structure)

Объект со свойствами, специфичными для заданий на основе Amazon EKS. Когда eksProperties используется в определении задания, его нельзя использовать вместе с containerProperties , ecsProperties или nodeProperties .

podProperties -> (structure)

Свойства ресурсов pod Kubernetes для задания.

serviceAccountName -> (string)

Имя учетной записи службы, используемой для запуска pod. Дополнительные сведения см. в разделе Учетные записи службы Kubernetes и Настройка учетной записи службы Kubernetes для принятия роли IAM в Руководстве пользователя Amazon EKS и Настройка учетных записей службы для pod в документации Kubernetes .

hostNetwork -> (boolean)

Указывает, использует ли pod сетевой IP-адрес хостов. Значение по умолчанию: true . Установка этого значения в false включает сетевую модель pod Kubernetes. Большинство рабочих нагрузок Batch предназначены только для исходящего трафика и не требуют накладных расходов на выделение IP для каждого pod для входящих подключений. Дополнительные сведения см. в разделах Host namespaces и Pod networking в документации Kubernetes .

dnsPolicy -> (string)

Политика DNS для pod. Значение по умолчанию: ClusterFirst . Если параметр hostNetwork не указан, по умолчанию используется ClusterFirstWithHostNet . ClusterFirst указывает, что любой DNS-запрос, не соответствующий настроенному суффиксу домена кластера, пересылается в вышестоящий сервер имен, унаследованный от узла. Дополнительные сведения см. в разделе Pod’s DNS policy в документации Kubernetes .

Допустимые значения: Default | ClusterFirst | ClusterFirstWithHostNet

imagePullSecrets -> (list)

Ссылается на ресурс секрета Kubernetes. Он содержит список секретов. Эти секреты помогают получить доступ для извлечения образов из частного реестра.

ImagePullSecret$name требуется, когда используется этот объект.

(structure)

Ссылается на ресурс секрета Kubernetes. Имя секрета должно начинаться и заканчиваться буквенно-цифровым символом, должно быть в нижнем регистре, может включать точки (.) и дефисы (-), и не может содержать более 253 символов.

name -> (string)

Предоставляет уникальный идентификатор для ImagePullSecret . Этот объект необходим при использовании EksPodProperties$imagePullSecrets .

containers -> (list)

Свойства контейнера, используемого в поде Amazon EKS.

Примечание

Этот объект ограничен 10 элементами.

(структура)

Свойства контейнера EKS используются в определениях заданий для определений заданий на основе Amazon EKS для описания свойств узла контейнера в поде, который запускается как часть задания. Это нельзя указать для определений заданий на основе Amazon ECS.

name -> (string) — имя

Имя контейнера. Если имя не указано, используется имя по умолчанию “Default “. Каждый контейнер в поде должен иметь уникальное имя.

image -> (string) — образ

Образ Docker, используемый для запуска контейнера.

imagePullPolicy -> (string) — политика извлечения образов

Политика извлечения образов для контейнера. Поддерживаемые значения: Always , IfNotPresent и Never . Этот параметр по умолчанию имеет значение IfNotPresent . Однако, если указан тег :latest , по умолчанию используется значение Always . Для получения дополнительной информации см. раздел Обновление образов в документации Kubernetes .

command -> (list) — команда

Точка входа для контейнера. Это не запускается внутри оболочки. Если это не указано, используется ENTRYPOINT образа контейнера. Ссылки на переменные среды расширяются с использованием среды контейнера.

Если указанная переменная среды не существует, ссылка в команде не изменяется. Например, если ссылка на “$(NAME1) “ и переменная среды NAME1 не существует, строка команды останется “$(NAME1) .” $$ заменяется на $ , и результирующая строка не расширяется. Например, $$(VAR_NAME) будет передано как $(VAR_NAME) , существует ли переменная среды VAR_NAME или нет. Точку входа нельзя обновить. Для получения дополнительной информации см. раздел ENTRYPOINT в справке Dockerfile и Определите команду и аргументы для контейнера и Точку входа в документации Kubernetes .

(string)

args -> (list) — аргументы

Массив аргументов для точки входа. Если это не указано, используется CMD образа контейнера. Это соответствует элементу args в разделе Entrypoint пода в Kubernetes. Ссылки на переменные среды расширяются с использованием среды контейнера.

Если указанная переменная среды не существует, ссылка в команде не изменяется. Например, если ссылка на “$(NAME1) “ и переменная среды NAME1 не существует, строка команды останется “$(NAME1) .” $$ заменяется на $ , и результирующая строка не расширяется. Например, $$(VAR_NAME) передается как $(VAR_NAME) , существует ли переменная среды VAR_NAME или нет. Для получения дополнительной информации см. справку Dockerfile: CMD и Определите команду и аргументы для пода в документации Kubernetes .

(string)

env -> (list) — переменные окружения

Переменные среды для передачи контейнеру.

Примечание

Переменные среды не могут начинаться с “AWS_BATCH “. Эта система именования зарезервирована для переменных, которые задает Batch.

(структура)

Переменная среды.

name -> (string) — имя

Имя переменной среды.

value -> (string) — значение

Значение переменной среды.

resources -> (structure) — ресурсы

Тип и объем ресурсов, которые нужно назначить контейнеру. Поддерживаемые ресурсы включают memory , cpu и nvidia.com/gpu . Для получения дополнительной информации см. Управление ресурсами для подов и контейнеров в документации Kubernetes .

limits -> (map) — лимиты

Тип и количество ресурсов, которые необходимо зарезервировать для контейнера. Значения варьируются в зависимости от указанного name . Ресурсы можно запросить, используя объекты limits или requests .

memory — память

Жесткий лимит памяти (в МиБ) для контейнера с использованием целых чисел с суффиксом «Ми». Если контейнер пытается превысить указанный объем памяти, контейнер завершается. Необходимо указать не менее 4 МиБ памяти для задания. memory можно указать в limits , requests или в обоих местах. Если memory указано в обоих местах, то значение, указанное в limits , должно быть равно значению, указанному в requests .

Примечание

Чтобы максимизировать использование ресурсов, предоставьте своим заданиям как можно больше памяти для конкретного типа экземпляра, который вы используете. Чтобы узнать как, см. Управление памятью в Руководстве пользователя Batch .

cpu — процессор

Количество процессоров, зарезервированных для контейнера. Значения должны быть четными кратно 0.25 . cpu можно указать в limits , requests или в обоих местах. Если cpu указано в обоих местах, то значение, указанное в limits , должно быть не меньше значения, указанного в requests .

nvidia.com/gpu — графический процессор

Количество графических процессоров, зарезервированных для контейнера. Значения должны быть целым числом. memory можно указать в limits , requests или в обоих местах. Если memory указано в обоих местах, то значение, указанное в limits , должно быть равно значению, указанному в requests .

key -> (string) — ключ

value -> (string) — значение

requests -> (map) — запросы

Тип и количество ресурсов, которые необходимо запросить для контейнера. Значения варьируются в зависимости от указанного name . Ресурсы можно запросить, используя объекты limits или requests .

memory — память

Жесткий лимит памяти (в МиБ) для контейнера с использованием целых чисел с суффиксом «Ми». Если контейнер пытается превысить указанный объем памяти, контейнер завершается. Необходимо указать не менее 4 МиБ памяти для задания. memory можно указать в limits , requests или в обоих местах. Если memory указано в обоих местах, то значение, указанное в limits , должно быть равно значению, указанному в requests .

Примечание

Если вы пытаетесь максимизировать использование ресурсов, предоставив своим заданиям как можно больше памяти для определенного типа экземпляра, см. Управление памятью в Руководстве пользователя Batch .

cpu — процессор

Количество процессоров, зарезервированных для контейнера. Значения должны быть четными кратно 0.25 . cpu можно указать в limits , requests или в обоих местах. Если cpu указано в обоих местах, то значение, указанное в limits , должно быть не меньше значения, указанного в requests .

nvidia.com/gpu — графический процессор

Количество графических процессоров, зарезервированных для контейнера. Значения должны быть целым числом. nvidia.com/gpu можно указать в limits , requests или в обоих местах. Если nvidia.com/gpu указано в обоих местах, то значение, указанное в limits , должно быть равно значению, указанному в requests .

key -> (string) — ключ

value -> (string) — значение

volumeMounts -> (list) — подключения томов

Подключения томов для контейнера. Batch поддерживает типы томов emptyDir , hostPath и secret . Для получения дополнительной информации о томах и подключениях томов в Kubernetes см. раздел Тома в документации Kubernetes .

(структура)

Подключения томов для контейнера для задания Amazon EKS. Для получения дополнительной информации о томах и подключениях томов в Kubernetes см. раздел Тома в документации Kubernetes .

name -> (string) — имя

Имя подключения тома. Оно должно соответствовать имени одного из томов в поде.

mountPath -> (string) — путь монтирования

Путь в контейнере, в котором смонтирован том.

subPath -> (string) — подпуть

Подпуть внутри указанного тома вместо его корня.

readOnly -> (boolean) — только для чтения

Если это значение true , контейнер имеет доступ к тому только для чтения. В противном случае контейнер может записывать данные на том. Значение по умолчанию — false .

securityContext -> (structure) — контекст безопасности

Контекст безопасности для задания. Для получения дополнительной информации см. раздел Configure a security context for a pod or container в документации Kubernetes .

runAsUser -> (long)

Когда этот параметр указан, контейнер запускается от указанного идентификатора пользователя (uid ). Если этот параметр не указан, по умолчанию используется пользователь, указанный в метаданных изображения. Этот параметр соответствует политике RunAsUser и MustRanAs в политиках безопасности pod "Пользователи и группы" в документации Kubernetes .

runAsGroup -> (long)

Когда этот параметр указан, контейнер запускается от указанного идентификатора группы (gid ). Если этот параметр не указан, по умолчанию используется группа, указанная в метаданных изображения. Этот параметр соответствует политике RunAsGroup и MustRunAs в политиках безопасности pod "Пользователи и группы" в документации Kubernetes .

privileged -> (boolean)

Когда этот параметр true , контейнеру предоставляются повышенные разрешения на экземпляре хост-контейнера. Уровень разрешений аналогичен разрешениям пользователя root . Значение по умолчанию - false . Этот параметр соответствует политике privileged в политиках безопасности pod "Privileged" в документации Kubernetes .

allowPrivilegeEscalation -> (boolean)

Разрешено ли контейнеру или pod Kubernetes получать больше привилегий, чем его родительский процесс. Значение по умолчанию - false .

readOnlyRootFilesystem -> (boolean)

Когда этот параметр true , контейнер получает доступ только для чтения к своей корневой файловой системе. Значение по умолчанию - false . Этот параметр соответствует политике ReadOnlyRootFilesystem в политиках безопасности pod "Volumes and file systems" в документации Kubernetes .

runAsNonRoot -> (boolean)

Когда этот параметр указан, контейнер запускается от имени пользователя с uid , отличным от 0. Если этот параметр не указан, такое правило не применяется. Этот параметр соответствует политике RunAsUser и MustRunAsNonRoot в политиках безопасности pod "Пользователи и группы" в документации Kubernetes .

initContainers -> (list)

Эти контейнеры запускаются перед контейнерами приложений, всегда выполняются до завершения и должны завершиться успешно, прежде чем запустится следующий контейнер. Эти контейнеры зарегистрированы с агентом Amazon EKS Connector и сохраняют информацию о регистрации в хранилище данных Kubernetes backend. Дополнительную информацию см. в разделе Init Containers в документации Kubernetes .

Примечание

Этот объект ограничен 10 элементами.

(структура)

Свойства контейнера EKS используются в определениях заданий для определений заданий на основе Amazon EKS для описания свойств для узла контейнера в pod, который запускается как часть задания. Это нельзя указать для определений заданий на основе Amazon ECS.

name -> (string)

Имя контейнера. Если имя не указано, используется имя по умолчанию “Default “. Каждый контейнер в pod должен иметь уникальное имя.

image -> (string)

Образ Docker, используемый для запуска контейнера.

imagePullPolicy -> (string)

Политика извлечения образов для контейнера. Поддерживаемые значения: Always , IfNotPresent и Never . Этот параметр по умолчанию имеет значение IfNotPresent . Однако, если указан тег :latest , по умолчанию используется Always . Дополнительную информацию см. в разделе Обновление изображений в документации Kubernetes .

command -> (list)

Точка входа для контейнера. Это не запускается в оболочке. Если это не указано, используется ENTRYPOINT образа контейнера. Ссылки на переменные среды расширяются с использованием среды контейнера.

Если ссылочная переменная среды не существует, ссылка в команде не изменяется. Например, если ссылка относится к “$(NAME1) “ и переменная среды NAME1 не существует, командная строка останется “$(NAME1) .” $$ заменяется на $ , и полученная строка не расширяется. Например, $$(VAR_NAME) будет передано как $(VAR_NAME) вне зависимости от того, существует ли переменная среды VAR_NAME . Точка входа не может быть обновлена. Дополнительную информацию см. в разделе ENTRYPOINT в справке Dockerfile и Определите команду и аргументы для контейнера и Entrypoint в документации Kubernetes .

(string)

args -> (list)

Массив аргументов для точки входа. Если это не указано, используется CMD образа контейнера. Это соответствует члену args в разделе Entrypoint Pod в Kubernetes. Ссылки на переменные среды расширяются с использованием среды контейнера.

Если ссылочная переменная среды не существует, ссылка в команде не изменяется. Например, если ссылка относится к “$(NAME1) “ и переменная среды NAME1 не существует, командная строка останется “$(NAME1) .” $$ заменяется на $ , и полученная строка не расширяется. Например, $$(VAR_NAME) передается как $(VAR_NAME) вне зависимости от того, существует ли переменная среды VAR_NAME . Дополнительную информацию см. в разделе Справочник Dockerfile: CMD и Определите команду и аргументы для pod в документации Kubernetes .

(string)

env -> (list)

Переменные среды для передачи контейнеру.

Примечание

Переменные среды не могут начинаться с “AWS_BATCH “. Эта конвенция именования зарезервирована для переменных, которые устанавливает Batch.

(структура)

Переменная среды.

name -> (string)

Имя переменной среды.

value -> (string)

Значение переменной среды.

resources -> (structure)

Тип и количество ресурсов, назначаемых контейнеру. Поддерживаемые ресурсы включают memory , cpu и nvidia.com/gpu . Дополнительную информацию см. в разделе Управление ресурсами для pods и containers в документации Kubernetes .

limits -> (map)

Тип и количество ресурсов, которые необходимо зарезервировать для контейнера. Значения зависят от указанного name . Ресурсы можно запрашивать, используя объекты limits или requests .

memory

Жесткий предел памяти (в МиБ) для контейнера с использованием целых чисел с суффиксом “Mi”. Если ваш контейнер пытается превысить указанный объем памяти, контейнер завершается. Для задания необходимо указать не менее 4 МиБ памяти. memory можно указать в limits , requests или в обоих. Если memory указано в обоих местах, значение, указанное в limits , должно быть равно значению, указанному в requests .

Примечание

Чтобы максимизировать использование ресурсов, предоставьте своим заданиям как можно больше памяти для конкретного типа экземпляра, который вы используете. Чтобы узнать, как это сделать, см. раздел Управление памятью в Руководстве пользователя Batch .

cpu

Количество процессоров, зарезервированных для контейнера. Значения должны быть четным кратным 0.25 . cpu можно указать в limits , requests или в обоих. Если cpu указано в обоих местах, значение, указанное в limits , должно быть не меньше значения, указанного в requests .

nvidia.com/gpu

Количество графических процессоров, зарезервированных для контейнера. Значения должны быть целым числом. memory можно указать в limits , requests или в обоих. Если memory указано в обоих местах, значение, указанное в limits , должно быть равно значению, указанному в requests .

key -> (string)

value -> (string)

requests -> (map)

Тип и количество ресурсов для запроса для контейнера. Значения зависят от указанного name . Ресурсы можно запросить, используя объекты limits или requests .

memory

Жесткий предел памяти (в МиБ) для контейнера с использованием целых чисел с суффиксом “Mi”. Если ваш контейнер пытается превысить указанный объем памяти, контейнер завершается. Для задания необходимо указать не менее 4 МиБ памяти. memory можно указать в limits , requests или в обоих. Если memory указано в обоих, значение, указанное в limits , должно быть равно значению, указанному в requests .

Примечание

Если вы пытаетесь максимизировать использование ресурсов, предоставляя своим заданиям как можно больше памяти для конкретного типа экземпляра, см. раздел Управление памятью в Руководстве пользователя Batch .

cpu

Количество процессоров, зарезервированных для контейнера. Значения должны быть четным кратным 0.25 . cpu можно указать в limits , requests или в обоих. Если cpu указано в обоих, значение, указанное в limits , должно быть не меньше значения, указанного в requests .

nvidia.com/gpu

Количество графических процессоров, зарезервированных для контейнера. Значения должны быть целым числом. nvidia.com/gpu можно указать в limits , requests или в обоих. Если nvidia.com/gpu указано в обоих местах, значение, указанное в limits , должно быть равно значению, указанному в requests .

key -> (string)

value -> (string)

volumeMounts -> (list)

Точки монтирования томов для контейнера. Batch поддерживает emptyDir , hostPath и secret типы томов. Дополнительную информацию о томах и точках монтирования томов в Kubernetes см. в разделе Тома в документации Kubernetes .

(структура)

Точки монтирования томов для контейнера для задания Amazon EKS. Дополнительную информацию о томах и точках монтирования томов в Kubernetes см. в разделе Тома в документации Kubernetes .

name -> (string)

Имя точки монтирования тома. Это должно соответствовать имени одного из томов в pod.

mountPath -> (string)

Путь в контейнере, где монтируется том.

subPath -> (string)

Подпуть внутри ссылочного тома вместо его корня.

readOnly -> (boolean)

Если это значение true , контейнер имеет доступ к тому только для чтения. В противном случае контейнер может записывать в том. Значение по умолчанию - false .

securityContext -> (structure)

Контекст безопасности для задания. Для получения дополнительной информации см. раздел Настройка контекста безопасности для pod или контейнера в документации Kubernetes .

runAsUser -> (long)

Если этот параметр указан, контейнер запускается с указанным идентификатором пользователя (uid ). Если этот параметр не указан, по умолчанию используется пользователь, указанный в метаданных изображения. Этот параметр сопоставляется с политикой RunAsUser и MustRanAs в политиках безопасности pod «Пользователи и группы» в документации Kubernetes .

runAsGroup -> (long)

Если этот параметр указан, контейнер запускается с указанным идентификатором группы (gid ). Если этот параметр не указан, по умолчанию используется группа, указанная в метаданных изображения. Этот параметр сопоставляется с политикой RunAsGroup и MustRunAs в политиках безопасности pod «Пользователи и группы» в документации Kubernetes .

privileged -> (boolean)

Когда этот параметр равен true , контейнеру предоставляются повышенные разрешения в экземпляре контейнера хоста. Уровень разрешений аналогичен разрешениям пользователя root . Значение по умолчанию — false . Этот параметр сопоставляется с политикой privileged в политиках безопасности pod «Привилегированные» в документации Kubernetes .

allowPrivilegeEscalation -> (boolean)

Разрешено ли контейнеру или Kubernetes pod получать больше привилегий, чем у его родительского процесса. Значение по умолчанию — false .

readOnlyRootFilesystem -> (boolean)

Когда этот параметр равен true , контейнер получает доступ только для чтения к своей корневой файловой системе. Значение по умолчанию — false . Этот параметр сопоставляется с политикой ReadOnlyRootFilesystem в политиках безопасности pod «Тома и файловые системы» в документации Kubernetes .

runAsNonRoot -> (boolean)

Когда этот параметр указан, контейнер запускается от имени пользователя с uid , отличным от 0. Если этот параметр не указан, такое правило не применяется. Этот параметр сопоставляется с политикой RunAsUser и MustRunAsNonRoot в политиках безопасности pod «Пользователи и группы» в документации Kubernetes .

volumes -> (list)

Указывает тома для определения задания, которое использует ресурсы Amazon EKS.

(structure)

Указывает том Amazon EKS для определения задания.

name -> (string)

Имя тома. Имя должно быть разрешено в качестве имени поддомена DNS. Для получения дополнительной информации см. раздел Имена поддоменов DNS в документации Kubernetes .

hostPath -> (structure)

Указывает конфигурацию тома Kubernetes hostPath . Для получения дополнительной информации см. раздел hostPath в документации Kubernetes .

path -> (string)

Путь к файлу или каталогу на хосте для монтирования в контейнеры в pod.

emptyDir -> (structure)

Указывает конфигурацию тома Kubernetes emptyDir . Для получения дополнительной информации см. раздел emptyDir в документации Kubernetes .

medium -> (string)

Носитель для хранения тома. Значение по умолчанию — пустая строка, которая использует хранилище узла.

“”

(По умолчанию) Используйте дисковое хранилище узла.

“Memory”

Используйте том tmpfs , который поддерживается ОЗУ узла. Содержимое тома теряется при перезагрузке узла, и любое хранилище в томе учитывается в пределе памяти контейнера.

sizeLimit -> (string)

Максимальный размер тома. По умолчанию максимальный размер не определен.

secret -> (structure)

Указывает конфигурацию тома Kubernetes secret . Для получения дополнительной информации см. раздел secret в документации Kubernetes .

secretName -> (string)

Имя секрета. Имя должно быть разрешено в качестве имени поддомена DNS. Для получения дополнительной информации см. раздел Имена поддоменов DNS в документации Kubernetes .

optional -> (boolean)

Указывает, должен ли быть определен секрет или ключи секрета.

persistentVolumeClaim -> (structure)

Указывает конфигурацию Kubernetes persistentVolumeClaim , привязанного к persistentVolume . Для получения дополнительной информации см. раздел Persistent Volume Claims в документации Kubernetes .

claimName -> (string)

Имя persistentVolumeClaim , привязанного к persistentVolume . Для получения дополнительной информации см. раздел Persistent Volume Claims в документации Kubernetes .

readOnly -> (boolean)

Необязательное логическое значение, указывающее, является ли монтирование только для чтения. По умолчанию — false. Для получения дополнительной информации см. раздел Read Only Mounts в документации Kubernetes .

metadata -> (structure)

Метаданные о Kubernetes pod. Для получения дополнительной информации см. раздел Understanding Kubernetes Objects в документации 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 помещает pods Batch Job в это пространство имен. Если это поле предоставлено, значение не может быть пустым или null. Оно должно соответствовать следующим требованиям:

  • 1–63 символа
  • Не может быть установлено значение default
  • Не может начинаться с kube
  • Должно соответствовать следующему регулярному выражению: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$

Для получения дополнительной информации см. раздел Namespaces в документации Kubernetes . Это пространство имен может отличаться от kubernetesNamespace , установленного в EksConfiguration вычислительной среды, но должно иметь идентичные роли управления доступом на основе ролей (RBAC), как и kubernetesNamespace вычислительной среды. Для многоузловых параллельных заданий одно и то же значение должно быть указано во всех диапазонах узлов.

shareProcessNamespace -> (boolean)

Указывает, являются ли процессы в контейнере общими или видимыми для других контейнеров в том же pod. Для получения дополнительной информации см. раздел Share Process Namespace between Containers in a Pod .

containerOrchestrationType -> (string)

Тип оркестрации вычислительной среды. Допустимыми значениями являются ECS (по умолчанию) или EKS .

consumableResourceProperties -> (structure)

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

consumableResourceList -> (list)

Список потребляемых ресурсов, необходимых для выполнения задания.

(structure)

Информация о потребляемом ресурсе, необходимом для запуска задания.

consumableResource -> (string)

Имя или ARN потребляемого ресурса.

quantity -> (long)

Необходимое количество потребляемого ресурса.

nextToken -> (string)

Значение nextToken для включения в будущий запрос DescribeJobDefinitions . Когда результаты запроса DescribeJobDefinitions превышают maxResults , это значение можно использовать для получения следующей страницы результатов. Это значение null , когда больше нет результатов для возврата.

© Copyright 2025, Amazon Web Services. Created using Sphinx.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API