Spec-Zone.ru › Ansible

amazon.aws.aws_rds inventory — источник инвентаризации экземпляров RDS

Примечание

Этот плагин инвентаризации входит в коллекцию amazon.aws (версия 11.3.0).

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

Для установки используйте: ansible-galaxy collection install amazon.aws. Для работы с этим плагином инвентаризации требуются дополнительные компоненты. Подробности см. в разделе Требования.

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

  • Краткое описание
  • Требования
  • Параметры
  • Примечания
  • Примеры

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

  • Получает экземпляры и кластеры из Amazon Web Services RDS.
  • Использует файл конфигурации YAML с именем, оканчивающимся на aws_rds.(yml|yaml).

Требования

Следующие требования должны быть выполнены на локальном управляющем узле, запускающем эту инвентаризацию.

  • python >= 3.6
  • boto3 >= 1.35.0
  • botocore >= 1.35.0

Параметры

Параметр

Комментарии

access_key

псевдонимы: aws_access_key_id, aws_access_key

строка

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

Дополнительные сведения о токенах доступа см. в документации AWS: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Параметры aws_access_key и profile являются взаимоисключающими.

Псевдоним aws_access_key_id добавлен в выпуске 5.1.0 для согласованности с AWS botocore SDK.

Конфигурация:

  • Переменная среды: AWS_ACCESS_KEY_ID
  • Переменная среды: AWS_ACCESS_KEY

assume_role_arn

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

строка

ARN роли IAM, которую следует принять для выполнения поиска.

При этом необходимо по-прежнему предоставить учетные данные AWS с достаточными привилегиями для выполнения действия AssumeRole.

cache

логическое значение

Включает или отключает кэширование исходных данных инвентаризации. Для работы требуется настроить плагин кэширования.

Варианты:

  • false ← (по умолчанию)
  • true

Конфигурация:

  • Запись INI:

    [inventory]
    cache = false
    
  • Переменная среды: ANSIBLE_INVENTORY_CACHE

cache_connection

строка

Данные подключения к кэшу или путь к нему. Подробнее см. в документации плагина кэширования.

Конфигурация:

  • Записи INI:

    [defaults]
    fact_caching_connection = VALUE
    
    [inventory]
    cache_connection = VALUE
    
  • Переменная среды: ANSIBLE_CACHE_PLUGIN_CONNECTION
  • Переменная среды: ANSIBLE_INVENTORY_CACHE_CONNECTION

cache_plugin

строка

Плагин кэширования, используемый для исходных данных инвентаризации.

По умолчанию: "memory"

Конфигурация:

  • Записи INI:

    [defaults]
    fact_caching = memory
    
    [inventory]
    cache_plugin = memory
    
  • Переменная среды: ANSIBLE_CACHE_PLUGIN
  • Переменная среды: ANSIBLE_INVENTORY_CACHE_PLUGIN

cache_prefix

строка

Префикс для файлов/таблиц плагина кэширования.

По умолчанию: "ansible_inventory_"

Конфигурация:

  • Записи INI:

    [defaults]
    fact_caching_prefix = ansible_inventory_
    
    [inventory]
    cache_prefix = ansible_inventory_
    
  • Переменная среды: ANSIBLE_CACHE_PLUGIN_PREFIX
  • Переменная среды: ANSIBLE_INVENTORY_CACHE_PLUGIN_PREFIX

cache_timeout

целое число

Длительность кэширования в секундах.

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

Конфигурация:

  • Записи INI:

    [defaults]
    fact_caching_timeout = 3600
    
    [inventory]
    cache_timeout = 3600
    
  • Переменная среды: ANSIBLE_CACHE_PLUGIN_TIMEOUT
  • Переменная среды: ANSIBLE_INVENTORY_CACHE_TIMEOUT

compose

словарь

Создает переменные из выражений Jinja2.

По умолчанию: {}

endpoint_url

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

строка

URL для подключения вместо конечных точек AWS по умолчанию. Хотя этот параметр можно использовать для подключения к другим совместимым с AWS службам, коллекции amazon.aws и community.aws тестируются только с AWS.

Конфигурация:

  • Переменная среды: AWS_URL

filters

строка

Словарь пар «фильтр — значение». Доступные фильтры перечислены здесь: https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html#options. Если применить фильтр db-cluster-id и include_clusters равно True, он также будет применен к кластерам.

По умолчанию: {}

groups

словарь

Добавляет узлы в группы на основе условий Jinja2.

По умолчанию: {}

hostvars_prefix

строка

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

Префикс имен переменных узлов, полученных из AWS.

hostvars_suffix

строка

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

Суффикс имен переменных узлов, полученных из AWS.

include_clusters

логическое значение

Определяет, следует ли запрашивать кластеры Aurora наряду с экземплярами.

Варианты:

  • false ← (по умолчанию)
  • true

keyed_groups

список / элементы=словарь

Добавляет узлы в группу на основе значений переменной.

По умолчанию: []

default_value

строка

добавлено в ansible-core 2.12

Значение по умолчанию, если значение переменной узла равно None или является пустой строкой.

Этот параметр взаимоисключающий с keyed_groups[].trailing_separator.

key

строка

Ключ входного словаря, используемый для создания групп.

parent_group

строка

Родительская группа для группы с ключом.

prefix

строка

Имя группы с ключом будет начинаться с этого префикса.

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

separator

строка

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

По умолчанию: "_"

trailing_separator

логическое значение

добавлено в ansible-core 2.12

