ec2_asg_facts - Сбор фактов о группах автоматического масштабирования ec2 (ASG) в AWS
Новое в версии 2.2.
Краткое описание
- Сбор фактов о группах автоматического масштабирования ec2 (ASG) в AWS
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- boto
- boto3
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| aws_access_key | Значение по умолчанию: None | Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY. Псевдонимы: ec2_access_key, access_key |
| aws_secret_key | Значение по умолчанию: None | Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. Псевдонимы: ec2_secret_key, secret_key |
| ec2_url | Значение по умолчанию: None | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где регион обязателен. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если она существует. |
| name | Префикс или имя группы(групп) автоматического масштабирования, которые нужно найти. Примечание: это соответствие по регулярному выражению с неявным '^' (начало строки). Добавьте '$' для полного совпадения имени. | |
| profile (добавлен в 1.6) | Значение по умолчанию: None | Использует профиль boto. Работает только с boto >= 2.24.0. |
| region | AWS регион для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если она существует. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
Псевдонимы: aws_region, ec2_region | |
| security_token (добавлен в 1.6) | Значение по умолчанию: None | AWS STS security token. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Псевдонимы: access_token |
| tags | Словарь тегов в формате { name_тега1: 'значение_тега1', name_тега2: 'значение_тега2' } для сопоставления с группами автоматического масштабирования. | |
| validate_certs (добавлен в 1.5) |
| При значении "no", сертификаты SSL не будут проверены для boto версий >= 2.6.0. |
Примечания
Примечание
- Если параметры не заданы в модуле, могут использоваться следующие переменные окружения в порядке убывания приоритета
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), если учетные данные не предоставлены. См. http://boto.readthedocs.org/en/latest/boto_config_tut.html
-
AWS_REGIONилиEC2_REGIONобычно используются для указания региона AWS, когда это необходимо, но это также можно настроить в файле конфигурации boto
Примеры
# Note: These examples do not set authentication details, see the AWS Guide for details.
# Find all groups
- ec2_asg_facts:
register: asgs
# Find a group with matching name/prefix
- ec2_asg_facts:
name: public-webserver-asg
register: asgs
# Find a group with matching tags
- ec2_asg_facts:
tags:
project: webapp
env: production
register: asgs
# Find a group with matching name/prefix and tags
- ec2_asg_facts:
name: myproject
tags:
env: production
register: asgs
# Fail if no groups are found
- ec2_asg_facts:
name: public-webserver-asg
register: asgs
failed_when: "{{ asgs.results | length == 0 }}"
# Fail if more than 1 group is found
- ec2_asg_facts:
name: public-webserver-asg
register: asgs
failed_when: "{{ asgs.results | length > 1 }}"
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| auto_scaling_group_arn строка | успех | Amazon Resource Name (ARN) группы автоматического масштабирования (ASG). Пример: arn:aws:autoscaling:us-west-2:1234567890:autoScalingGroup:10787c52-0bcb-427d-82ba-c8e4b008ed2e:autoScalingGroupName/public-webapp-production-1 |
| auto_scaling_group_name строка | успех | Имя группы автоматического масштабирования. Пример: public-webapp-production-1 |
| availability_zones список | успех | Список доступных зон, включённых для этой группы ASG. Пример: ['us-west-2a', 'us-west-2b', 'us-west-2a'] |
| created_time строка | успех | Дата и время создания группы ASG в формате ISO 8601. Пример: 2015-11-25T00:05:36.309Z |
| default_cooldown целое число | успех | Значение отложенного времени по умолчанию в секундах. Пример: 300 |
| desired_capacity целое число | успех | Количество экземпляров EC2, которое должно работать в данной группе. Пример: 3 |
| health_check_period целое число | успех | Время в секундах, после того как новый экземпляр EC2 начинает работать, Auto Scaling начинает проверять его состояние. Пример: 30 |
| health_check_type строка | успех | Сервис, из которого необходимо получить статус работоспособности, один из "EC2" или "ELB". Пример: ELB |
| instances список | успех | Список экземпляров EC2 и их статуса по отношению к группе ASG. Пример: [{'instance_id': 'i-es22ad25', 'lifecycle_state': 'InService', 'health_status': 'Healthy', 'protected_from_scale_in': 'false', 'availability_zone': 'us-west-2a', 'launch_configuration_name': 'public-webapp-production-1'}] |
| launch_config_name строка | успех | Имя конфигурации запуска, связанной с группой ASG. То же, что и launch_configuration_name, предоставлено для совместимости с модулем ec2_asg. Пример: public-webapp-production-1 |
| launch_configuration_name строка | успех | Имя конфигурации запуска, связанной с группой ASG. Пример: public-webapp-production-1 |
| load_balancer_names список | успех | Список имён балансировщиков нагрузки, подключенных к группе ASG. Пример: ['elb-webapp-prod'] |
| max_size целое число | успех | Максимальный размер группы. Пример: 3 |
| min_size целое число | успех | Минимальный размер группы. Пример: 1 |
| new_instances_protected_from_scale_in логическое значение | успех | Защищены ли новые экземпляры от автоматического масштабирования вниз. Пример: false |
| placement_group строка | успех | Группа размещения, в которую запускаются экземпляры, если таковая имеется. Пример: None |
| status строка | успех | Текущее состояние группы во время выполнения DeleteAutoScalingGroup. Пример: None |
| tags список | успех | Список тегов для ASG и информация о том, распространяются ли эти теги на экземпляры при запуске. Пример: [{'propagate_at_launch': 'true', 'key': 'Имя', 'value': 'public-webapp-production-1', 'resource_type': 'auto-scaling-group', 'resource_id': 'public-webapp-production-1'}, {'propagate_at_launch': 'true', 'key': 'env', 'value': 'production', 'resource_type': 'auto-scaling-group', 'resource_id': 'public-webapp-production-1'}] |
| target_group_arns список | успех | Список ARNs целевых групп, которые заполняет ASG. Пример: ['arn:aws:elasticloadbalancing:ap-southeast-2:123456789012:targetgroup/target-group-host-hello/1a2b3c4d5e6f1a2b', 'arn:aws:elasticloadbalancing:ap-southeast-2:123456789012:targetgroup/target-group-path-world/abcd1234abcd1234'] |
| target_group_names список | успех | Список имён целевых групп, которые заполняет ASG. Пример: ['target-group-host-hello', 'target-group-path-world'] |
| termination_policies строка | успех | Список политик завершения для группы. Пример: ['Default'] |
Статус
Этот модуль помечен как предварительная версия, что означает, что он не гарантирует обратную совместимость интерфейса.
Автор
- Rob White (@wimnat)
Подсказка
Если вы заметите какие-либо проблемы в этом документе, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/ec2_asg_facts_module.html