amazon.aws.ec2_metadata_facts – Сбор фактов (метаданных экземпляра) о удаленных хостах в ec2
Примечание
Этот плагин входит в состав коллекции amazon.aws (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install amazon.aws.
Для использования в книге задач укажите: amazon.aws.ec2_metadata_facts.
Новое в версии 1.0.0: из amazon.aws
Обзор
- Этот модуль извлекает данные из конечной точки метаданных экземпляра в ec2 в соответствии с https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html.
- Модуль должен вызываться изнутри самого экземпляра EC2.
Примечания
Примечание
- Параметры для фильтрации в ec2_metadata_facts могут быть добавлены позже.
Примеры
# Gather EC2 metadata facts
- amazon.aws.ec2_metadata_facts:
- debug:
msg: "This instance is a t1.micro"
when: ansible_ec2_instance_type == "t1.micro"
Возвращаемые факты
Факты, возвращаемые этим модулем, добавляются/обновляются в hostvars фактах хоста и могут быть использованы по имени, как и любые другие факты хоста. Для их использования не требуется регистрация.
| Краткое описание полей | Возвращаемое значение | Описание | |
|---|---|---|---|
| ansible_ec2_ami_id строка / элементы=строка | success | Идентификатор AMI, используемый для запуска экземпляра. Пример: ami-XXXXXXXX | |
| ansible_ec2_ami_launch_index строка / элементы=строка | success | Если запущено более одного экземпляра одновременно, это значение указывает порядок запуска экземпляра. Значение первого запущенного экземпляра равно 0. Пример: 0 | |
| ansible_ec2_ami_manifest_path строка / элементы=строка | success | Путь к файлу манифеста AMI в Amazon S3. Если для запуска экземпляра использовался AMI с поддержкой Amazon EBS, возвращаемое значение неизвестно. Пример: (неизвестно) | |
| ansible_ec2_ancestor_ami_ids строка / элементы=строка | success | Идентификаторы AMI любых экземпляров, которые были объединены для создания этого AMI. Это значение будет существовать только в том случае, если файл манифеста AMI содержал ключ ancestor-amis. Пример: (неизвестно) | |
| ansible_ec2_block_device_mapping_ami строка / элементы=строка | success | Виртуальное устройство, содержащее корневую/загрузочную файловую систему. Пример: /dev/sda1 | |
| ansible_ec2_block_device_mapping_ebsN строка / элементы=строка | success | Виртуальные устройства, связанные с томами Amazon EBS, если они есть. Тома Amazon EBS доступны в метаданных только в том случае, если они были присутствовали при запуске или когда экземпляр был последний раз запущен. N указывает индекс тома Amazon EBS (например, ebs1 или ebs2). Пример: /dev/xvdb | |
| ansible_ec2_block_device_mapping_ephemeralN строка / элементы=строка | success | Виртуальные устройства, связанные с временными устройствами, если они есть. N указывает индекс временного тома. Пример: /dev/xvdc | |
| ansible_ec2_block_device_mapping_root строка / элементы=строка | success | Виртуальные устройства или разделы, связанные с корневыми устройствами или разделами на виртуальном устройстве, где корневая файловая система (/ или C) связана с данным экземпляром. Пример: /dev/sda1 | |
| ansible_ec2_block_device_mapping_swap строка / элементы=строка | success | Виртуальные устройства, связанные со свопом. Не всегда присутствуют. Пример: /dev/sda2 | |
| ansible_ec2_fws_instance_monitoring строка / элементы=строка | success | Значение, показывающее, включил ли пользователь подробный мониторинг в CloudWatch с частотой в одну минуту. Пример: enabled | |
| ansible_ec2_hostname строка / элементы=строка | success | Имя хоста частного IPv4 DNS экземпляра. В случаях, когда присутствует несколько сетевых интерфейсов, это относится к устройству eth0 (устройство с номером 0). Пример: ip-10-0-0-1.ec2.internal | |
| ansible_ec2_iam_info сложный / элементы=строка | success | Если с экземпляром связан роль IAM, содержит информацию о последнем обновлении профиля экземпляра, включая дату LastUpdated экземпляра, InstanceProfileArn и InstanceProfileId. В противном случае отсутствует. | |
| InstanceProfileArn строка / элементы=строка | success | ARN профиля экземпляра, связанного с экземпляром. | |
| InstanceProfileId строка / элементы=строка | success | Идентификатор профиля экземпляра, связанного с экземпляром. | |
| LastUpdated строка / элементы=строка | success | Последнее время изменения связи профиля экземпляра с экземпляром. | |
| ansible_ec2_iam_info_instanceprofilearn строка / элементы=строка | success | ARN профиля IAM экземпляра. Пример: arn:aws:iam::<идентификатор учетной записи>:instance-profile/<имя роли> | |
| ansible_ec2_iam_info_instanceprofileid строка / элементы=строка | success | Идентификатор профиля IAM экземпляра. | |
| ansible_ec2_iam_info_lastupdated строка / элементы=строка | success | Время последнего обновления информации IAM. Пример: 2017-05-12T02:42:27Z | |
| ansible_ec2_iam_instance_profile_role строка / элементы=строка | success | Роль IAM экземпляра. Пример: role_name | |
| ansible_ec2_iam_security_credentials_ строка / элементы=строка | success | Если с экземпляром связан роль IAM, role-name - это имя роли, а role-name содержит временные учетные данные безопасности, связанные с ролью. В противном случае отсутствует. | |
| ansible_ec2_iam_security_credentials_ строка / элементы=строка | success | Идентификатор ключа доступа роли IAM. | |
| ansible_ec2_iam_security_credentials_ строка / элементы=строка | success | Код IAM. Пример: Success | |
| ansible_ec2_iam_security_credentials_ строка / элементы=строка | success | Время истечения срока действия учетных данных роли IAM. Пример: 2017-05-12T09:11:41Z | |
| ansible_ec2_iam_security_credentials_ строка / элементы=строка | success | Время последнего обновления роли IAM. Пример: 2017-05-12T02:40:44Z | |
| ansible_ec2_iam_security_credentials_ строка / элементы=строка | success | Секретный ключ доступа роли IAM. | |
| ansible_ec2_iam_security_credentials_ строка / элементы=строка | success | Токен роли IAM. | |
| ansible_ec2_iam_security_credentials_ строка / элементы=строка | success | Тип роли IAM. Пример: AWS-HMAC | |
| ansible_ec2_instance_action строка / элементы=строка | success | Уведомляет экземпляр, что он должен перезагрузиться для подготовки к объединению. Пример: none | |
| ansible_ec2_instance_id строка / элементы=строка | success | Идентификатор этого экземпляра. Пример: i-XXXXXXXXXXXXXXXXX | |
| ansible_ec2_instance_identity_document строка / элементы=строка | success | JSON, содержащий атрибуты экземпляра, такие как instance-id, частный IP-адрес и т.д. | |
| ansible_ec2_instance_identity_document_accountid строка / элементы=строка | success | Пример: 012345678901 | |
| ansible_ec2_instance_identity_document_architecture строка / элементы=строка | success | Архитектура системы экземпляра. Пример: x86_64 | |
| ansible_ec2_instance_identity_document_availabilityzone строка / элементы=строка | success | Зона доступности, в которой запущен экземпляр. Пример: us-east-1a | |
| ansible_ec2_instance_identity_document_billingproducts строка / элементы=строка | success | Продукты для выставления счетов за этот экземпляр. | |
| ansible_ec2_instance_identity_document_devpayproductcodes строка / элементы=строка | success | Коды продуктов для запущенного AMI. | |
| ansible_ec2_instance_identity_document_imageid строка / элементы=строка | success | Идентификатор AMI, используемый для запуска экземпляра. Пример: ami-01234567 | |
| ansible_ec2_instance_identity_document_instanceid строка / элементы=строка | success | Идентификатор этого экземпляра. Пример: i-0123456789abcdef0 | |
| ansible_ec2_instance_identity_document_instancetype строка / элементы=строка | success | Тип экземпляра. Пример: m4.large | |
| ansible_ec2_instance_identity_document_kernelid строка / элементы=строка | success | Идентификатор ядра, запущенного с этой инстанцией, применимо. | |
| ansible_ec2_instance_identity_document_pendingtime строка / элементы=строка | success | Время ожидания инстанции. Пример: 2017-05-11T20:51:20Z | |
| ansible_ec2_instance_identity_document_privateip строка / элементы=строка | success | Приватный IPv4-адрес инстанции. В случаях, когда присутствует несколько сетевых интерфейсов, это относится к устройству eth0 (устройству, для которого номер устройства равен 0). Пример: 10.0.0.1 | |
| ansible_ec2_instance_identity_document_ramdiskid строка / элементы=строка | success | Идентификатор RAM-диска, указанного при запуске, применимо. | |
| ansible_ec2_instance_identity_document_region строка / элементы=строка | success | Регион, в котором запущена инстанция. Пример: us-east-1 | |
| ansible_ec2_instance_identity_document_version строка / элементы=строка | success | Версия документа идентификации. Пример: 2010-08-31 | |
| ansible_ec2_instance_identity_pkcs7 строка / элементы=строка | success | Используется для проверки подлинности и содержимого документа по подписи. | |
| ansible_ec2_instance_identity_rsa2048 строка / элементы=строка | success | Используется для проверки подлинности и содержимого документа по подписи. | |
| ansible_ec2_instance_identity_signature строка / элементы=строка | success | Данные, которые могут быть использованы другими сторонами для проверки происхождения и подлинности. | |
| ansible_ec2_instance_life_cycle строка / элементы=строка | success | Вариант покупки инстанции. Пример: on-demand | |
| ansible_ec2_instance_type строка / элементы=строка | success | Тип инстанции. Пример: m4.large | |
| ansible_ec2_local_hostname строка / элементы=строка | success | Приватное IPv4 DNS-имя хоста инстанции. В случаях, когда присутствует несколько сетевых интерфейсов, это относится к устройству eth0 (устройству, для которого номер устройства равен 0). Пример: ip-10-0-0-1.ec2.internal | |
| ansible_ec2_local_ipv4 строка / элементы=строка | success | Приватный IPv4-адрес инстанции. В случаях, когда присутствует несколько сетевых интерфейсов, это относится к устройству eth0 (устройству, для которого номер устройства равен 0). Пример: 10.0.0.1 | |
| ansible_ec2_mac строка / элементы=строка | success | MAC-адрес инстанции. В случаях, когда присутствует несколько сетевых интерфейсов, это относится к устройству eth0 (устройству, для которого номер устройства равен 0). Пример: 00:11:22:33:44:55 | |
| ansible_ec2_metrics_vhostmd строка / элементы=строка | success | Метрики. | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | Уникальный номер устройства, связанный с этим интерфейсом. Номер устройства соответствует имени устройства; например, номер устройства 2 относится к устройству eth2. Эта категория соответствует полям DeviceIndex и device-index, которые используются API Amazon EC2 и командами EC2 для AWS CLI. Пример: 0 | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | Идентификатор эластичного сетевого интерфейса. Пример: eni-12345678 | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | Приватные IPv4-адреса, связанные с каждым публичным IP-адресом и назначенные этому интерфейсу. | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | IPv6-адреса, связанные с интерфейсом. Возвращаются только для инстанций, запущенных в VPC. | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | Локальное имя хоста интерфейса. | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | Приватные IPv4-адреса, связанные с интерфейсом. | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | MAC-адрес инстанции. Пример: 00:11:22:33:44:55 | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | Идентификатор владельца сетевого интерфейса. В средах с несколькими интерфейсами интерфейс может быть подключен третьей стороной, например, Elastic Load Balancing. Трафик по интерфейсу всегда оплачивается владельцем интерфейса. Пример: 01234567890 | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | Общедоступное DNS-имя (IPv4) интерфейса. Если инстанция находится в VPC, эта категория возвращается только в том случае, если атрибут enableDnsHostnames установлен в значение true. Пример: ec2-1-2-3-4.compute-1.amazonaws.com | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | Связанные с интерфейсом адреса Elastic IP. На инстанции может быть несколько IPv4-адресов. Пример: 1.2.3.4 | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | Идентификаторы групп безопасности, к которым принадлежит сетевой интерфейс. Возвращаются только для инстанций, запущенных в VPC. Пример: sg-01234567,sg-01234568 | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | Группы безопасности, к которым принадлежит сетевой интерфейс. Возвращаются только для инстанций, запущенных в VPC. Пример: secgroup1,secgroup2 | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | Идентификатор подсети, в которой находится интерфейс. Возвращаются только для инстанций, запущенных в VPC. Пример: subnet-01234567 | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | IPv4 CIDR-блок подсети, в которой находится интерфейс. Возвращаются только для инстанций, запущенных в VPC. Пример: 10.0.1.0/24 | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | IPv6 CIDR-блок подсети, в которой находится интерфейс. Возвращаются только для инстанций, запущенных в VPC. | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | Идентификатор VPC, в котором находится интерфейс. Возвращаются только для инстанций, запущенных в VPC. Пример: vpc-0123456 | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | IPv4 CIDR-блок VPC, в котором находится интерфейс. Возвращаются только для инстанций, запущенных в VPC. Пример: 10.0.0.0/16 | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | IPv4 CIDR-блок VPC, в котором находится интерфейс. Возвращаются только для инстанций, запущенных в VPC. Пример: 10.0.0.0/16 | |
| ansible_ec2_network_interfaces_macs_ строка / элементы=строка | success | IPv6 CIDR-блок VPC, в котором находится интерфейс. Возвращаются только для инстанций, запущенных в VPC. | |
| ansible_ec2_placement_availability_zone string / elements=string | success | Аваилябельная зона, в которой запущен экземпляр. Пример: us-east-1a | |
| ansible_ec2_placement_region string / elements=string | success | Регион, в котором запущен экземпляр. Пример: us-east-1 | |
| ansible_ec2_product_codes string / elements=string | success | Идентификаторы продуктов, связанные с экземпляром, если таковые имеются. Пример: aw0evgkw8e5c1q413zgy5pjce | |
| ansible_ec2_profile string / elements=string | success | Профили аппаратного обеспечения экземпляра EC2. Пример: default-hvm | |
| ansible_ec2_public_hostname string / elements=string | success | Публичный DNS-адрес экземпляра. Если экземпляр находится в VPC, эта категория возвращается только в том случае, если атрибут enableDnsHostnames установлен в значение true. Пример: ec2-1-2-3-4.compute-1.amazonaws.com | |
| ansible_ec2_public_ipv4 string / elements=string | success | Публичный IPv4-адрес. Если к экземпляру привязан эластичный IP-адрес, возвращаемое значение — эластичный IP-адрес. Пример: 1.2.3.4 | |
| ansible_ec2_public_key string / elements=string | success | Публичный ключ. Доступен только если был предоставлен при запуске экземпляра. | |
| ansible_ec2_ramdisk_id string / elements=string | success | Идентификатор образов RAM, указанный при запуске, если применимо. | |
| ansible_ec2_reservation_id string / elements=string | success | Идентификатор резервации. Пример: r-0123456789abcdef0 | |
| ansible_ec2_security_groups string / elements=string | success | Названия групп безопасности, примененных к экземпляру. После запуска можно изменить группы безопасности только для экземпляров, работающих в VPC. Эти изменения отражаются здесь и в network/interfaces/macs/mac/security-groups. Пример: securitygroup1,securitygroup2 | |
| ansible_ec2_services_domain string / elements=string | success | Домен AWS-ресурсов для региона; например, amazonaws.com для us-east-1. Пример: amazonaws.com | |
| ansible_ec2_services_partition string / elements=string | success | Раздел, в котором находится ресурс. Для стандартных регионов AWS раздел — aws. Если у вас есть ресурсы в других разделах, раздел — aws-partitionname. Например, раздел для ресурсов в регионе Китай (Пекин) — aws-cn. Пример: aws | |
| ansible_ec2_spot_termination_time string / elements=string | success | Приблизительное время (в UTC), когда операционная система вашего экземпляра Spot получит сигнал завершения работы. Этот элемент присутствует и содержит значение времени только если экземпляр Spot был помечен на завершение Amazon EC2. Элемент termination-time не устанавливается в время, если вы сами завершили экземпляр Spot. Пример: 2015-01-05T18:02:00Z | |
| ansible_ec2_user_data string / elements=string | success | Данные пользователя экземпляра. Пример: #!/bin/bash | |
Авторы
- Silviu Dicu (@silviud)
- Vinay Dandekar (@roadmapper)
© 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/amazon/aws/ec2_metadata_facts_module.html