Spec-Zone.ru › Ansible 2.10

community.general.ali_instance_info – Сбор информации о виртуальных машинах Alibaba Cloud ECS.

Примечание

Этот плагин входит в коллекцию community.general (версия 1.3.2).

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

Чтобы использовать его в playbook, укажите: community.general.ali_instance_info.

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Значения возврата

Обзор

  • Этот модуль извлекает данные из открытого API Alicloud. Модуль должен вызываться изнутри самой виртуальной машины ECS.
  • Этот модуль вызывался ali_instance_facts до Ansible 2.9. Использование не изменилось.

Требования

Ниже перечислены требования к хосту, на котором выполняется этот модуль.

  • footmark >= 1.13.0
  • python >= 3.6

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
alicloud_access_key
строка
Ключ доступа к Alibaba Cloud. Если не задан, используется значение переменной окружения ALICLOUD_ACCESS_KEY, ALICLOUD_ACCESS_KEY_ID.

псевдонимы: access_key_id, access_key
alicloud_assume_role
словарь
Если указан ARN роли, Ansible попытается принять эту роль, используя предоставленные учетные данные.
Вложенный блок assume_role поддерживает alicloud_assume_role_arn, alicloud_assume_role_session_name, alicloud_assume_role_session_expiration и alicloud_assume_role_policy

псевдонимы: assume_role
alicloud_assume_role_arn
строка
ARN роли Alibaba Cloud. ARN роли, которую необходимо принять. Если ARN установлено в пустую строку, переключение ролей не выполняется. Поддерживает переменную окружения ALICLOUD_ASSUME_ROLE_ARN. ansible будет выполняться с предоставленными учетными данными.

псевдонимы: assume_role_arn
alicloud_assume_role_session_expiration
целое число
Срок действия сеанса Alibaba Cloud. Время, по истечении которого установленный сеанс для принятия роли истекает. Допустимый диапазон значений 900–3600 секунд. По умолчанию 3600 (в этом случае Alicloud использует собственное значение по умолчанию). Поддерживает переменную окружения ALICLOUD_ASSUME_ROLE_SESSION_EXPIRATION

псевдонимы: assume_role_session_expiration
alicloud_assume_role_session_name
строка
Имя сеанса Alibaba Cloud. Имя сеанса, которое следует использовать при принятии роли. Если опущено, в вызов AssumeRole передается «ansible» в качестве имени сеанса. Поддерживает переменную окружения ALICLOUD_ASSUME_ROLE_SESSION_NAME

псевдонимы: assume_role_session_name
alicloud_region
строка / обязательно
Регион Alibaba Cloud для использования. Если не указан, используется значение переменной окружения ALICLOUD_REGION, ALICLOUD_REGION_ID.

псевдонимы: region, region_id
alicloud_secret_key
строка
Секретный ключ Alibaba Cloud. Если не задан, используется значение переменной окружения ALICLOUD_SECRET_KEY, ALICLOUD_SECRET_ACCESS_KEY.

псевдонимы: secret_access_key, secret_key
alicloud_security_token
строка
Токен безопасности Alibaba Cloud. Если не указан, используется значение переменной окружения ALICLOUD_SECURITY_TOKEN.

псевдонимы: security_token
availability_zone
строка
(Устарело) Идентификатор зоны доступности Aliyun, в которой необходимо запустить экземпляр. Используйте вместо этого элемент фильтра «zone_id».

псевдонимы: alicloud_zone
ecs_role_name
строка
Имя роли RAM, прикрепленное к экземпляру ECS для операций с API. Вы можете получить его в разделе «Управление доступом» консоли Alibaba Cloud.
Если Ansible выполняется с экземпляра ECS с использованием роли RAM Instance, Ansible будет обращаться к метаданным http://100.100.100.200/latest/meta-data/ram/security-credentials/<ecs_role_name> для получения учетных данных STS. Это предпочтительный подход при выполнении на ECS, так как вы можете избежать жесткого кодирования учетных данных. Вместо этого они предоставляются Ansible по мере необходимости, что уменьшает вероятность утечки.

