Spec-Zone.ru › Ansible

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

Примечание

Этот плагин инвентаризации входит в коллекцию community.aws (версия 8.0.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.26.0
  • botocore >= 1.29.0

Параметры

Параметр

Комментарии

access_key

aliases: aws_access_key_id, aws_access_key, ec2_access_key

string

Идентификатор ключа доступа 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 для согласованности с SDK AWS botocore.

Псевдоним ec2_access_key устарел и будет удален в версии после 2024-12-01.

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

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

    Удалено в: основной релиз после 2024-12-01 amazon.aws

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

    Альтернатива: AWS_ACCESS_KEY_ID

assume_role_arn

aliases: iam_role_arn

string

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

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

cache

boolean

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

Варианты:

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

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

  • Запись INI:

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

cache_connection

string

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

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

  • Записи INI:

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

cache_plugin

string

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

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

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

  • Записи INI:

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

cache_prefix

string

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

По умолчанию: "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

integer

Продолжительность кэша в секундах

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

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

  • Записи INI:

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

compose

dictionary

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

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

endpoint_url

aliases: aws_endpoint_url, endpoint

string

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

Псевдоним endpoint устарел и будет удален в версии после 2024-12-01.

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

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

    Удалено в: основной релиз после 2024-12-01 amazon.aws

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

    Альтернатива: AWS_URL

groups

dictionary

Добавить хосты в группу на основе условных выражений Jinja2.

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

hostvars_prefix

string

Префикс для имен переменных хоста, поступающих из AWS.

hostvars_suffix

string

Суффикс для имен переменных хоста, поступающих из AWS.

keyed_groups

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

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

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

default_value

строка

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

Значение по умолчанию, когда значение переменной хоста — пустая строка.

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

key

строка

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

parent_group

строка

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

prefix

строка

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

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

separator

строка

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

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

trailing_separator

логическое

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

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

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

Варианты:

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

leading_separator

логическое

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

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

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

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

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

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

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

Варианты:

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

profile

алиасы: aws_profile, boto_profile

строка

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

См. документацию AWS для получения дополнительной информации о профилях https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html.

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

Алиас boto_profile устарел и будет удалён в выпуске после 2024-12-01.

Настройка:

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

region

алиасы: aws_region, ec2_region

строка

Используемый регион AWS.

См. документацию Amazon AWS для получения дополнительной информации http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region.

Настройка:

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

    Удалено в: основной версии после 2024-12-01 от amazon.aws

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

    Альтернатива: AWS_REGION

regions

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

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

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

secret_key

алиасы: aws_secret_access_key, aws_secret_key, ec2_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 для согласованности с SDK AWS botocore.

Алиас ec2_secret_key устарел и будет удалён в выпуске после 2024-12-01.

Настройка:

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

    Удалено в: основной версии после 2024-12-01 от amazon.aws

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

    Альтернатива: AWS_SECRET_ACCESS_KEY

session_token

aliases: aws_session_token, security_token, aws_security_token, access_token

строка

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

См. документацию AWS для получения дополнительной информации об access токенах https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

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

Алиасы aws_session_token и session_token были добавлены в релизе 3.2.0, а параметр был переименован из security_token в session_token в релизе 6.0.0.

Алиасы security_token, aws_security_token и access_token устарели и будут удалены в релизе после 2024-12-01.

Настройка:

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

    Удалено в: основной релиз после 2024-12-01 amazon.aws

    Почему: AWS_SECURITY_TOKEN использовался для совместимости с исходным SDK boto, поддержка которого была прекращена.

    Альтернатива: AWS_SESSION_TOKEN

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

    Удалено в: основной релиз после 2024-12-01 amazon.aws

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

    Альтернатива: 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 «контроллер», а не «хост».
  • AWS SDK (boto3), используемый Ansible, также может читать значения по умолчанию для учетных данных и других параметров, таких как регион, из своих файлов конфигурации в контексте 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–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/aws/aws_mq_inventory.html

Spec-Zone.ru

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