ec2_instance_facts – Сбор фактов о экземплярах ec2 в AWS
Новое в версии 2.4.
Обзор
- Сбор фактов об экземплярах ec2 в AWS
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- boto
- boto3
- botocore
- 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 | |
| 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, если таковая имеется. | |
| filters - | Значение по умолчанию: {} | Словарь фильтров для применения. Каждый элемент словаря состоит из ключа фильтра и значения фильтра. См. https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html для возможных фильтров. Названия и значения фильтров чувствительны к регистру. |
| instance_ids - добавлено в 2.4 | Если вы укажете один или несколько идентификаторов экземпляров, будут возвращены только экземпляры с указанными идентификаторами. | |
| profile строка | Использует профиль 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 строка | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. псевдонимы: access_token | |
| validate_certs логический |
| При установке в "нет", сертификаты 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), если учетные данные не предоставлены. См. https://boto.readthedocs.io/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.
# Gather facts about all instances
- ec2_instance_facts:
# Gather facts about all instances in AZ ap-southeast-2a
- ec2_instance_facts:
filters:
availability-zone: ap-southeast-2a
# Gather facts about a particular instance using ID
- ec2_instance_facts:
instance_ids:
- i-12345678
# Gather facts about any instance with a tag key Name and value Example
- ec2_instance_facts:
filters:
"tag:Name": Example
# Gather facts about any instance in states "shutting-down", "stopping", "stopped"
- ec2_instance_facts:
filters:
instance-state-name: [ "shutting-down", "stopping", "stopped" ]
Значения возврата
Общие значения возврата документированы здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание | ||||
|---|---|---|---|---|---|---|
| экземпляры сложный | всегда | список экземпляров ec2 | ||||
| ami_launch_index целое число | всегда | Индекс запуска AMI, который можно использовать для поиска этого экземпляра в группе запусков. | ||||
| архитектура строка | всегда | Архитектура образа Пример: x86_64 | ||||
| block_device_mappings сложный | всегда | Любые записи сопоставления блочных устройств для экземпляра. | ||||
| device_name строка | всегда | Имя устройства, доступного для экземпляра (например, /dev/sdh или xvdh). Пример: /dev/sdh | ||||
| ebs сложный | всегда | Параметры, используемые для автоматической настройки томов EBS при запуске экземпляра. | ||||
| attach_time строка | всегда | Отметка времени начала присоединения. Пример: 2017-03-23T22:51:24+00:00 | ||||
| delete_on_termination булево | всегда | Указывает, будет ли том удален при завершении работы экземпляра. Пример: True | ||||
| status строка | всегда | Состояние присоединения. Пример: attached | ||||
| volume_id строка | всегда | Идентификатор тома EBS Пример: vol-12345678 | ||||
| client_token строка | всегда | Токен идемпотентности, предоставленный вами при запуске экземпляра, при необходимости. Пример: mytoken | ||||
| cpu_options сложный | всегда, если версия botocore >= 1.10.16 | Параметры процессора, заданные для экземпляра. | ||||
| core_count целое число | всегда | Количество ядер процессора для экземпляра. Пример: 1 | ||||
| threads_per_core целое число | всегда | Количество потоков на ядро процессора. На поддерживаемых экземплярах значение 1 означает, что технология Intel Hyper-Threading отключена. Пример: 1 | ||||
| ebs_optimized булево | всегда | Указывает, оптимизирован ли экземпляр для ввода-вывода EBS. | ||||
| hypervisor строка | всегда | Тип гипервизора экземпляра. Пример: xen | ||||
| iam_instance_profile сложный | всегда | Профиль IAM экземпляра, связанный с экземпляром, при необходимости. | ||||
| arn строка | всегда | Amazon Resource Name (ARN) профиля экземпляра. Пример: arn:aws:iam::000012345678:instance-profile/myprofile | ||||
| id строка | всегда | Идентификатор профиля экземпляра Пример: JFJ397FDG400FG9FD1N | ||||
| image_id строка | всегда | Идентификатор AMI, используемый для запуска экземпляра. Пример: ami-0011223344 | ||||
| instance_id строка | всегда | Идентификатор экземпляра. Пример: i-012345678 | ||||
| instance_type строка | всегда | Размер типа экземпляра работающего экземпляра. Пример: t2.micro | ||||
| key_name строка | всегда | Имя пары ключей, если этот экземпляр был запущен с связанной парой ключей. Пример: my-key | ||||
| launch_time строка | всегда | Время запуска экземпляра. Пример: 2017-03-23T22:51:24+00:00 | ||||
| monitoring сложный | всегда | Мониторинг экземпляра. | ||||
| state строка | всегда | Указывает, включен ли подробный мониторинг. В противном случае включен базовый мониторинг. Пример: disabled | ||||
| network_interfaces сложный | всегда | Один или несколько сетевых интерфейсов для экземпляра. | ||||
| association сложный | всегда | Информация об ассоциации с Elastic IPv4, связанной с сетевым интерфейсом. | ||||
| ip_owner_id строка | всегда | Идентификатор владельца адреса Elastic IP. Пример: amazon | ||||
| public_dns_name строка | всегда | Общедоступное имя DNS. | ||||
| public_ip строка | всегда | Общедоступный IP-адрес или адрес Elastic IP, привязанный к сетевому интерфейсу. Пример: 1.2.3.4 | ||||
| присоединение сложный | всегда | Присоединение сетевого интерфейса. | ||||
| время_присоединения строка | всегда | Отметка времени начала присоединения. Пример: 2017-03-23T22:51:24+00:00 | ||||
| идентификатор_присоединения строка | всегда | Идентификатор присоединения сетевого интерфейса. Пример: eni-attach-3aff3f | ||||
| удалять_при_завершении логическое | всегда | Указывает, удаляется ли сетевой интерфейс при завершении экземпляра. Пример: True | ||||
| индекс_устройства целое число | всегда | Индекс устройства на экземпляре для присоединения сетевого интерфейса. | ||||
| статус строка | всегда | Состояние присоединения. Пример: attached | ||||
| описание строка | всегда | Описание. Пример: Мой интерфейс | ||||
| группы список сложных | всегда | Одна или несколько групп безопасности. | ||||
| идентификатор_группы строка | всегда | Идентификатор группы безопасности. Пример: sg-abcdef12 | ||||
| название_группы строка | всегда | Название группы безопасности. Пример: mygroup | ||||
| ipv6_адреса сложный | всегда | Один или несколько IPv6-адресов, связанных с сетевым интерфейсом. | ||||
| ipv6_адрес строка | всегда | IPv6-адрес. Пример: 2001:0db8:85a3:0000:0000:8a2e:0370:7334 | ||||
| mac_адрес строка | всегда | MAC-адрес. Пример: 00:11:22:33:44:55 | ||||
| идентификатор_сетевого_интерфейса строка | всегда | Идентификатор сетевого интерфейса. Пример: eni-01234567 | ||||
| идентификатор_владельца строка | всегда | AWS-идентификатор учетной записи владельца сетевого интерфейса. Пример: 01234567890 | ||||
| приватный_ip_адрес строка | всегда | IPv4-адрес сетевого интерфейса в подсети. Пример: 10.0.0.1 | ||||
| приватные_ip_адреса список сложных | всегда | Приватные IPv4-адреса, связанные с сетевым интерфейсом. | ||||
| ассоциация сложный | всегда | Информация об ассоциации для адреса Elastic IP (IPv4), связанного с сетевым интерфейсом. | ||||
| идентификатор_владельца_ip строка | всегда | Идентификатор владельца адреса Elastic IP. Пример: amazon | ||||
| общественное_имя_dns строка | всегда | Общественное имя DNS. | ||||
| общественный_ip строка | всегда | Общественный IP-адрес или адрес Elastic IP, привязанный к сетевому интерфейсу. Пример: 1.2.3.4 | ||||
| первичный логическое | всегда | Указывает, является ли этот IPv4-адрес основным частным IP-адресом сетевого интерфейса. Пример: True | ||||
| приватный_ip_адрес строка | всегда | Частный IPv4-адрес сетевого интерфейса. Пример: 10.0.0.1 | ||||
| проверка_источника_назначения логическое | всегда | Указывает, включена ли проверка источника/назначения. Пример: True | ||||
| статус строка | всегда | Статус сетевого интерфейса. Пример: в_использовании | ||||
| идентификатор_подсети строка | всегда | Идентификатор подсети для сетевого интерфейса. Пример: subnet-0123456 | ||||
| идентификатор_vpc строка | всегда | Идентификатор VPC для сетевого интерфейса. Пример: vpc-0123456 | ||||
| размещение сложный | всегда | Местоположение запуска экземпляра, если применимо. | ||||
| availability_zone строка | всегда | Доступная зона экземпляра. Пример: ap-southeast-2a | ||||
| group_name строка | всегда | Имя группы размещения, в которой находится экземпляр (для экземпляров вычислительных кластеров). | ||||
| tenancy строка | всегда | Субъект аренды экземпляра (если экземпляр запущен в VPC). Пример: default | ||||
| private_dns_name строка | всегда | Приватное имя DNS. Пример: ip-10-0-0-1.ap-southeast-2.compute.internal | ||||
| private_ip_address строка | всегда | IPv4-адрес сетевого интерфейса в подсети. Пример: 10.0.0.1 | ||||
| product_codes список комплексных | всегда | Один или несколько кодов продукта. | ||||
| product_code_id строка | всегда | Код продукта. Пример: aw0evgkw8ef3n2498gndfgasdfsd5cce | ||||
| product_code_type строка | всегда | Тип кода продукта. Пример: marketplace | ||||
| public_dns_name строка | всегда | Публичное имя DNS, назначенное экземпляру. | ||||
| public_ip_address строка | всегда | Публичный IPv4-адрес, назначенный экземпляру Пример: 52.0.0.1 | ||||
| root_device_name строка | всегда | Имя устройства корневого устройства Пример: /dev/sda1 | ||||
| root_device_type строка | всегда | Тип корневого устройства, используемого AMI. Пример: ebs | ||||
| security_groups список комплексных | всегда | Одна или несколько групп безопасности для экземпляра. | ||||
| group_id строка | всегда | Идентификатор группы безопасности. Пример: sg-0123456 | ||||
| group_name строка | всегда | Имя группы безопасности. Пример: my-security-group | ||||
| source_dest_check логическое | всегда | Указывает, включена ли проверка источника/назначения. Пример: True | ||||
| state комплексный | всегда | Текущее состояние экземпляра. | ||||
| code целое число | всегда | Низкий байт представляет состояние. Пример: 16 | ||||
| name строка | всегда | Имя состояния. Пример: running | ||||
| state_transition_reason строка | всегда | Причина последнего перехода состояния. | ||||
| subnet_id строка | всегда | Идентификатор подсети, в которой запущен экземпляр. Пример: subnet-00abcdef | ||||
| tags словарь | всегда | Все теги, назначенные экземпляру. | ||||
| virtualization_type строка | всегда | Тип виртуализации AMI. Пример: hvm | ||||
| vpc_id словарь | всегда | Идентификатор VPC, в котором находится экземпляр. Пример: vpc-0011223344 | ||||
Статус
- Этот модуль не гарантирует обратную совместимость интерфейса. [предварительный просмотр]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- Michael Schuett (@michaeljs1990)
- 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.8/modules/ec2_instance_facts_module.html