псевдонимы: role_name
filters
словарь
добавлен в версии 0.2.0 community.general
Словарь фильтров для применения. Каждый элемент словаря содержит ключ фильтра и значение фильтра. Ключи фильтров могут соответствовать всем параметрам запроса. Подробности параметров см. на https://www.alibabacloud.com/help/doc-detail/25506.htm. Ключи фильтров могут быть такими же, как имя параметра запроса, или иметь нижний регистр и использовать подчеркивание («_») или дефис («-») для соединения различных слов в одном параметре. «InstanceIds» должно быть списком, и он автоматически добавляется к instance_ids. «Tag.n.Key» и «Tag.n.Value» должны быть словарем, и вместо них используется tags.
instance_ids
список / элементы=строка
Список идентификаторов экземпляров ECS.

псевдонимы: ids
instance_names
список / элементы=строка
(Устарело) Список имен экземпляров ECS. Используйте вместо этого элемент фильтра 'instance_name'.

псевдонимы: names
name_prefix
строка
добавлен в версии 0.2.0 community.general
Используйте префикс имени экземпляра для фильтрации экземпляров ECS.
profile
строка
Имя профиля Alicloud, заданное в файле общих учетных данных. Он также может быть получен из переменной окружения ALICLOUD_PROFILE.
shared_credentials_file
строка
Путь к файлу общих учетных данных. Он также может быть получен из переменной окружения ALICLOUD_SHARED_CREDENTIALS_FILE.
Если это не задано, а профиль указан, будет использоваться ~/.aliyun/config.json.
tags
словарь
Хеш/словари меток экземпляра. {"key":"value"}

псевдонимы: instance_tags

Примечания

Примечание

  • Если параметры не заданы в модуле, можно использовать следующие переменные окружения в порядке убывания приоритета ALICLOUD_ACCESS_KEY или ALICLOUD_ACCESS_KEY_ID, ALICLOUD_SECRET_KEY или ALICLOUD_SECRET_ACCESS_KEY, ALICLOUD_REGION или ALICLOUD_REGION_ID, ALICLOUD_SECURITY_TOKEN, ALICLOUD_ECS_ROLE_NAME, ALICLOUD_SHARED_CREDENTIALS_FILE, ALICLOUD_PROFILE, ALICLOUD_ASSUME_ROLE_ARN, ALICLOUD_ASSUME_ROLE_SESSION_NAME, ALICLOUD_ASSUME_ROLE_SESSION_EXPIRATION,
  • ALICLOUD_REGION или ALICLOUD_REGION_ID обычно можно использовать для указания региона ALICLOUD, когда это необходимо, но это также можно настроить в файле конфигурации footmark

Примеры

# Fetch instances details according to setting different filters

- name: Find all instances in the specified region
  community.general.ali_instance_info:
  register: all_instances

- name: Find all instances based on the specified ids
  community.general.ali_instance_info:
    instance_ids:
      - "i-35b333d9"
      - "i-ddav43kd"
  register: instances_by_ids

- name: Find all instances based on the specified name_prefix
  community.general.ali_instance_info:
    name_prefix: "ecs_instance_"
  register: instances_by_name_prefix

- name: Find instances based on tags
  community.general.ali_instance_info:
    tags:
      Test: "add"

Значения возврата

Общие значения возврата документированы здесь, следующие поля уникальны для этого модуля:

Ключ Возвращаемое значение Описание
ids
список / элементы=строка
всегда
Список идентификаторов экземпляров ECS

Пример:
['i-12345er', 'i-3245fs']
instances
сложный тип
всегда
Список экземпляров ECS

availability_zone
строка
всегда
Зона доступности, в которой находится экземпляр.

Пример:
cn-beijing-a
block_device_mappings
сложный тип
всегда
Любые записи отображения блочных устройств для экземпляра.

attach_time
строка
всегда
Отметка времени, когда началось подключение.

Пример:
2018-06-25T04:08:26Z
delete_on_termination
булево
всегда
Указывает, будет ли том удален при завершении работы экземпляра.

Пример:
True
device_name
строка
всегда
Имя устройства, доступное для экземпляра (например, /dev/xvda).

Пример:
/dev/xvda
status
строка
всегда
Состояние подключения.

Пример:
in_use
volume_id
строка
всегда
Идентификатор облачного диска.

