Spec-Zone.ru › Ansible 2.10

community.aws.aws_batch_job_definition – Управление определениями заданий AWS Batch

Примечание

Этот плагин входит в коллекцию community.aws (версия 1.3.0).

Для его установки используйте: ansible-galaxy collection install community.aws.

Для использования в книге задач укажите: community.aws.aws_batch_job_definition.

Новое в версии 1.0.0: коллекции community.aws

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Обзор

  • Этот модуль позволяет управлять определениями заданий AWS Batch.
  • Он идемпотентен и поддерживает режим «Проверка».
  • Для управления средой выполнения используйте модуль community.aws.aws_batch_compute_environment, для управления очередями заданий – community.aws.aws_batch_job_queue, а для управления определениями заданий – community.aws.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.
Если задан параметр profile, этот параметр игнорируется.
Одновременное использование параметров aws_access_key и profile устарело и после 2022-06-01 эти параметры будут взаимоисключающими.

псевдонимы: ec2_access_key, access_key
aws_ca_bundle
путь
Расположение файла с сертификатом CA, используемого для проверки SSL-сертификатов.
Используется только для модулей на основе boto3.
Примечание: файл CA Bundle считывается на стороне модуля и, возможно, требует явного копирования с контроллера, если выполняется не локально.
aws_config
словарь
Словарь для изменения конфигурации botocore.
Параметры можно найти по адресу https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config.
Для модулей boto используется только ключ 'user_agent'. См. http://boto.cloudhackers.com/en/latest/boto_config_tut.html#boto для получения дополнительной информации о конфигурации boto.
aws_secret_key
строка
Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY.
Если задан параметр profile, этот параметр игнорируется.
Одновременное использование параметров aws_secret_key и profile устарело и после 2022-06-01 эти параметры будут взаимоисключающими.

псевдонимы: ec2_secret_key, secret_key
command
список / элементы=строка
Команда, передаваемая контейнеру. Этот параметр соответствует параметру Cmd в разделе "Создание контейнера" удаленного API Docker и параметру COMMAND в команде docker run. Дополнительную информацию см. по адресу https://docs.docker.com/engine/reference/builder/#cmd.
debug_botocore_endpoint_logs
логический тип
    Варианты:
  • нет ←
  • да
Используйте logger botocore.endpoint для анализа уникальных (а не общих) API-вызовов «ресурс:действие», выполняемых во время задачи, выведя их в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action, чтобы вывести полный список, сделанный во время выполнения playbook. Переменная окружения ANSIBLE_DEBUG_BOTOCORE_LOGS также может быть использована.
ec2_url
строка
URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль будет использовать конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если она существует.

псевдонимы: aws_endpoint_url, endpoint_url
environment
список / элементы=словарь
Переменные окружения, которые необходимо передать контейнеру. Этот параметр соответствует параметру Env в разделе "Создание контейнера" удаленного API Docker и параметру --env в команде docker run.
name
строка
Имя пары ключ-значение. Для переменных окружения это имя переменной окружения.
value
строка
Значение пары ключ-значение. Для переменных окружения это значение переменной окружения.
image
строка / обязательно
Используемый образ для запуска контейнера. Эта строка передаётся непосредственно демону Docker. Образы из реестра Docker Hub доступны по умолчанию. Другие репозитории указываются с помощью `` repository-url /image <colon>tag ``. Разрешается до 255 букв (заглавные и строчные), цифр, дефисов, нижних подчёркиваний, двоеточий, точек, слэшей и знаков числа. Этот параметр соответствует параметру Image в разделе "Создание контейнера" удаленного API Docker и параметру IMAGE в команде docker run.
job_definition_arn
строка
ARN задания определения.
job_definition_name
строка / обязательно
Имя задания определения.
job_role_arn
строка
Amazon Resource Name (ARN) роли IAM, которую контейнер может принять для разрешений AWS.
memory
целое число / обязательно
Жёсткий предел (в МБ) памяти, предоставляемой контейнеру. Если контейнер пытается превысить указанный здесь объём памяти, контейнер будет остановлен. Этот параметр соответствует параметру Memory в разделе "Создание контейнера" удаленного API Docker и параметру --memory в команде docker run.
mount_points
список / элементы=словарь
Точки монтирования томов данных в контейнере. Этот параметр соответствует параметру Volumes в разделе "Создание контейнера" удаленного API Docker и параметру --volume в команде docker run.
containerPath
строка
Путь в контейнере, по которому монтируется хост-том.
readOnly
строка
Если это значение равно true, контейнер имеет только доступ для чтения к тому; в противном случае, контейнер может записывать в том. Значение по умолчанию — false.
sourceVolume
строка
Имя тома для монтирования.
parameters
словарь
Значения параметров для подстановки по умолчанию для задания. Параметры задаются как пары ключ-значение. Параметры в запросе SubmitJob переопределяют любые соответствующие параметры по умолчанию из задания.
privileged
строка
Если этот параметр равен true, контейнеру предоставляются повышенные привилегии на хост-инстансе контейнера (аналогично пользователю root). Этот параметр соответствует параметру Privileged в разделе "Создание контейнера" удаленного API Docker и параметру --privileged в команде docker run.
profile
строка
Использует профиль boto. Работает только с boto >= 2.24.0.
Использование profile переопределяет aws_access_key, aws_secret_key и security_token, и поддержка одновременного использования этих параметров вместе с profile устарела.
aws_access_key, aws_secret_key и security_token будут взаимоисключающими с profile после 2022-06-01.

