Spec-Zone.ru › Ansible

cisco.meraki.meraki inventory — плагин динамической инвентаризации Ansible для устройств Cisco Meraki.

Примечание

Этот плагин инвентаризации входит в коллекцию cisco.meraki (версия 2.23.2).

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

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

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

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

Обзор

  • Создаёт инвентаризацию с помощью API Cisco Meraki.
  • Использует файл конфигурации YAML cisco_meraki.[yml|yaml].

Требования

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

  • meraki

Параметры

Параметр

Комментарии

compose

словарь

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

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

groups

словарь

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

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

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 ← (по умолчанию)

meraki_action_batch_retry_wait_time

целое число

meraki_action_batch_retry_wait_time (целое число), время ожидания перед повтором при ошибке параллельного выполнения пакета действий

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

meraki_api_key

строка

meraki_api_key (строка), ключ API, созданный на панели управления; его также можно задать с помощью переменной среды MERAKI_DASHBOARD_API_KEY

meraki_base_url

строка

meraki_base_url (строка), базовый URL для всех ресурсов конечных точек

По умолчанию: "https://api.meraki.com/api/v1"

meraki_be_geo_id

строка

meraki_be_geo_id (строка), необязательный идентификатор партнёра для отслеживания использования API; его также можно задать с помощью переменной среды BE_GEO_ID

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

meraki_certificate_path

строка

meraki_certificate_path (строка), путь к сертификату для проверки TLS/SSL при работе за локальным прокси-сервером

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

meraki_inherit_logging_config

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

meraki_inherit_logging_config (логическое значение), наследует ваш экземпляр регистратора

Варианты:

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

meraki_log_file_prefix

строка

meraki_log_file_prefix (строка), имя файла журнала с добавленными датой и временем

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

meraki_log_path

строка

log_path (строка), путь для вывода журнала; если не задан, по умолчанию используется рабочий каталог скрипта

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

meraki_maximum_retries

целое число

meraki_maximum_retries (целое число), максимальное количество повторных попыток при получении ошибки 429 или других ошибок на стороне сервера

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

meraki_nginx_429_retry_wait_time

целое число

meraki_nginx_429_retry_wait_time (целое число), время ожидания перед повтором при ошибке Nginx 429

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

meraki_org_id

строка / обязательный параметр

Идентификатор организации, из которой необходимо получить сети и устройства.

meraki_output_log

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

meraki_output_log (логическое значение), создавать ли файл журнала вывода?

Варианты:

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

meraki_print_console

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

meraki_print_console (логическое значение), выводить ли журнал в консоль?

Варианты:

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

meraki_requests_proxy

строка

meraki_requests_proxy (строка), прокси-сервер и порт для HTTPS, если они необходимы

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

meraki_retry_4xx_error

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

meraki_retry_4xx_error (логическое значение), повторять ли попытку при получении другой ошибки 4XX (кроме 429)?

Варианты:

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

meraki_retry_4xx_error_wait_time

целое число

meraki_retry_4xx_error_wait_time (целое число), время ожидания перед повтором при другой ошибке 4XX

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

meraki_simulate

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

meraki_simulate (логическое значение), имитировать ли вызовы POST/PUT/DELETE, чтобы предотвратить изменения?

Варианты:

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

meraki_single_request_timeout

целое число

meraki_single_request_timeout (целое число), максимальное время в секундах для каждого вызова API

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

meraki_suppress_logging

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

meraki_suppress_logging (логическое значение), отключить ли ведение журнала? Тогда вы действуете на свой страх и риск!

Варианты:

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

meraki_use_iterator_for_get_pages

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

meraki_use_iterator_for_get_pages (логическое значение), методы list* будут возвращать итератор с каждым объектом вместо полного списка всех элементов

Варианты:

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

meraki_wait_on_rate_limit

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

meraki_wait_on_rate_limit (логическое значение), повторять ли попытку при ошибке ограничения частоты запросов 429?

Варианты:

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

strict

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

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

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

Варианты:

  • 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 ещё не существуют.

Примеры

# cisco_meraki.yml
---
plugin: cisco.meraki.meraki
meraki_api_key: "<enter Meraki API key or set the MERAKI_DASHBOARD_API_KEY env var>"
meraki_org_id: "<enter Meraki Org ID>"
keyed_groups:
  # group devices based on network ID
  - prefix: meraki_network_id
    key: network_id
  # group devices based on network name
  - prefix: meraki_network
    key: network
  # group devices based on device type
  - prefix: meraki_device_type
    key: device_type
  # group devices based on meraki device tag
  - prefix: meraki_tag
    key: tags

Авторы

  • Nilashish Chakraborty (@NilashishC)

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

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

© 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/cisco/meraki/meraki_inventory.html

Spec-Zone.ru

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