Spec-Zone.ru › Ansible

community.aws.aws_mq inventory — источник инвентаризации брокеров MQ

Примечание

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

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

Чтобы установить её, используйте: ansible-galaxy collection install community.aws. Для использования этого плагина инвентаризации необходимы дополнительные требования; подробности см. в разделе Требования.

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

Добавлено в community.aws 6.1.0

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

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

  • Получение брокеров из Amazon Web Services MQ.
  • Использует файл конфигурации YAML с окончанием aws_mq.(yml|yaml).

Требования

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

  • python >= 3.6
  • boto3 >= 1.34.0
  • botocore >= 1.34.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

groups

словарь

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

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

hostvars_prefix

строка

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

hostvars_suffix

строка

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

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

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

Список регионов, в которых нужно получить сведения о брокерах MQ. Список доступных регионов приведён здесь: https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/

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

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'] как сокращённый способ найти все брокеры. Возможные значения перечислены здесь: https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/broker-statuses.html

По умолчанию: ["RUNNING", "CREATION_IN_PROGRESS"]

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 (расположенной ниже в списке).

Примечания

Примечание

  • На этом этапе инвентаризация ещё не завершена, поэтому автоматически заполненные группы all и ungrouped будут отражать только то, что в них явно добавили предыдущие источники инвентаризации.
  • «Магические» переменные времени выполнения недоступны во время построения инвентаризации. Например, groups и hostvars ещё не существуют.
  • Предупреждение: Для модулей переменные среды и файлы конфигурации считываются в контексте «узла» Ansible, а не в контексте «контроллера». Поэтому может потребоваться явно скопировать файлы на «узел». Для плагинов поиска и подключения переменные среды и файлы конфигурации считываются в контексте «контроллера» Ansible, а не в контексте «узла».
  • Используемый Ansible пакет AWS SDK (boto3) также может считывать значения по умолчанию для учётных данных и других параметров, например региона, из файлов конфигурации в контексте «узла» Ansible (обычно ~/.aws/credentials). Дополнительные сведения см. по адресу https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html.

Примеры

---
# Minimal example using AWS credentials from environment vars or instance role credentials
# Get all brokers in us-east-1 region
plugin: community.aws.aws_mq
regions:
  - ca-central-1

---

# Example multiple regions, ignoring permission errors, and only brokers with state RUNNING
plugin: community.aws.aws_mq
regions:
  - us-east-1
  - us-east-2
strict_permissions: false
statuses:
  - RUNNING

---

# Example group by engine, hostvars custom prefix-suffix, and compose variable from tags
plugin: community.aws.aws_mq
regions:
  - ca-central-1
keyed_groups:
  - key: engine_type
    prefix: mq
compose:
  app: 'tags.Applications|split(",")'
hostvars_prefix: aws_
hostvars_suffix: _mq

Авторы

  • Ali AlKhalidi (@doteast)

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

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

© 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/community/aws/aws_mq_inventory.html

Spec-Zone.ru

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