Spec-Zone.ru › Ansible

Модуль amazon.aws.ec2_metadata_facts – Собирает факты (метаданные экземпляра) об удалённых узлах в EC2

Примечание

Этот модуль входит в коллекцию amazon.aws (версия 11.3.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в состав ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install amazon.aws.

Чтобы использовать её в плейбуке, укажите: amazon.aws.ec2_metadata_facts.

Добавлено в amazon.aws 1.0.0

  • Краткое описание
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые факты

Краткое описание

  • Этот модуль получает данные из конечной точки метаданных экземпляра в EC2 согласно https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html.
  • Модуль необходимо вызывать непосредственно из экземпляра EC2.
  • Модуль настроен на использование службы метаданных экземпляра версии 2 (IMDSv2), работающей на основе сеансов: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html.
  • Если для параметра HttpEndpoint https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceMetadataOptions.html#API_ModifyInstanceMetadataOptions_RequestParameters задано значение disabled для экземпляра EC2, при получении токена сеанса модуль вернёт ошибку.

Параметры

Параметр

Комментарии

metadata_token_ttl_seconds

целое число

добавлено в amazon.aws 8.2.0

Укажите значение для заголовка X-aws-ec2-metadata-token-ttl-seconds.

Значение должно быть в диапазоне от 1 до 21600.

По умолчанию: 60

Примечания

Примечание

  • В дальнейшем могут быть добавлены параметры для фильтрации данных ec2_metadata_facts.

Примеры

# Gather EC2 metadata facts
- amazon.aws.ec2_metadata_facts:

# Set a bigger value for X-aws-ec2-metadata-token-ttl-seconds header
- amazon.aws.ec2_metadata_facts:
    metadata_token_ttl_seconds: 240

- debug:
    msg: "This instance is a t1.micro"
  when: ansible_ec2_instance_type == "t1.micro"

Возвращаемые факты

Факты, возвращаемые этим модулем, добавляются/обновляются в фактах хоста hostvars и могут использоваться по имени, как и любые другие факты хоста. Для их использования не требуется регистрировать их.

Ключ

Описание

ansible_ec2_ami_id

строка

Идентификатор AMI, использованного для запуска экземпляра.

Возвращается: успешно

Пример: "ami-XXXXXXXX"

ansible_ec2_ami_launch_index

строка

Если вы запустили несколько экземпляров одновременно, это значение указывает порядок запуска экземпляра.

Значение для первого запущенного экземпляра — 0.

Возвращается: успешно

Пример: "0"

ansible_ec2_ami_manifest_path

строка

Путь к файлу манифеста AMI в Amazon S3.

Если для запуска экземпляра использовался AMI на основе Amazon EBS, возвращаемый результат неизвестен.

Возвращается: успешно

Пример: "(unknown)"

ansible_ec2_ancestor_ami_ids

строка

Идентификаторы AMI экземпляров, из которых был повторно создан этот AMI.

Это значение присутствует только в том случае, если файл манифеста AMI содержит ключ ancestor-amis.

Возвращается: успешно

Пример: "(unknown)"

ansible_ec2_block_device_mapping_ami

строка

Виртуальное устройство, содержащее корневую/загрузочную файловую систему.

Возвращается: успешно

Пример: "/dev/sda1"

ansible_ec2_block_device_mapping_ebsN

строка

Виртуальные устройства, связанные с томами Amazon EBS, если они есть.

Сведения о томах Amazon EBS доступны в метаданных, только если они были подключены при запуске или при последнем запуске экземпляра.

N указывает индекс тома Amazon EBS (например, ebs1 или ebs2).

Возвращается: успешно

Пример: "/dev/xvdb"

ansible_ec2_block_device_mapping_ephemeralN

строка

Виртуальные устройства, связанные с временными устройствами, если они есть. N указывает индекс временного тома.

Возвращается: успешно

Пример: "/dev/xvdc"

ansible_ec2_block_device_mapping_root

строка

Виртуальные устройства или разделы, связанные с корневыми устройствами, либо разделы на виртуальном устройстве, с которыми связана корневая файловая система (/ или C) данного экземпляра.

Возвращается: успешно

Пример: "/dev/sda1"

ansible_ec2_block_device_mapping_swap

строка

Виртуальные устройства, связанные с областью подкачки. Присутствуют не всегда.

Возвращается: успешно

Пример: "/dev/sda2"

ansible_ec2_fws_instance_monitoring

string

Значение, указывающее, включил ли клиент подробный мониторинг CloudWatch с интервалом в одну минуту.

Возвращается: при успехе

Пример: "enabled"

ansible_ec2_hostname

string

Частное DNS-имя IPv4 экземпляра.

Если присутствует несколько сетевых интерфейсов, это относится к устройству eth0 (устройству с номером 0).

Возвращается: при успехе

Пример: "ip-10-0-0-1.ec2.internal"

ansible_ec2_iam_info

complex

Если с экземпляром связана роль IAM, содержит сведения о последнем обновлении профиля экземпляра, включая дату LastUpdated, InstanceProfileArn и InstanceProfileId экземпляра. В противном случае отсутствует.

Возвращается: при успехе

Пример: ""

InstanceProfileArn

string

ARN профиля InstanceProfile, связанного с экземпляром.

Возвращается: при успехе

InstanceProfileId

string

Идентификатор профиля InstanceProfile, связанного с экземпляром.

Возвращается: при успехе

LastUpdated

string

Время последнего изменения связи InstanceProfile с экземпляром.

Возвращается: при успехе

ansible_ec2_iam_info_instanceprofilearn

string

ARN профиля экземпляра IAM.

Возвращается: при успехе

Пример: "arn:aws:iam::123456789012:instance-profile/role_name"

ansible_ec2_iam_info_instanceprofileid

string

Идентификатор профиля экземпляра IAM.

Возвращается: при успехе

Пример: ""

ansible_ec2_iam_info_lastupdated

string

Время последнего обновления сведений IAM.

Возвращается: при успехе

Пример: "2017-05-12T02:42:27Z"

ansible_ec2_iam_instance_profile_role

string

Роль экземпляра IAM.

Возвращается: при успехе

Пример: "role_name"

ansible_ec2_iam_security_credentials_role_name

string

Если с экземпляром связана роль IAM, role-name содержит имя роли, а также временные учетные данные безопасности, связанные с этой ролью. В противном случае отсутствует.

Возвращается: при успехе

Пример: ""

ansible_ec2_iam_security_credentials_role_name_accesskeyid

string

Идентификатор ключа доступа роли IAM.

Возвращается: успех

Пример: ""

ansible_ec2_iam_security_credentials_role_name_code

string

Код IAM.

Возвращается: успех

Пример: "Success"

ansible_ec2_iam_security_credentials_role_name_expiration

string

Время истечения срока действия учетных данных роли IAM.

Возвращается: успех

Пример: "2017-05-12T09:11:41Z"

ansible_ec2_iam_security_credentials_role_name_lastupdated

string

Время последнего обновления роли IAM.

Возвращается: успех

Пример: "2017-05-12T02:40:44Z"

ansible_ec2_iam_security_credentials_role_name_secretaccesskey

string

Секретный ключ доступа роли IAM.

Возвращается: успех

Пример: ""

ansible_ec2_iam_security_credentials_role_name_token

string

Токен роли IAM.

Возвращается: успех

Пример: ""

ansible_ec2_iam_security_credentials_role_name_type

string

Тип роли IAM.

Возвращается: успех

Пример: "AWS-HMAC"

ansible_ec2_instance_action

string

Уведомляет экземпляр о необходимости перезагрузиться перед созданием образа.

Возвращается: успех

Пример: "none"

ansible_ec2_instance_id

string

Идентификатор этого экземпляра.

Возвращается: успех

Пример: "i-XXXXXXXXXXXXXXXXX"

ansible_ec2_instance_identity_document

string

JSON с атрибутами экземпляра, такими как instance-id, частный IP-адрес и т. д.

Возвращается: успех

Пример: ""

ansible_ec2_instance_identity_document_accountid

string

Возвращается: при успехе

Пример: "123456789012"

ansible_ec2_instance_identity_document_architecture

string

Архитектура системы экземпляра.

Возвращается: при успехе

Пример: "x86_64"

ansible_ec2_instance_identity_document_availabilityzone

string

Зона доступности, в которой был запущен экземпляр.

Возвращается: при успехе

Пример: "us-east-1a"

ansible_ec2_instance_identity_document_billingproducts

string

Платёжные продукты для этого экземпляра.

Возвращается: при успехе

Пример: ""

ansible_ec2_instance_identity_document_devpayproductcodes

string

Коды продуктов для запущенного AMI.

Возвращается: при успехе

Пример: ""

ansible_ec2_instance_identity_document_imageid

string

Идентификатор AMI, использованного для запуска экземпляра.

Возвращается: при успехе

Пример: "ami-01234567"

ansible_ec2_instance_identity_document_instanceid

string

Идентификатор этого экземпляра.

Возвращается: при успехе

Пример: "i-0123456789abcdef0"

ansible_ec2_instance_identity_document_instancetype

string

Тип экземпляра.

Возвращается: при успехе

Пример: "m4.large"

ansible_ec2_instance_identity_document_kernelid

string

Идентификатор ядра, запущенного с этим экземпляром, если применимо.

Возвращается: при успехе

Пример: ""

ansible_ec2_instance_identity_document_pendingtime

string

Время ожидания экземпляра.

Возвращается: при успехе

Пример: "2017-05-11T20:51:20Z"

ansible_ec2_instance_identity_document_privateip

string

Частный IPv4-адрес экземпляра.

Если присутствует несколько сетевых интерфейсов, это адрес устройства eth0 (устройства с номером 0).

Возвращается: success

Пример: "10.0.0.1"

ansible_ec2_instance_identity_document_ramdiskid

string

Идентификатор RAM-диска, указанного при запуске, если применимо.

Возвращается: success

Пример: ""

ansible_ec2_instance_identity_document_region

string

Регион, в котором был запущен экземпляр.

Возвращается: success

Пример: "us-east-1"

ansible_ec2_instance_identity_document_version

string

Версия документа идентификации.

Возвращается: success

Пример: "2010-08-31"

ansible_ec2_instance_identity_pkcs7

string

Используется для проверки подлинности и содержимого документа по подписи.

Возвращается: success

Пример: ""

ansible_ec2_instance_identity_rsa2048

string

Используется для проверки подлинности и содержимого документа по подписи.

Возвращается: success

Пример: ""

ansible_ec2_instance_identity_signature

string

Данные, которые другие стороны могут использовать для проверки происхождения и подлинности документа.

Возвращается: success

Пример: ""

ansible_ec2_instance_life_cycle

string

Вариант приобретения экземпляра.

Возвращается: success

Пример: "on-demand"

ansible_ec2_instance_tags

dictionary

добавлено в amazon.aws 9.1.0

Словарь тегов экземпляра.

Возвращает пустой словарь, если доступ к тегам (InstanceMetadataTags) в метаданных экземпляра не включен.

Возвращается: success

Пример: {"tagKey1": "tag value 1", "tag_key2": "tag value 2"}

ansible_ec2_instance_tags_keys

list / elements=string

added in amazon.aws 5.5.0

Список ключей тегов экземпляра.

Возвращает пустой список, если доступ к тегам (InstanceMetadataTags) в метаданных экземпляра не включён.

Возвращается: при успешном выполнении

Пример: ["tagKey1", "tag_key2"]

ansible_ec2_instance_type

string

Тип экземпляра.

Возвращается: при успешном выполнении

Пример: "m4.large"

ansible_ec2_local_hostname

string

Частное DNS-имя узла экземпляра для IPv4.

Если присутствует несколько сетевых интерфейсов, это имя относится к устройству eth0 (устройству с номером 0).

Возвращается: при успешном выполнении

Пример: "ip-10-0-0-1.ec2.internal"

ansible_ec2_local_ipv4

string

Частный IPv4-адрес экземпляра.

Если присутствует несколько сетевых интерфейсов, этот адрес относится к устройству eth0 (устройству с номером 0).

Возвращается: при успешном выполнении

Пример: "10.0.0.1"

ansible_ec2_mac

string

MAC-адрес экземпляра.

Если присутствует несколько сетевых интерфейсов, этот адрес относится к устройству eth0 (устройству с номером 0).

Возвращается: при успешном выполнении

Пример: "00:11:22:33:44:55"

ansible_ec2_metrics_vhostmd

string

Метрики; больше недоступны.

Возвращается: при успешном выполнении

Пример: ""

ansible_ec2_network_interfaces_macs_mac_address_device_number

string

Уникальный номер устройства, связанного с этим интерфейсом. Номер устройства соответствует имени устройства; например, номер устройства 2 соответствует устройству eth2.

Эта категория соответствует полям DeviceIndex и device-index, используемым в API Amazon EC2 и командах EC2 для AWS CLI.

Возвращается: при успешном выполнении

Пример: "0"

ansible_ec2_network_interfaces_macs_mac_address_interface_id

string

Идентификатор эластичного сетевого интерфейса.

Возвращается: при успешном выполнении

Пример: "eni-12345678"

ansible_ec2_network_interfaces_macs_mac_address_ipv4_associations_ip_address

string

Частные IPv4-адреса, связанные с каждым публичным IP-адресом и назначенные этому интерфейсу.

Возвращается: при успешном выполнении

Пример: ""

ansible_ec2_network_interfaces_macs_mac_address_ipv6s

string

Адреса IPv6, связанные с интерфейсом. Возвращается только для экземпляров, запущенных в VPC.

Возвращается: при успехе

Пример: ""

ansible_ec2_network_interfaces_macs_mac_address_local_hostname

string

Локальное имя хоста интерфейса.

Возвращается: при успехе

Пример: ""

ansible_ec2_network_interfaces_macs_mac_address_local_ipv4s

string

Частные адреса IPv4, связанные с интерфейсом.

Возвращается: при успехе

Пример: ""

ansible_ec2_network_interfaces_macs_mac_address_mac

string

MAC-адрес экземпляра.

Возвращается: при успехе

Пример: "00:11:22:33:44:55"

ansible_ec2_network_interfaces_macs_mac_address_owner_id

string

Идентификатор владельца сетевого интерфейса.

В средах с несколькими интерфейсами интерфейс может быть подключен третьей стороной, например Elastic Load Balancing.

Плата за трафик через интерфейс всегда взимается с его владельца.

Возвращается: при успехе

Пример: "123456789012"

ansible_ec2_network_interfaces_macs_mac_address_public_hostname

string

Общедоступная DNS-запись (IPv4) интерфейса. Если экземпляр находится в VPC, эта категория возвращается только при условии, что атрибут enableDnsHostnames имеет значение true.

Возвращается: при успехе

Пример: "ec2-1-2-3-4.compute-1.amazonaws.com"

ansible_ec2_network_interfaces_macs_mac_address_public_ipv4s

string

Эластичные IP-адреса, связанные с интерфейсом. У экземпляра может быть несколько адресов IPv4.

Возвращается: при успехе

Пример: "1.2.3.4"

ansible_ec2_network_interfaces_macs_mac_address_security_group_ids

string

Идентификаторы групп безопасности, к которым относится сетевой интерфейс. Возвращается только для экземпляров, запущенных в VPC.

Возвращается: при успехе

Пример: "sg-01234567,sg-01234568"

ansible_ec2_network_interfaces_macs_mac_address_security_groups

string

Группы безопасности, к которым относится сетевой интерфейс. Возвращается только для экземпляров, запущенных в VPC.

Возвращается: при успехе

Пример: "secgroup1,secgroup2"

ansible_ec2_network_interfaces_macs_mac_address_subnet_id

string

Идентификатор подсети, в которой находится интерфейс. Возвращается только для экземпляров, запущенных в VPC.

Возвращается: успех

Пример: "subnet-01234567"

ansible_ec2_network_interfaces_macs_mac_address_subnet_ipv4_cidr_block

string

Блок IPv4 CIDR подсети, в которой находится интерфейс. Возвращается только для экземпляров, запущенных в VPC.

Возвращается: успех

Пример: "10.0.1.0/24"

ansible_ec2_network_interfaces_macs_mac_address_subnet_ipv6_cidr_blocks

string

Блок IPv6 CIDR подсети, в которой находится интерфейс. Возвращается только для экземпляров, запущенных в VPC.

Возвращается: успех

Пример: ""

ansible_ec2_network_interfaces_macs_mac_address_vpc_id

string

Идентификатор VPC, в которой находится интерфейс. Возвращается только для экземпляров, запущенных в VPC.

Возвращается: успех

Пример: "vpc-0123456"

ansible_ec2_network_interfaces_macs_mac_address_vpc_ipv4_cidr_block

string

Блок IPv4 CIDR VPC, в которой находится интерфейс. Возвращается только для экземпляров, запущенных в VPC.

Возвращается: успех

Пример: "10.0.0.0/16"

ansible_ec2_network_interfaces_macs_mac_address_vpc_ipv4_cidr_blocks

string

Блок IPv4 CIDR VPC, в которой находится интерфейс. Возвращается только для экземпляров, запущенных в VPC.

Возвращается: успех

Пример: "10.0.0.0/16"

ansible_ec2_network_interfaces_macs_mac_address_vpc_ipv6_cidr_blocks

string

Блок IPv6 CIDR VPC, в которой находится интерфейс. Возвращается только для экземпляров, запущенных в VPC.

Возвращается: успех

Пример: ""

ansible_ec2_placement_availability_zone

string

Зона доступности, в которой был запущен экземпляр.

Возвращается: успех

Пример: "us-east-1a"

ansible_ec2_placement_region

string

Регион, в котором был запущен экземпляр.

Возвращается: успех

Пример: "us-east-1"

ansible_ec2_product_codes

string

Коды продуктов, связанные с экземпляром, если таковые имеются.

Возвращается: при успешном выполнении

Пример: "aw0evgkw8e5c1q413zgy5pjce"

ansible_ec2_profile

string

Аппаратный профиль экземпляра EC2.

Возвращается: при успешном выполнении

Пример: "default-hvm"

ansible_ec2_public_hostname

string

Публичное DNS-имя экземпляра. Если экземпляр находится в VPC, эта категория возвращается только в том случае, если атрибут enableDnsHostnames установлен в значение true.

Возвращается: при успешном выполнении

Пример: "ec2-1-2-3-4.compute-1.amazonaws.com"

ansible_ec2_public_ipv4

string

Публичный IPv4-адрес. Если с экземпляром связан эластичный IP-адрес, возвращается его значение.

Возвращается: при успешном выполнении

Пример: "1.2.3.4"

ansible_ec2_public_key

string

Открытый ключ. Доступен только в том случае, если он был указан при запуске экземпляра.

Возвращается: при успешном выполнении

Пример: ""

ansible_ec2_ramdisk_id

string

Идентификатор RAM-диска, указанного при запуске, если применимо.

Возвращается: при успешном выполнении

Пример: ""

ansible_ec2_reservation_id

string

Идентификатор резервирования.

Возвращается: при успешном выполнении

Пример: "r-0123456789abcdef0"

ansible_ec2_security_groups

string

Названия групп безопасности, применённых к экземпляру. После запуска можно изменять группы безопасности только у экземпляров, работающих в VPC.

Такие изменения отражаются здесь и в network/interfaces/macs/mac/security-groups.

Возвращается: при успешном выполнении

Пример: "securitygroup1,securitygroup2"

ansible_ec2_services_domain

string

Домен ресурсов AWS для региона; например, amazonaws.com для us-east-1.

Возвращается: при успешном выполнении

Пример: "amazonaws.com"

ansible_ec2_services_partition

string

Раздел, в котором находится ресурс. Для стандартных регионов AWS разделом является aws.

Если у вас есть ресурсы в других разделах, раздел имеет формат aws-partitionname.

Например, раздел для ресурсов в регионе Китай (Пекин) — aws-cn.

Возвращается: при успешном выполнении

Пример: "aws"

ansible_ec2_spot_termination_time

string

Приблизительное время в формате UTC, когда операционная система вашего экземпляра Spot получит сигнал о завершении работы.

Этот элемент присутствует и содержит значение времени только в том случае, если Amazon EC2 пометил экземпляр Spot для завершения.

Элемент termination-time не получает значение времени, если вы завершили экземпляр Spot самостоятельно.

Возвращается: success

Пример: "2015-01-05T18:02:00Z"

ansible_ec2_user_data

string

Пользовательские данные экземпляра.

Возвращается: success

Пример: "#!/bin/bash"

Авторы

  • Silviu Dicu (@silviud)
  • Vinay Dandekar (@roadmapper)

Ссылки на коллекцию

  • Отслеживание проблем
  • Репозиторий (исходный код)
  • Связь

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/amazon/aws/ec2_metadata_facts_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API