псевдонимы: aws_profile
readonly_root_filesystem
строка
Если этот параметр равен true, контейнеру предоставляется только доступ для чтения к файловой системе корня. Этот параметр соответствует параметру ReadonlyRootfs в разделе "Создание контейнера" удаленного API Docker и параметру --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.
Если задан параметр profile, этот параметр игнорируется.
Одновременное использование параметров security_token и profile устарело и после 2022-06-01 эти параметры будут взаимоисключающими.

псевдонимы: aws_security_token, access_token
state
строка
    Варианты:
  • present ←
  • absent
Описывает желаемое состояние.
type
строка / обязательно
Тип задания определения.
ulimits
список / элементы=словарь
Список ulimit для задания в контейнере. Этот параметр соответствует параметру Ulimits в разделе "Создание контейнера" удаленного API Docker и параметру --ulimit в команде docker run.
hardLimit
строка
Жёсткий предел для типа ulimit.
name
строка
Тип ulimit.
softLimit
строка
Мягкий предел для типа ulimit.
user
строка
Имя пользователя, используемого внутри контейнера. Этот параметр соответствует параметру User в разделе "Создание контейнера" удаленного API Docker и параметру --user в команде docker run.
validate_certs
boolean
    Варианты:
  • no
  • да ←
Если установлено значение "no", сертификаты SSL не будут проверяться для версий boto >= 2.6.0.
vcpus
целое число / обязательно
Количество vCPU, резервируемых для контейнера. Этот параметр соответствует CpuShares в разделе «Создание контейнера» удаленного API Docker и параметру --cpu-shares команды docker run. Каждый vCPU эквивалентен 1024 CPU shares.
volumes
список / элементы=словарь
Список томов данных, используемых в задании.
host
строка
Содержимое параметра host определяет, сохраняются ли ваши тома данных в контейнере хоста и где они хранятся. Если параметр host пустой, то демон Docker назначит путь хоста для вашего тома данных, но данные не гарантировано сохранятся после остановки связанных с ним контейнеров. Это словарь с одним свойством, sourcePath — путь на экземпляре контейнера хоста, который предоставляется контейнеру. Если этот параметр пустой, то демон Docker назначил путь хоста для вас. Если параметр host содержит местоположение файла sourcePath, то том данных сохраняется по указанному пути на экземпляре контейнера хоста до его ручного удаления. Если значение sourcePath не существует на экземпляре контейнера хоста, демон Docker создает его. Если местоположение существует, содержимое папки source path экспортируется.
name
строка
Имя тома. Разрешается до 255 букв (строчные и прописные), цифр, дефисов и подчеркиваний. Это имя используется в параметре sourceVolume определения контейнера mountPoints.

Примечания

Примечание

  • Если параметры не заданы в модуле, можно использовать следующие переменные среды в порядке убывания приоритета AWS_URL или EC2_URL, AWS_PROFILE или AWS_DEFAULT_PROFILE, 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, AWS_CA_BUNDLE
  • 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
  community.aws.aws_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
  ansible.builtin.debug: var=job_definition_create_result

Возвращаемые значения

Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого модуля:

Ключ Возвращаемое значение Описание
output
словарь
всегда
возвращает выполненное действие, были ли внесены изменения, вызов и ответ

Пример:
{'aws_batch_job_definition_action': 'none', 'changed': False, 'response': {'job_definition_arn': 'arn:aws:batch:....', 'job_definition_name': '<name>', 'status': 'INACTIVE', 'type': 'container'}}


Авторы

  • 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.10/collections/community/aws/aws_batch_job_definition_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API