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, чтобы вывести полный список, созданный во время выполнения playbook. Также может использоваться переменная среды ANSIBLE_DEBUG_BOTOCORE_LOGS. | |
| ec2_url строка | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если она есть. | ||
| environment - | Переменные окружения, передаваемые контейнеру. Этот параметр соответствует параметру Env в разделе «Создание контейнера» в Docker Remote API и параметру --env в docker run. Список словарей. | ||
| name - | Имя пары ключ-значение. Для переменных окружения — имя переменной окружения. | ||
| value - | Значение пары ключ-значение. Для переменных окружения — значение переменной окружения. | ||
| image - | Используемый образ для запуска контейнера. Эта строка передаётся напрямую в Docker daemon. Образы из репозитория Docker Hub доступны по умолчанию. Другие репозитории указываются с помощью `` репозиторий-url /образ <двоеточие>тег ``. Допускается до 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 - | Жёсткий лимит памяти (в MiB) для контейнера. Если контейнер попытается превысить указанный здесь лимит, контейнер будет остановлен. Этот параметр соответствует параметру Memory в разделе «Создание контейнера» в Docker Remote API и параметру --memory в docker run. | ||
| mount_points - | Точки подключения для томов данных в контейнере. Этот параметр соответствует параметру Volumes в разделе «Создание контейнера» в Docker Remote API и параметру --volume в docker run. Список словарей. | ||
| containerPath - | Путь в контейнере, по которому подключить хост-том. | ||
| readOnly - | Если значение равно true, контейнер имеет только чтение для тома; иначе контейнер может записывать в том. Значение по умолчанию — 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 - | Список ulimits для установки в контейнере. Этот параметр соответствует параметру 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 создаёт его. Если расположение существует, содержимое папки sourcePath экспортируется. | ||
| 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. [community]
Авторы
- 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.8/modules/aws_batch_job_definition_module.html