cisco.dnac.discovery_intent модуль — модуль ресурсов для обработки задач обнаружения устройств.
Примечание
Этот модуль является частью коллекции cisco.dnac (версия 6.20.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install cisco.dnac. Для использования этого модуля потребуются дополнительные требования. Подробности см. в разделе Требования.
Чтобы использовать его в плейбуке, укажите: cisco.dnac.discovery_intent.
Новое в cisco.dnac 6.6.0
Обзор
- Управляет обнаружением устройств с помощью IP-адресов, диапазонов адресов, CDP и LLDP, включая удаление обнаруженных устройств.
- API для обнаружения одного устройства или нескольких устройств
- API для удаления обнаружения одного устройства или нескольких устройств
Требования
Ниже перечислены требования, которые должны быть выполнены на хосте, выполняющем этот модуль.
- dnacentersdk == 2.6.10
- python >= 3.9
Параметры
Параметр | Комментарии |
|---|---|
config list / elements=dictionary / required | Список подробностей управляемого устройства. |
|
cdp_level integer |
Общее количество уровней в методе обнаружения CDP Default: |
|
delete_all boolean |
Параметр для удаления всех обнаружений за один раз Choices:
|
|
discovery_name string / required |
Имя задачи обнаружения |
|
discovery_specific_credentials dictionary |
Учетные данные, специально созданные пользователем для выполнения обнаружения устройств. |
|
cli_credentials_list list / elements=dictionary |
Список учетных данных CLI, которые будут использоваться во время обнаружения устройств. |
|
enable_password string |
Пароль enable для аутентификации CLI, обязателен при использовании учетных данных CLI. |
|
password string |
Пароль для аутентификации CLI, обязателен при использовании учетных данных CLI. |
|
username string |
Имя пользователя для аутентификации CLI, обязательно при использовании учетных данных CLI. |
|
http_read_credential dictionary |
Учетные данные для чтения HTTP используются для целей аутентификации и специально используются для предоставления права только на чтение определенных ресурсов с устройства. |
|
password string |
Пароль для аутентификации чтения HTTP(S), обязателен при использовании учетных данных HTTP. |
|
port integer |
Порт для аутентификации чтения HTTP(S), обязателен для использования учетных данных HTTP. |
|
secure boolean |
Флаг для аутентификации чтения HTTP(S), не обязателен при использовании учетных данных HTTP. Choices:
|
|
username string |
Имя пользователя для аутентификации чтения HTTP(S), обязательно при использовании учетных данных HTTP. |
|
http_write_credential dictionary |
Учетные данные для записи HTTP используются для целей аутентификации и предоставляют Cisco Catalyst Center возможность изменять конфигурации, обновлять программное обеспечение или выполнять другие изменения на сетевом устройстве. |
|
password string |
Пароль для аутентификации записи HTTP(S), обязателен при использовании учетных данных HTTP. |
|
port integer |
Порт для аутентификации записи HTTP(S), обязателен при использовании учетных данных HTTP. |
|
secure boolean |
Флаг для аутентификации записи HTTP(S), не обязателен при использовании учетных данных HTTP. Choices:
|
|
username string |
Имя пользователя для аутентификации записи HTTP(S), обязательно при использовании учетных данных HTTP. |
|
net_conf_port string |
Используется, когда сеть содержит беспроводные контроллеры на базе IOS XE. Это используется для обнаружения и включения беспроводных служб на контроллерах. Для работы требуются действительные учетные данные SSH. Избегайте стандартных портов, таких как 22, 80 и 8080. |
|
snmp_v2_read_credential dictionary |
Учетные данные SNMP v2, которые необходимо создать и использовать для связи с устройством по протоколу SNMP в режиме чтения. SNMP v2 также обеспечивает шифрование данных, но использует типы данных. |
|
community string |
Строка сообщества SNMP V2 позволяет Cisco Catalyst Center извлекать только для чтения данные с устройства. |
|
description string |
Имя/описание учетных данных чтения SNMP, которые будут использованы для создания snmp_v2_read_credential. |
|
snmp_v2_write_credential dictionary |
Учетные данные SNMP v2, которые будут созданы и использованы для связи с устройством через протокол SNMP в режимах чтения и записи. SNMP v2 также обеспечивает шифрование данных, но использует типы данных. |
|
community string |
Строка сообщества SNMP V2 записи используется для извлечения данных и изменения конфигурации устройства. |
|
description string |
Имя/описание учетных данных записи SNMP, которые будут использованы для создания snmp_v2_write_credential. |
|
snmp_v3_credential dictionary |
Учетные данные SNMP v3, которые будут созданы и использованы для связи с устройством через протокол SNMP в режимах чтения и записи. SNMPv3 — самая безопасная версия SNMP, позволяющая полностью шифровать передачи, защищая нас от внешних злоумышленников. |
|
auth_password string |
Пароль аутентификации протокола SNMP v3 для использования. Длина должна быть больше 7 символов. Не требуется для режима snmp_mode NOAUTHNOPRIV. |
|
auth_type string |
Тип аутентификации протокола SNMP v3 для использования. SHA использует алгоритм безопасного хеширования (SHA) в качестве протокола аутентификации. MD5 использует алгоритм Message Digest 5 (MD5) в качестве протокола аутентификации и не рекомендуется. Не требуется для режима snmp_mode NOAUTHNOPRIV. Варианты:
|
|
privacy_password string |
Пароль конфиденциальности протокола SNMP v3 для использования в режиме AUTHPRIV SNMP Не требуется для режимов AUTHNOPRIV и NOAUTHNOPRIV snmp_mode. |
|
privacy_type string |
Тип/протокол конфиденциальности протокола SNMP v3 для использования в режиме AUTHPRIV SNMP Не требуется для режимов AUTHNOPRIV и NOAUTHNOPRIV snmp_mode. Варианты:
|
|
snmp_mode string |
Режим SNMP, который определяет уровень шифрования нашей строки сообщества. Режим AUTHPRIV использует как аутентификацию, так и шифрование. Режим AUTHNOPRIV использует аутентификацию, но без шифрования. Режим NOAUTHNOPRIV не использует ни аутентификацию, ни шифрование. Варианты:
|
|
username string |
Имя пользователя протокола SNMP v3 для использования. |
|
discovery_type string / обязательно |
Определяет метод обнаружения устройств. Доступные варианты: - SINGLE обнаруживает одно устройство с помощью одного IP-адреса. - RANGE обнаруживает несколько устройств в диапазоне IP-адресов. - MULTI RANGE обнаруживает устройства в нескольких диапазонах IP-адресов. - CDP использует протокол Cisco Discovery Protocol для обнаружения устройств на последующих уровнях заданного IP-адреса. - LLDP использует протокол Link Layer Discovery Protocol для обнаружения устройств на последующих уровнях указанного IP-адреса. - CIDR обнаруживает устройства на основе фильтрации подсетей с использованием маршрутизации без класса. Варианты:
|
|
global_credentials dictionary добавлен в cisco.dnac 6.12.0 |
Набор различных типов учетных данных, включая CLI, SNMP, HTTP и NETCONF, которые пользователь предварительно настроен в разделе «Учетные данные устройства» Cisco Catalyst Center. Если пользователь не передает никакие глобальные учетные данные в книге задач, по умолчанию мы будем использовать все глобальные учетные данные, присутствующие в Cisco Catalyst Center каждого типа для выполнения обнаружения. (Допустимо максимум 5). |
|
cli_credentials_list list / элементы=словарь |
Принимает список глобальных учетных данных CLI для использования в обнаружении устройств. Рекомендуется создавать учетные данные устройства с уникальным именем пользователя и четким описанием. |
|
description string |
Имя учетных данных CLI, обязательно при использовании глобальных учетных данных CLI. |
|
username string |
Имя пользователя, необходимое для аутентификации CLI, и обязательно при использовании глобальных учетных данных CLI. |
|
http_read_credential_list list / elements=dictionary |
Список глобальных учетных данных для чтения HTTP, которые будут использоваться в процессе обнаружения устройств. Рекомендуется создавать учетные данные устройства с уникальным именем пользователя и понятным описанием для облегчения идентификации. |
|
description string |
Имя учетных данных для чтения HTTP, обязательно при использовании глобальных учетных данных HTTP. |
|
username string |
Имя пользователя для проверки подлинности чтения HTTP, обязательно при использовании глобальных учетных данных HTTP. |
|
http_write_credential_list list / elements=dictionary |
Список глобальных учетных данных для записи HTTP, которые будут использоваться в процессе обнаружения устройств. Рекомендуется создавать учетные данные устройства с уникальным именем пользователя и понятным описанием для облегчения идентификации. |
|
description string |
Имя учетных данных для записи HTTP, обязательно при использовании глобальных учетных данных HTTP. |
|
username string |
Имя пользователя для проверки подлинности записи HTTP, обязательно при использовании глобальных учетных данных HTTP. |
|
net_conf_port_list list / elements=dictionary |
Список глобальных портов NetConf, которые будут использоваться во время обнаружения устройств. Рекомендуется создавать учетные данные устройства с уникальным описанием. |
|
description string |
Имя учетных данных порта NetConf, обязательно при использовании глобального порта NetConf. |
|
snmp_v2_read_credential_list list / elements=dictionary |
Список глобальных учетных данных для чтения SNMP V2, которые будут использоваться во время обнаружения устройств. Рекомендуется создавать учетные данные устройства с понятным описанием для облегчения идентификации. |
|
description string |
Имя учетных данных для чтения SNMP, обязательно при использовании глобальных учетных данных SNMP. |
|
snmp_v2_write_credential_list list / elements=dictionary |
Список глобальных учетных данных для записи SNMP V2, которые будут использоваться во время обнаружения устройств. Рекомендуется создавать учетные данные устройства с понятным описанием для облегчения идентификации. |
|
description string |
Имя учетных данных для записи SNMP, обязательно при использовании глобальных учетных данных SNMP. |
|
snmp_v3_credential_list list / elements=dictionary |
Список глобальных учетных данных SNMP V3, которые будут использоваться во время обнаружения устройств, предоставляя режимы чтения и записи. Рекомендуется создавать учетные данные устройства с уникальным именем пользователя и понятным описанием для облегчения идентификации. |
|
description string |
Имя учетных данных SNMP V3, обязательно при использовании глобальных учетных данных SNMP. |
|
username string |
Имя пользователя для проверки подлинности SNMP V3, обязательно при использовании глобальных учетных данных SNMP. |
|
ip_address_list list / elements=string / required |
Список IP-адресов, которые необходимо обнаружить. Для обнаружения на основе CDP/LLDP/SINGLE необходимо передать список с одним элементом, например - 10.197.156.22. Для обнаружения на основе CIDR необходимо передать список с одним элементом, например - 10.197.156.22/22. Для обнаружения на основе RANGE необходимо передать список с одним элементом и диапазоном, например - 10.197.156.1-10.197.156.100. Для обнаружения на основе MULTI RANGE необходимо передать список с несколькими элементами, например - 10.197.156.1-10.197.156.100, а в следующей строке - 10.197.157.1-10.197.157.100. Допускается максимум 8 диапазонов IP-адресов. |
|
ip_filter_list list / elements=string |
Список IP-адресов, которые необходимо исключить из переданных IP-адресов. |
|
lldp_level integer |
Общее количество уровней в методе обнаружения lldp Default: |
|
preferred_mgmt_ip_method string |
Предпочтительный метод управления IP (None/UseLoopBack) Default: |
|
protocol_order string |
Определяет порядок попыток подключения к устройствам. Доступные варианты: - “telnet” — Будут использоваться только подключения telnet. - “ssh, telnet” — Сначала будет использоваться SSH (Secure Shell), а затем telnet, если SSH не удалось. По умолчанию: |
|
records_to_return integer |
Количество записей для возврата заголовка при получении глобальных учётных данных v2. По умолчанию: |
|
retry integer |
Количество попыток установления подключения к устройству. |
|
start_index integer |
Начальный индекс заголовка при получении учётных данных SNMP v2. По умолчанию: |
|
timeout integer |
Время ожидания ответа устройства в секундах. |
|
use_global_credentials boolean |
Определяет, следует ли использовать предварительно настроенные глобальные учётные данные для обнаружения устройств. Установка в значение True использует предварительно заданные глобальные учётные данные для задач обнаружения. Это значение по умолчанию. Установка в значение False требует предоставления учётных данных, специфичных для устройства, так как глобальные учётные данные будут проигнорированы. Варианты:
|
config_verify boolean | Установите в значение True, чтобы проверить конфигурацию Cisco Catalyst Center после применения конфигурации плейбука. Варианты:
|
dnac_api_task_timeout integer | Определяет время ожидания в секундах для вызовов API для получения подробностей о задаче. Если подробности о задаче не получены в течение этого периода, процесс завершится, а уведомление о таймауте будет заложено в журнал. По умолчанию: |
dnac_debug boolean | Флаг для включения отладки Cisco DNA Center SDK. Варианты:
|
dnac_host string / обязательно | Имя хоста Cisco DNA Center. |
dnac_log boolean | Флаг для включения/отключения ведения журнала выполнения плейбука. При значении True и заданном dnac_log_file_path: - Создать файл журнала в месте выполнения с указанным именем. При значении True и незаданном dnac_log_file_path: - Создать файл журнала в месте выполнения с именем ‘dnac.log’. При значении False: - Ведение журнала отключено. Если файл журнала не существует: - Создается в режиме добавления или записи в зависимости от флага “dnac_log_append”. Если файл журнала существует: - Он перезаписывается или добавляется в зависимости от флага “dnac_log_append”. Варианты:
|
dnac_log_append boolean | Определяет режим файла. Установите в True для режима ‘append’ (добавления). Установите в False для режима ‘write’ (записи). Варианты:
|
dnac_log_file_path string | Управление ведением журнала. Журнал записывается, если dnac_log имеет значение True. Если путь не указан: - При ‘dnac_log_append’ = True, ‘dnac.log’ создается в текущем каталоге Ansible; журналы добавляются. - При ‘dnac_log_append’ = False, ‘dnac.log’ создается; журналы перезаписываются. Если путь указан: - При ‘dnac_log_append’ = True, файл открывается в режиме добавления. - При ‘dnac_log_append’ = False, файл открывается в режиме записи (w). - В сценариях с общим файлом, без режима добавления, содержимое перезаписывается после каждого выполнения модуля. - Для общего файла журнала установите append в False для первого модуля (чтобы перезаписать); для последующих модулей установите append в True. По умолчанию: |
dnac_log_level string | Устанавливает порог уровня журнала. Сообщения с уровнем, равным или большим этому, будут записаны в журнал. Уровни перечислены в порядке убывания серьезности [CRITICAL, ERROR, WARNING, INFO, DEBUG]. CRITICAL указывает серьезные ошибки, останавливающие программу. Отображаются только сообщения CRITICAL. ERROR указывает проблемы, препятствующие выполнению функции. Отображаются сообщения ERROR и CRITICAL. WARNING указывает потенциальные будущие проблемы. Отображаются сообщения WARNING, ERROR и CRITICAL. INFO отслеживает нормальную работу. Отображаются сообщения INFO, WARNING, ERROR и CRITICAL. DEBUG предоставляет подробные диагностические сведения. Отображаются все сообщения журнала. По умолчанию: |
dnac_password string | Пароль Cisco DNA Center для аутентификации. |
dnac_port string | Порт Cisco DNA Center. По умолчанию: |
dnac_task_poll_interval integer | Указывает интервал в секундах между последовательными вызовами API для получения подробностей о задаче. По умолчанию: |
dnac_username aliases: user string | Имя пользователя Cisco DNA Center для аутентификации. По умолчанию: |
dnac_verify boolean | Флаг для включения или выключения проверки SSL-сертификатов. Выбор:
|
dnac_version string | Уведомляет SDK, какую версию Cisco DNA Center использовать. По умолчанию: |
state string | Состояние Cisco Catalyst Center после завершения модуля. Выбор:
|
validate_response_schema boolean | Флаг для Cisco DNA Center SDK, позволяющий включить проверку тел запросов по JSON-схеме. Выбор:
|
Примечания
Примечание
- Используемые методы SDK: discovery.Discovery.get_all_global_credentials_v2, discovery.Discovery.start_discovery, task.Task.get_task_by_id, discovery.Discovery.get_discoveries_by_range, discovery.Discovery.get_discovered_network_devices_by_discovery_id’, discovery.Discovery.delete_discovery_by_id discovery.Discovery.delete_all_discovery discovery.Discovery.get_count_of_all_discovery_jobs
- Используемые пути: get /dna/intent/api/v2/global-credential post /dna/intent/api/v1/discovery get /dna/intent/api/v1/task/{taskId} get /dna/intent/api/v1/discovery/{startIndex}/{recordsToReturn} get /dna/intent/api/v1/discovery/{id}/network-device delete /dna/intent/api/v1/discovery/{id} delete /dna/intent/api/v1/delete get /dna/intent/api/v1/discovery/count
- Параметр 'global_cli_len' удален в версии v6.12.0.
- Не поддерживает
check_mode - Плагин выполняется на контрольном узле и не использует плагины подключения ansible, а вместо этого использует встроенный менеджер подключений Cisco DNAC SDK
- Параметры, начинающиеся с dnac_, используются Cisco DNAC Python SDK для установления соединения
Примеры
- name: Execute discovery of devices with both global credentials and discovery specific credentials
cisco.dnac.discovery_intent:
dnac_host: "{{dnac_host}}"
dnac_username: "{{dnac_username}}"
dnac_password: "{{dnac_password}}"
dnac_verify: "{{dnac_verify}}"
dnac_port: "{{dnac_port}}"
dnac_version: "{{dnac_version}}"
dnac_debug: "{{dnac_debug}}"
dnac_log: True
dnac_log_level: "{{dnac_log_level}}"
state: merged
config_verify: True
config:
- discovery_name: Discovery with both global and job specific credentials
discovery_type: RANGE
ip_address_list:
- 201.1.1.1-201.1.1.100
ip_filter_list:
- 201.1.1.2
- 201.1.1.10
discovery_specific_credentials:
cli_credentials_list:
- username: cisco
password: Cisco123
enable_password: Cisco123
http_read_credential:
username: cisco
password: Cisco123
port: 443
secure: true
http_write_credential:
username: cisco
password: Cisco123
port: 443
secure: True
snmp_v2_read_credential:
description: snmp_v2-new
community: Cisco123
snmp_v2_write_credential:
description: snmp_v2-new
community: Cisco123
snmp_v3_credential:
username: v3Public2
snmp_mode: AUTHPRIV
auth_type: SHA
auth_password: Lablab123
privacy_type: AES256
privacy_password: Lablab123
net_conf_port: 750
global_credentials:
cli_credentials_list:
- description: ISE
username: cisco
- description: CLI1234
username: cli
http_read_credential_list:
- description: HTTP Read
username: HTTP_Read
http_write_credential_list:
- description: HTTP Write
username: HTTP_Write
snmp_v3_credential_list:
- description: snmpV3
username: snmpV3
snmp_v2_read_credential_list:
- description: snmpV2_read
snmp_v2_write_credential_list:
- description: snmpV2_write
net_conf_port_list:
- description: Old_one
start_index: 1
records_to_return: 100
protocol_order: ssh
retry: 5
timeout: 3
- name: Execute discovery of devices with discovery specific credentials only
cisco.dnac.discovery_intent:
dnac_host: "{{dnac_host}}"
dnac_username: "{{dnac_username}}"
dnac_password: "{{dnac_password}}"
dnac_verify: "{{dnac_verify}}"
dnac_port: "{{dnac_port}}"
dnac_version: "{{dnac_version}}"
dnac_debug: "{{dnac_debug}}"
dnac_log: True
dnac_log_level: "{{dnac_log_level}}"
state: merged
config_verify: True
config:
- discovery_name: Single with discovery specific credentials only
discovery_type: SINGLE
ip_address_list:
- 204.1.1.10
discovery_specific_credentials:
cli_credentials_list:
- username: cisco
password: Cisco123
enable_password: Cisco123
http_read_credential:
username: cisco
password: Cisco123
port: 443
secure: true
http_write_credential:
username: cisco
password: Cisco123
port: 443
secure: True
snmp_v2_read_credential:
description: snmp_v2-new
community: Cisco123
snmp_v2_write_credential:
description: snmp_v2-new
community: Cisco123
snmp_v3_credential:
username: v3Public2
snmp_mode: AUTHPRIV
auth_type: SHA
auth_password: Lablab123
privacy_type: AES256
privacy_password: Lablab123
net_conf_port: 750
use_global_credentials: False
start_index: 1
records_to_return: 100
protocol_order: ssh
retry: 5
timeout: 3
- name: Execute discovery of devices with global credentials only
cisco.dnac.discovery_intent:
dnac_host: "{{dnac_host}}"
dnac_username: "{{dnac_username}}"
dnac_password: "{{dnac_password}}"
dnac_verify: "{{dnac_verify}}"
dnac_port: "{{dnac_port}}"
dnac_version: "{{dnac_version}}"
dnac_debug: "{{dnac_debug}}"
dnac_log: True
dnac_log_level: "{{dnac_log_level}}"
state: merged
config_verify: True
config:
- discovery_name: CDP with global credentials only
discovery_type: CDP
ip_address_list:
- 204.1.1.1
cdp_level: 16
global_credentials:
cli_credentials_list:
- description: ISE
username: cisco
- description: CLI1234
username: cli
http_read_credential_list:
- description: HTTP Read
username: HTTP_Read
http_write_credential_list:
- description: HTTP Write
username: HTTP_Write
snmp_v3_credential_list:
- description: snmpV3
username: snmpV3
snmp_v2_read_credential_list:
- description: snmpV2_read
snmp_v2_write_credential_list:
- description: snmpV2_write
net_conf_port_list:
- description: Old_one
start_index: 1
records_to_return: 100
protocol_order: ssh
retry: 5
timeout: 3
- name: Execute discovery of devices with all the global credentials (max 5 allowed)
cisco.dnac.discovery_intent:
dnac_host: "{{dnac_host}}"
dnac_username: "{{dnac_username}}"
dnac_password: "{{dnac_password}}"
dnac_verify: "{{dnac_verify}}"
dnac_port: "{{dnac_port}}"
dnac_version: "{{dnac_version}}"
dnac_debug: "{{dnac_debug}}"
dnac_log: True
dnac_log_level: "{{dnac_log_level}}"
state: merged
config_verify: True
config:
- discovery_name: CIDR with all global credentials
discovery_type: CIDR
ip_address_list:
- 204.1.2.0/24
ip_filter_list:
- 204.1.2.10
preferred_mgmt_ip_method: None
start_index: 1
records_to_return: 100
protocol_order: telnet
retry: 10
timeout: 3
use_global_credentials: True
- name: Delete disovery by name
cisco.dnac.discovery_intent:
dnac_host: "{{dnac_host}}"
dnac_username: "{{dnac_username}}"
dnac_password: "{{dnac_password}}"
dnac_verify: "{{dnac_verify}}"
dnac_port: "{{dnac_port}}"
dnac_version: "{{dnac_version}}"
dnac_debug: "{{dnac_debug}}"
dnac_log: True
dnac_log_level: "{{dnac_log_level}}"
state: deleted
config_verify: True
config:
- discovery_name: Single discovery
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
Ключ | Описание |
|---|---|
response_1 словарь | Словарь с ответом, возвращённым Cisco Catalyst Center Python SDK Возвращается: всегда Пример: |
response_2 список / элементы=строка | Список с ответом, возвращённым Cisco Catalyst Center Python SDK Возвращается: всегда Пример: |
response_3 словарь | Строка с ответом, возвращённым Cisco Catalyst Center Python SDK Возвращается: всегда Пример: |
Ссылки на коллекцию
© 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/cisco/dnac/discovery_intent_module.html