Установите для этого параметра значение false, чтобы опустить keyed_groups[].separator после переменной узла, если ее значение равно None или является пустой строкой.

Этот параметр взаимоисключающий с keyed_groups[].default_value.

Варианты:

  • false
  • true ← (по умолчанию)

leading_separator

логическое значение

добавлено в ansible-core 2.11

Используется вместе с keyed_groups.

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

Это связано с тем, что префикс по умолчанию — "", а разделитель по умолчанию — "_".

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

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

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

Варианты:

  • false
  • true ← (по умолчанию)

profile

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

строка

Именованный профиль AWS для аутентификации.

Дополнительные сведения об именованных профилях см. в документации AWS: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html.

Параметр profile является взаимоисключающим с параметрами aws_access_key, aws_secret_key и session_token.

Конфигурация:

  • Переменная среды: AWS_PROFILE
  • Переменная среды: AWS_DEFAULT_PROFILE

region

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

строка

Регион AWS для использования.

Дополнительные сведения см. в документации Amazon AWS: http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region.

Конфигурация:

  • Переменная среды: AWS_REGION

regions

строка

Список регионов, в которых нужно описать экземпляры и кластеры RDS. Доступные регионы перечислены здесь: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html.

По умолчанию: []

secret_key

псевдонимы: aws_secret_access_key, aws_secret_key

строка

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

Дополнительные сведения о токенах доступа см. в документации AWS: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Параметры secret_key и profile являются взаимоисключающими.

Псевдоним aws_secret_access_key добавлен в выпуске 5.1.0 для согласованности с AWS botocore SDK.

Конфигурация:

  • Переменная среды: AWS_SECRET_ACCESS_KEY
  • Переменная среды: AWS_SECRET_KEY

session_token

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

строка

Токен сеанса AWS STS для использования с временными учетными данными.

Дополнительные сведения о токенах доступа см. в документации AWS: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Параметры session_token и profile являются взаимоисключающими.

Конфигурация:

  • Переменная среды: AWS_SESSION_TOKEN

statuses

список / элементы=строка

Список требуемых состояний экземпляров/кластеров, которые будут добавлены в инвентаризацию. Укажите [‘all’], чтобы найти все объекты.

По умолчанию: ["creating", "available"]

strict

логическое значение

Если yes, недопустимые записи приводят к критической ошибке; в противном случае они пропускаются, а выполнение продолжается.

Поскольку в выражениях можно использовать факты, они могут быть доступны не всегда; по умолчанию такие ошибки игнорируются.

Варианты:

  • false ← (по умолчанию)
  • true

strict_permissions

логическое значение

По умолчанию при возникновении исключения AccessDenied этот плагин завершает работу с ошибкой. Можно задать для strict_permissions значение False в файле конфигурации инвентаризации, чтобы ограничения корректно пропускались.

Варианты:

  • false
  • true ← (по умолчанию)

use_extra_vars

логическое значение

добавлено в ansible-core 2.11

Объединяет дополнительные переменные с доступными переменными для формирования (наивысший приоритет).

Варианты:

  • false ← (по умолчанию)
  • true

Конфигурация:

  • Запись INI:

    [inventory_plugins]
    use_extra_vars = false
    
  • Переменная среды: ANSIBLE_INVENTORY_USE_EXTRA_VARS

Примечание

Перечисленные выше для каждого типа записей конфигурации (переменная Ansible, переменная среды и т. д.) имеют приоритет от низкого к высокому. Например, переменная, расположенная ниже в списке, переопределяет переменную, расположенную выше. Типы записей также упорядочены по приоритету от низкого к высокому. Например, запись ansible.cfg (расположенная выше в списке) переопределяется переменной Ansible (расположенной ниже в списке).

Примечания

Примечание

  • В версиях Ansible до 2.10 следует использовать полное имя плагина ‘amazon.aws.aws_rds’.
  • Переменная узла tags устарела и будет удалена в выпуске после 2026-12-01. Используйте вместо нее rds_tags, чтобы избежать конфликтов с зарезервированными именами переменных Ansible.
  • Переменная узла rds_tags добавлена в версии 11.2.0.
  • На этом этапе инвентаризация еще не окончательно сформирована, поэтому автоматически заполненные группы all и ungrouped будут содержать только данные, которые предыдущие источники инвентаризации явно добавили в эти группы.
  • Среда выполнения «магические переменные» недоступна во время построения инвентаризации. Например, groups и hostvars еще не существуют.
  • Внимание: Для модулей переменные среды и файлы конфигурации считываются из контекста «узла» Ansible, а не из контекста «контроллера». Поэтому может потребоваться явно скопировать файлы на «узел». Для плагинов поиска и подключения переменные среды и файлы конфигурации считываются из контекста «контроллера» Ansible, а не из контекста «узла».
  • Используемый Ansible пакет AWS SDK (boto3) также может считывать значения учетных данных и другие параметры по умолчанию, например регион, из файлов конфигурации в контексте «узла» Ansible (обычно ~/.aws/credentials). Дополнительные сведения см. на странице https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html.

Примеры

plugin: aws_rds
regions:
  - us-east-1
  - ca-central-1
keyed_groups:
  - key: 'db_parameter_groups|json_query("[].db_parameter_group_name")'
    prefix: rds_parameter_group
  - key: engine
    prefix: rds
  - key: rds_tags
  - key: region
hostvars_prefix: aws_
hostvars_suffix: _rds

Авторы

  • Sloane Hertel (@s-hertel)

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

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

© 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/aws_rds_inventory.html

Spec-Zone.ru

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