ec2_asg_facts - Сбор фактов о группах автоматического масштабирования ec2 (ASG) в AWS
Новая версия 2.2.
Обзор
- Сбор фактов о группах автоматического масштабирования ec2 (ASG) в AWS
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- boto
- boto3
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| 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 | |
| ec2_url | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если не используется регион. Если не задан, используется значение переменной среды EC2_URL, если она существует. | |
| name | Префикс или имя группы автоматического масштабирования, которую вы ищете. Примечание: это совпадение по регулярному выражению с неявным '^' (начало строки). Добавьте '$', чтобы получить полное совпадение имени. | |
| profile (добавлено в 1.6) | Использует профиль 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) | Токен безопасности AWS STS. Если не задан, используется значение переменной среды AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Псевдонимы: access_token | |
| tags | Словарь/хеш тегов в формате { имя_тега1: 'значение_тега1', имя_тега2: 'значение_тега2' } для сопоставления с группами автоматического масштабирования, которые вы ищете. | |
| validate_certs bool (добавлено в 1.5) |
| Если установлено в "нет", сертификаты 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 string | успех | 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 str | успех | Имя группы автоматического масштабирования. Пример: public-webapp-production-1 |
| availability_zones list | успех | Список зон доступности, включённых для данной группы ASG. Пример: ['us-west-2a', 'us-west-2b', 'us-west-2a'] |
| created_time string | успех | Дата и время создания группы ASG в формате ISO 8601. Пример: 2015-11-25T00:05:36.309Z |
| default_cooldown int | успех | Значение по умолчанию для времени охлаждения в секундах. Пример: 300 |
| desired_capacity int | успех | Количество экземпляров EC2, которое должно выполняться в этой группе. Пример: 3 |
| health_check_period int | успех | Время в секундах, по истечении которого после ввода в эксплуатацию нового экземпляра EC2, Auto Scaling начнет проверку его работоспособности. Пример: 30 |
| health_check_type str | успех | Сервис, от которого требуется информация о состоянии работоспособности: "EC2" или "ELB". Пример: ELB |
| instances list | успех | Список экземпляров EC2 и их состояние, относящееся к группе ASG. Пример: [{'availability_zone': 'us-west-2a', 'health_status': 'Healthy', 'instance_id': 'i-es22ad25', 'launch_configuration_name': 'public-webapp-production-1', 'lifecycle_state': 'InService', 'protected_from_scale_in': 'false'}] |
| launch_config_name str | успех | Имя конфигурации запуска, связанной с ASG. Аналогично launch_configuration_name, предоставлено для совместимости с модулем ec2_asg. Пример: public-webapp-production-1 |
| launch_configuration_name str | успех | Имя конфигурации запуска, связанной с ASG. Пример: public-webapp-production-1 |
| load_balancer_names list | успех | Список имён балансировщиков нагрузки, присоединённых к ASG. Пример: ['elb-webapp-prod'] |
| max_size int | успех | Максимальный размер группы. Пример: 3 |
| min_size int | успех | Минимальный размер группы. Пример: 1 |
| new_instances_protected_from_scale_in boolean | успех | Защищены ли новые экземпляры от автоматического уменьшения масштаба. Пример: false |
| placement_group str | успех | Группа размещения, в которую запускаются экземпляры, если таковая имеется. Пример: None |
| status str | успех | Текущее состояние группы во время выполнения DeleteAutoScalingGroup. Пример: None |
| tags list | успех | Список тегов для ASG и информация о том, распространяются ли они на экземпляры при запуске. Пример: [{'key': 'Name', 'value': 'public-webapp-production-1', 'resource_id': 'public-webapp-production-1', 'resource_type': 'auto-scaling-group', 'propagate_at_launch': 'true'}, {'key': 'env', 'value': 'production', 'resource_id': 'public-webapp-production-1', 'resource_type': 'auto-scaling-group', 'propagate_at_launch': 'true'}] |
| target_group_arns list | успех | Список 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 list | успех | Список имён целевых групп, которые заполняются ASG. Пример: ['target-group-host-hello', 'target-group-path-world'] |
| termination_policies str | успех | Список политик завершения для группы. Пример: ['Default'] |
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратную совместимость интерфейса.
Техническое обслуживание
Этот модуль помечен как сообщество, что означает, что он поддерживается сообществом Ansible. См. Техническое обслуживание и поддержка модулей для получения дополнительной информации.
Список других модулей, также поддерживаемых сообществом Ansible, см. здесь.
Автор
- 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.6/modules/ec2_asg_facts_module.html