aws_batch_job_definition – Управление определениями задач AWS Batch
Новое в версии 2.5.
Описание
- Этот модуль позволяет управлять определениями задач AWS Batch. Он идемпотентен и поддерживает режим «Проверка». Используйте модуль aws_batch_compute_environment для управления средой выполнения, aws_batch_job_queue для управления очередями задач, aws_batch_job_definition для управления определениями задач.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- boto
- boto3
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| attempts - | Стратегия повторных попыток — количество раз, которое задание переместится в состояние RUNNABLE. Можно указать от 1 до 10 попыток. Если attempts больше единицы, задание будет повторно выполняться при сбоях до тех пор, пока не будет переведено в состояние RUNNABLE указанное число раз. | ||
| aws_access_key строка | Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY. псевдонимы: ec2_access_key, access_key | ||
| aws_secret_key строка | Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. псевдонимы: ec2_secret_key, secret_key | ||
| command - | Команда, передаваемая контейнеру. Этот параметр соответствует Cmd в разделе «Создание контейнера» в документации Docker Remote API и параметру COMMAND в docker run. Дополнительная информация доступна по адресу https://docs.docker.com/engine/reference/builder/#cmd. | ||
| debug_botocore_endpoint_logs логический добавлен в 2.8 |
| Использование логгера botocore.endpoint для анализа уникальных (а не общих) API-вызовов «ресурс:действие», производимых во время задачи, с выводом набора в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action для вывода полного списка, созданного во время выполнения плейбука. Также можно использовать переменную среды ANSIBLE_DEBUG_BOTOCORE_LOGS. | |
| ec2_url строка | URL для подключения к EC2 или облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL (если таковая имеется). | ||
| environment - | Переменные среды, передаваемые контейнеру. Этот параметр соответствует Env в разделе «Создание контейнера» в документации Docker Remote API и параметру --env в docker run. Список словарей. | ||
| name - | Имя пары ключ-значение. Для переменных среды — имя переменной среды. | ||
| value - | Значение пары ключ-значение. Для переменных среды — значение переменной среды. | ||
| image - | Используемый образ для запуска контейнера. Эта строка передаётся напрямую демону Docker. Образы из реестра Docker Hub доступны по умолчанию. Другие хранилища указываются с помощью `` repository-url /image <colon>tag ``. Разрешено до 255 символов (строчные и прописные буквы, цифры, дефисы, нижние подчёркивания, двоеточия, точки, слэши и знаки номера). Этот параметр соответствует Image в разделе «Создание контейнера» в документации Docker Remote API и параметру IMAGE в docker run. | ||
| job_definition_arn - | ARN для определения задания. | ||
| job_definition_name - / обязательно | Имя определения задания. | ||
| job_role_arn - | Amazon Resource Name (ARN) роли IAM, которую контейнер может принять для разрешений AWS. | ||
| memory - | Жёсткий лимит памяти (в МБ), предоставляемый контейнеру. Если контейнер пытается превысить указанный здесь лимит, контейнер будет остановлен. Этот параметр соответствует Memory в разделе «Создание контейнера» в документации Docker Remote API и параметру --memory в docker run. | ||
| mount_points - | Точки подключения для томов данных в контейнере. Этот параметр соответствует Volumes в разделе «Создание контейнера» в документации Docker Remote API и параметру --volume в docker run. Список словарей. | ||
| containerPath - | Путь внутри контейнера, где будет подключён хост-том. | ||
| readOnly - | Если это значение истинно, контейнер имеет доступ для чтения только к тому; в противном случае контейнер может записывать в том. Значение по умолчанию — false. | ||
| sourceVolume - | Имя тома, который нужно подключить. | ||
| parameters - | Значения по умолчанию для параметров замены шаблонов, которые нужно установить в определении задания. Параметры задаются как пары ключ-значение. Параметры в запросе SubmitJob переопределяют любые соответствующие параметры по умолчанию из определения задания. | ||
| privileged - | Когда этот параметр равен true, контейнеру предоставляются повышенные привилегии на экземпляре хост-контейнера (аналогично пользователю root). Этот параметр соответствует Privileged в разделе «Создание контейнера» в документации Docker Remote API и параметру --privileged в docker run. | ||
| profile строка | Использует профиль boto. Работает только с boto >= 2.24.0. | ||
| readonly_root_filesystem - | Когда этот параметр равен true, контейнеру предоставляется доступ для чтения только к его файловой системе корня. Этот параметр соответствует ReadonlyRootfs в разделе «Создание контейнера» в документации Docker Remote API и параметру --read-only в docker run. | ||
| region строка | AWS-регион для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION (если таковая имеется). См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
псевдонимы: aws_region, ec2_region | ||
| security_token строка | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. псевдонимы: access_token | ||
| state - |
| Описывает желаемое состояние. | |
| type - / обязательно | Тип определения задания. | ||
| ulimits - | Список ulimit, которые нужно установить в контейнере. Этот параметр соответствует Ulimits в разделе «Создание контейнера» в документации Docker Remote API и параметру --ulimit в docker run. Список словарей. | ||
| hardLimit - | Жёсткий лимит для типа ulimit. | ||
| name - | Тип ulimit. | ||
| softLimit - | Мягкий лимит для типа ulimit. | ||
| user - | Имя пользователя, используемого внутри контейнера. Этот параметр соответствует User в разделе «Создание контейнера» в документации Docker Remote API и параметру --user в docker run. | ||
| validate_certs логический |
| При установке в «нет», сертификаты SSL для версий boto >= 2.6.0 не будут проверяться. | |
| vcpus - | Количество виртуальных процессоров (vCPU), зарезервированных для контейнера. Этот параметр соответствует CpuShares в разделе «Создание контейнера» в документации Docker Remote API и параметру --cpu-shares в docker run. Каждый vCPU эквивалентен 1024 CPU-долям. | ||
| volumes - | Список томов данных, используемых в задаче. Список словарей. | ||
| host - | Содержимое параметра host определяет, сохраняется ли ваш том данных на экземпляре контейнера хоста и где он хранится. Если параметр host пустой, то демон Docker назначит путь хоста для вашего тома данных, но данные не гарантированно сохранятся после остановки контейнеров, с ним связанных. Это словарь с одним свойством, sourcePath — путь на экземпляре контейнера хоста, представленный контейнеру. Если этот параметр пустой, то демон Docker назначил путь хоста за вас. Если параметр host содержит расположение файла sourcePath, то том данных сохраняется в указанном месте на экземпляре контейнера хоста до тех пор, пока вы его не удалите вручную. Если значение sourcePath не существует на экземпляре контейнера хоста, демон Docker его создаст. Если местоположение существует, содержимое папки source path экспортируется. | ||
| name - | Имя тома. Допускается до 255 букв (прописных и строчных), цифр, дефисов и подчеркиваний. Это имя используется в параметре sourceVolume определения контейнера mountPoints. | ||
Примечания
Примечание
- Если параметры не установлены в модуле, можно использовать следующие переменные среды в порядке убывания приоритета
AWS_URLилиEC2_URL,AWS_ACCESS_KEY_IDилиAWS_ACCESS_KEYилиEC2_ACCESS_KEY,AWS_SECRET_ACCESS_KEYилиAWS_SECRET_KEYилиEC2_SECRET_KEY,AWS_SECURITY_TOKENилиEC2_SECURITY_TOKEN,AWS_REGIONилиEC2_REGION - Ansible использует конфигурационный файл boto (обычно ~/.boto), если учетные данные не указаны. См. https://boto.readthedocs.io/en/latest/boto_config_tut.html
-
AWS_REGIONилиEC2_REGIONобычно используются для указания региона AWS, когда это необходимо, но это также можно настроить в конфигурационном файле boto
Примеры
---
- hosts: localhost
gather_facts: no
vars:
state: present
tasks:
- name: My Batch Job Definition
batch_job_definition:
job_definition_name: My Batch Job Definition
state: present
type: container
parameters:
Param1: Val1
Param2: Val2
image: <Docker Image URL>
vcpus: 1
memory: 512
command:
- python
- run_my_script.py
- arg1
job_role_arn: <Job Role ARN>
attempts: 3
register: job_definition_create_result
- name: show results
debug: var=job_definition_create_result
Значения возврата
Общие значения возврата документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| output словарь | всегда | возвращает выполненное действие, изменения, вызов и ответ Пример: {'batch_job_definition_action': 'none', 'changed': False, 'response': {'job_definition_arn': 'arn:aws:batch:....', 'job_definition_name': '<name>', 'status': 'НЕАКТИВЕН', 'type': 'контейнер'}} |
Статус
- Этот модуль не гарантирует обратную совместимость. [превью]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- Jon Meran (@jonmer85)
Подсказка
Если вы обнаружите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/aws_batch_job_definition_module.html