Пример:
d-2zei53pjsi117y6gf9t6
cpu
целое число
всегда
Количество ядер процессора экземпляра.

Пример:
4
creation_time
строка
всегда
Время создания экземпляра.

Пример:
2018-06-25T04:08Z
description
строка
всегда
Описание экземпляра.

Пример:
my ansible instance
eip
сложный тип
всегда
Атрибуты EIP, связанных с экземпляром.

allocation_id
строка
всегда
Идентификатор EIP.

Пример:
eip-12345
internet_charge_type
строка
всегда
Тип оплаты интернета EIP.

Пример:
paybybandwidth
ip_address
строка
всегда
Адрес EIP.

Пример:
42.10.2.2
expired_time
строка
всегда
Время истечения срока действия экземпляра.

Пример:
2099-12-31T15:59Z
gpu
сложный тип
всегда
Атрибуты GPU экземпляра.

amount
целое число
всегда
Количество GPU.

spec
строка
всегда
Спецификация GPU.

host_name
строка
всегда
Имя хоста экземпляра.

Пример:
iZ2zewaoZ
id
строка
всегда
Псевдоним instance_id.

Пример:
i-abc12345
image_id
строка
всегда
Идентификатор образа, используемого для запуска экземпляра.

Пример:
m-0011223344
inner_ip_address
строка
всегда
Внутренний IPv4-адрес классического экземпляра.

Пример:
10.0.0.2
instance_charge_type
строка
всегда
Тип оплаты экземпляра.

Пример:
PostPaid
instance_id
строка
всегда
Идентификатор ресурса экземпляра ECS.

Пример:
i-abc12345
instance_name
строка
всегда
Имя экземпляра.

Пример:
my-ecs
instance_type
строка
всегда
Тип экземпляра.

Пример:
ecs.sn1ne.xlarge
instance_type_family
строка
всегда
Семейство типов экземпляров, к которому относится экземпляр.

Пример:
ecs.sn1ne
internet_charge_type
строка
всегда
Способ оплаты сетевой пропускной способности.

Пример:
PayByBandwidth
internet_max_bandwidth_in
целое число
всегда
Максимальная входящая пропускная способность из интернета.

Пример:
200
internet_max_bandwidth_out
целое число
всегда
Максимальная исходящая пропускная способность в интернет.

Пример:
20
io_optimized
булево
всегда
Указывает, оптимизирован ли экземпляр для ввода-вывода EBS.

memory
целое число
всегда
Объем памяти экземпляра.

Пример:
8192
network_interfaces
сложный тип
всегда
Один или несколько сетевых интерфейсов для экземпляра.

mac_address
строка
всегда
MAC-адрес.

Пример:
00:11:22:33:44:55
network_interface_id
строка
всегда
Идентификатор сетевого интерфейса.

Пример:
eni-01234567
primary_ip_address
строка
всегда
Основной IPv4-адрес сетевого интерфейса внутри vswitch.

Пример:
10.0.0.1
osname
строка
всегда
Имя операционной системы экземпляра.

Пример:
CentOS
ostype
строка
всегда
Тип операционной системы экземпляра.

Пример:
linux
private_ip_address
строка
всегда
IPv4-адрес сетевого интерфейса внутри подсети.

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

Пример:
43.0.0.1
resource_group_id
строка
всегда
Идентификатор группы ресурсов, к которой принадлежит экземпляр.

Пример:
my-ecs-group
security_groups
список / элементы=словарь
всегда
Один или несколько наборов правил безопасности для экземпляра.

group_id
строка
всегда
Идентификатор набора правил безопасности.

Пример:
sg-0123456
group_name
string
always
Имя группы безопасности.

Пример:
my-security-group
status
string
always
Текущий статус экземпляра.

Пример:
running
tags
dictionary
always
Любые теги, назначенные экземпляру.

vpc_id
string
always
ID VPC, в котором находится экземпляр.

Пример:
vpc-0011223344
vswitch_id
string
always
ID vswitch, в котором запущен экземпляр.

Пример:
vsw-dew00abcdef


Авторы

  • He Guimin (@xiaozhu36)

© 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/community/general/ali_instance_info_module.html

Spec-Zone.ru

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