community.aws.aws_batch_compute_environment – Управление средами вычислений AWS Batch
Примечание
Этот плагин входит в коллекцию community.aws (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.aws.
Для использования в книге задач укажите: community.aws.aws_batch_compute_environment.
Новое в версии 1.0.0: of 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
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| 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 считывается на стороне модуля и, возможно, потребует явного копирования с контроллера, если запуск не происходит локально. | |
| aws_config словарь | Словарь для изменения настроек botocore. Параметры можно найти на https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config. Для модулей boto используется только ключ 'user_agent'. Подробнее о конфигурации boto см. http://boto.cloudhackers.com/en/latest/boto_config_tut.html#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 | |
| bid_percentage целое число | Минимальный процент, на который цена Spot Instance должна быть ниже цены On-Demand для данного типа экземпляра, прежде чем экземпляры будут запущены. Например, если процент ставки составляет 20%, цена Spot должна быть ниже 20% от текущей цены On-Demand для этого экземпляра EC2. | |
| compute_environment_name строка / обязательно | Имя среды вычислений. Разрешено до 128 букв (строчные и прописные), цифр и символов подчеркивания. | |
| compute_environment_state строка |
| Состояние среды вычислений. Если состояние ENABLED, среда вычислений принимает задачи из очереди и может автоматически масштабироваться в зависимости от очередей. |
| compute_resource_type строка / обязательно |
| Тип вычислительных ресурсов. |
| debug_botocore_endpoint_logs логический |
| Использование журналирования botocore.endpoint для парсинга уникальных (а не общих) API-вызовов "ресурс:действие" во время задачи, выводя список в ключ task results, resource_actions. Используйте обратный вызов aws_resource_action для вывода в полный список, сделанный во время книги задач. Переменная среды ANSIBLE_DEBUG_BOTOCORE_LOGS также может быть использована. |
| desiredv_cpus целое число | Желаемое количество EC2 vCPU в среде вычислений. | |
| ec2_key_pair строка | Ключ пары EC2, используемый для запуска экземпляров в среде вычислений. | |
| ec2_url строка | URL для подключения к EC2 или облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где регион требуется. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если она есть. алиасы: aws_endpoint_url, endpoint_url | |
| image_id строка | Идентификатор Amazon Machine Image (AMI), используемый для запуска экземпляров в среде вычислений. | |
| instance_role строка / обязательно | Роль Amazon ECS instance, применяемая к экземплярам Amazon EC2 в среде вычислений. | |
| instance_types список / элементы=строка / обязательно | Типы экземпляров, которые могут быть запущены. | |
| maxv_cpus целое число / обязательно | Максимальное количество EC2 vCPU, которое может достичь среда. | |
| minv_cpus целое число / обязательно | Минимальное количество EC2 vCPU, которое среда должна поддерживать. | |
| 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 | |
| region строка | AWS-регион для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если она есть. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region алиасы: aws_region, ec2_region | |
| security_group_ids список / элементы=строка / обязательно | EC2 группы безопасности, связанные с запущенными экземплярами в среде вычислений. | |
| security_token строка | AWS STS security token. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Если задан параметр profile, этот параметр игнорируется. Одновременное указание параметров security_token и profile устарело и будет исключено после 2022-06-01. алиасы: aws_security_token, access_token | |
| service_role строка / обязательно | Полное Amazon Resource Name (ARN) IAM роли, которая позволяет AWS Batch совершать вызовы к другим AWS-сервисам от вашего имени. | |
| spot_iam_fleet_role строка | Amazon Resource Name (ARN) Amazon EC2 Spot Fleet IAM роли, применяемой к среде вычислений SPOT. | |
| state строка |
| Описывает желаемое состояние. |
| subnets список / элементы=строка / обязательно | VPC подсети, в которые запускаются вычислительные ресурсы. | |
| tags словарь | Теги пары ключ-значение, которые будут применены к ресурсам, запущенным в среде вычислений. | |
| type строка / обязательно |
| Тип среды вычислений. |
| validate_certs логический |
| При установке в "нет", SSL сертификаты не будут проверены для boto версий >= 2.6.0. |
Примечания
Примечание
- Если параметры не заданы в модуле, можно использовать следующие переменные окружения в порядке убывания приоритета
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
Примеры
- name: My Batch Compute Environment
community.aws.aws_batch_compute_environment:
compute_environment_name: computeEnvironmentName
state: present
region: us-east-1
compute_environment_state: ENABLED
type: MANAGED
compute_resource_type: EC2
minv_cpus: 0
maxv_cpus: 2
desiredv_cpus: 1
instance_types:
- optimal
subnets:
- my-subnet1
- my-subnet2
security_group_ids:
- my-sg1
- my-sg2
instance_role: arn:aws:iam::<account>:instance-profile/<role>
tags:
tag1: value1
tag2: value2
service_role: arn:aws:iam::<account>:role/service-role/<role>
register: aws_batch_compute_environment_action
- name: show results
ansible.builtin.debug:
var: aws_batch_compute_environment_action
Значения возврата
Общие значения возврата документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| output словарь | всегда | возвращает выполненное действие, были ли внесены изменения, вызов и ответ Пример: {'batch_compute_environment_action': 'none', 'changed': False, 'invocation': {'module_args': {'aws_access_key': None, 'aws_secret_key': None, 'bid_percentage': None, 'compute_environment_name': '<name>', 'compute_environment_state': 'ENABLED', 'compute_resource_type': 'EC2', 'desiredv_cpus': 0, 'ec2_key_pair': None, 'ec2_url': None, 'image_id': None, 'instance_role': 'arn:aws:iam::...', 'instance_types': ['optimal'], 'maxv_cpus': 8, 'minv_cpus': 0, 'profile': None, 'region': 'us-east-1', 'security_group_ids': ['*******'], 'security_token': None, 'service_role': 'arn:aws:iam::....', 'spot_iam_fleet_role': None, 'state': 'present', 'subnets': ['******'], 'tags': {'Environment': '<name>', 'Name': '<name>'}, 'type': 'MANAGED', 'validate_certs': True}}, 'response': {'computeEnvironmentArn': 'arn:aws:batch:....', 'computeEnvironmentName': '<name>', 'computeResources': {'desiredvCpus': 0, 'instanceRole': 'arn:aws:iam::...', 'instanceTypes': ['optimal'], 'maxvCpus': 8, 'minvCpus': 0, 'securityGroupIds': ['******'], 'subnets': ['*******'], 'tags': {'Environment': '<name>', 'Name': '<name>'}, 'type': 'EC2'}, 'ecsClusterArn': 'arn:aws:ecs:.....', 'serviceRole': 'arn:aws:iam::...', 'state': 'ENABLED', 'status': 'VALID', 'statusReason': 'ComputeEnvironment Healthy', 'type': 'MANAGED'}} |
Авторы
- 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_compute_environment_module.html