cisco.dnac.discovery 模块 – 发现资源模块

注意

此模块是 cisco.dnac 集合 (版本 6.25.0) 的一部分。

如果您使用的是 ansible 包,则可能已经安装了此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install cisco.dnac。您需要其他要求才能使用此模块,请参阅 要求 获取详细信息。

要在 playbook 中使用它,请指定:cisco.dnac.discovery

cisco.dnac 3.1.0 中的新增功能

摘要

  • 此模块表示模块 discovery_v1 的别名

注意

此模块具有相应的 action 插件

要求

执行此模块的主机需要以下要求。

  • dnacentersdk >= 2.4.9

  • python >= 3.5

参数

参数

注释

attributeInfo

字典

已弃用。

cdpLevel

整数

要发现的邻居设备的 CDP 层次。

deviceIds

字符串

在发现中发现的设备的 ID。

discoveryCondition

字符串

指示发现状态。可用选项:已完成或进行中。

discoveryStatus

字符串

发现的状态。可用选项为:活动、非活动、编辑。

discoveryType

字符串

发现的类型。“单一”、“范围”、“多范围”、“CDP”、“LLDP”、“CIDR”。

dnac_debug

布尔值

用于 Cisco DNA Center SDK 的标志,用于启用调试。

选项

  • false ← (默认)

  • true

dnac_host

字符串 / 必填

Cisco DNA Center 主机名。

dnac_password

字符串

用于身份验证的 Cisco DNA Center 密码。

dnac_port

整数

Cisco DNA Center 端口。

默认值: 443

dnac_username

别名:user

字符串

用于身份验证的 Cisco DNA Center 用户名。

默认值: "admin"

dnac_verify

布尔值

启用或禁用 SSL 证书验证的标志。

选项

  • false

  • true ← (默认)

dnac_version

字符串

告知 SDK 使用哪个版本的 Cisco DNA Center。

默认值: "2.3.7.6"

enablePasswordList

字符串

启用要发现的设备的密码。

globalCredentialIdList

列表 / 元素=字符串

要使用的全局凭据 ID 列表。

httpReadCredential

字典

发现的 httpReadCredential。

注释

字符串

用于标识凭据的注释。

credentialType

字符串

用于标识使用凭据的应用程序的凭据类型。

description

字符串

凭据的描述。

id

字符串

凭据 ID。

instanceTenantId

字符串

凭据租户 ID。

instanceUuid

字符串

凭据 ID。

password

字符串

HTTP(S) 密码。

port

整数

HTTP(S) 端口。

secure

布尔值

HTTPS 标志。

选项

  • false

  • true

username

字符串

HTTP(S) 用户名。

httpWriteCredential

字典

发现的 httpWriteCredential。

注释

字符串

用于标识凭据的注释。

credentialType

字符串

用于标识使用凭据的应用程序的凭据类型。

description

字符串

凭据的描述。

id

字符串

凭据 ID。

instanceTenantId

字符串

凭据租户 ID。

instanceUuid

字符串

凭据 ID。

password

字符串

HTTP(S) 密码。

port

整数

HTTP(S) 端口。

secure

布尔值

HTTPS 标志。

选项

  • false

  • true

username

字符串

HTTP(S) 用户名。

id

字符串

唯一的发现 ID。

ipAddressList

字符串

要发现的设备的 IP 地址列表。

ipFilterList

字符串

要过滤的设备的 IP 地址。

isAutoCdp

布尔值

标志,用于说明是否为 CDP 发现。

选项

  • false

  • true

lldpLevel

整数

要发现的邻居设备的 LLDP 层次。

name

字符串

发现的名称。

netconfPort

字符串

设备上的 Netconf 端口。Netconf 需要有效的 sshv2 凭据才能工作。

numDevices

整数

在发现中发现的设备数量。

parentDiscoveryId

字符串

启动发现的父发现 ID。

passwordList

字符串

要发现的设备的密码。

preferredMgmtIPMethod

字符串

首选管理 IP 方法。可用选项为“无”和“使用环回”。

protocolOrder

字符串

尝试建立与设备连接的协议 (ssh/telnet) 的顺序。例如,“telnet” 仅 telnet;“ssh,telnet” ssh 的顺序高于 telnet。

retry

整数

尝试建立与设备连接的次数。

retryCount

整数

尝试建立与设备连接的次数。

snmpAuthPassphrase

字符串

SNMP 的身份验证密码。

snmpAuthProtocol

字符串

SNMP 身份验证协议。“SHA” 或“MD5”。

snmpMode

字符串

SNMP 模式。“AUTHPRIV” 或“AUTHNOPRIV” 或“NOAUTHNOPRIV”。

snmpPrivPassphrase

字符串

SNMP 隐私的密码。

snmpPrivProtocol

字符串

SNMP 隐私协议。“AES128”。

snmpRoCommunity

字符串

要发现的设备的 SNMP RO 社区。

snmpRoCommunityDesc

字符串

SNMP RO 社区的描述。

snmpRwCommunity

字符串

要发现的设备的 SNMP RW 社区。

snmpRwCommunityDesc

字符串

SNMP RW 社区的描述。

snmpUserName

字符串

设备的SNMP用户名。

snmpVersion

字符串

SNMP版本。V2 或 v3。

timeOut

整数

等待设备响应的时间。

updateMgmtIp

布尔值

如果设备有多个IP可用,则更新管理IP。如果设置为true,当重新发现设备时具有不同的IP,则管理IP将被更新。默认值为false。

选项

  • false

  • true

userNameList

字符串

要发现的设备的用户名。

validate_response_schema

布尔值

用于Cisco DNA Center SDK的标志,用于启用根据JSON模式验证请求正文。

选项

  • false

  • true ← (默认)

注释

注意

  • 使用的SDK方法为discovery.Discovery.delete_discovery_by_id_v1、discovery.Discovery.start_discovery_v1、discovery.Discovery.updates_discovery_by_id,

  • 使用的路径为post /dna/intent/api/v1/discovery、delete /dna/intent/api/v1/discovery、delete /dna/intent/api/v1/discovery/{id}、put /dna/intent/api/v1/discovery,

  • 需要注意的是,此模块是discovery_v1的别名。

  • 不支持check_mode

  • 插件在控制节点上运行,不使用任何Ansible连接插件,而是使用Cisco DNAC SDK的嵌入式连接管理器。

  • 以dnac_开头的参数由Cisco DNAC Python SDK用于建立连接。

另请参阅

另请参阅

Cisco DNA Center关于Discovery StartDiscoveryV1的文档

StartDiscoveryV1 API的完整参考。

Cisco DNA Center关于Discovery DeleteAllDiscoveryV1的文档

DeleteAllDiscoveryV1 API的完整参考。

Cisco DNA Center关于Discovery DeleteDiscoveryByIdV1的文档

DeleteDiscoveryByIdV1 API的完整参考。

Cisco DNA Center关于Discovery UpdatesAnExistingDiscoveryBySpecifiedIdV1的文档

UpdatesAnExistingDiscoveryBySpecifiedIdV1 API的完整参考。

示例

- name: Delete all
  cisco.dnac.discovery:
    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}}"
    state: absent

- name: Update all
  cisco.dnac.discovery:
    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}}"
    state: present
    attributeInfo: {}
    cdpLevel: 0
    deviceIds: string
    discoveryCondition: string
    discoveryStatus: string
    discoveryType: string
    enablePasswordList: string
    globalCredentialIdList:
    - string
    httpReadCredential:
      comments: string
      credentialType: string
      description: string
      id: string
      instanceTenantId: string
      instanceUuid: string
      password: string
      port: 0
      secure: true
      username: string
    httpWriteCredential:
      comments: string
      credentialType: string
      description: string
      id: string
      instanceTenantId: string
      instanceUuid: string
      password: string
      port: 0
      secure: true
      username: string
    id: string
    ipAddressList: string
    ipFilterList: string
    isAutoCdp: true
    lldpLevel: 0
    name: string
    netconfPort: string
    numDevices: 0
    parentDiscoveryId: string
    passwordList: string
    preferredMgmtIPMethod: string
    protocolOrder: string
    retryCount: 0
    snmpAuthPassphrase: string
    snmpAuthProtocol: string
    snmpMode: string
    snmpPrivPassphrase: string
    snmpPrivProtocol: string
    snmpRoCommunity: string
    snmpRoCommunityDesc: string
    snmpRwCommunity: string
    snmpRwCommunityDesc: string
    snmpUserName: string
    timeOut: 0
    updateMgmtIp: true
    userNameList: string

- name: Create
  cisco.dnac.discovery:
    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}}"
    state: present
    cdpLevel: 0
    discoveryType: string
    enablePasswordList:
    - string
    globalCredentialIdList:
    - string
    httpReadCredential:
      password: string
      port: 0
      secure: true
      username: string
    httpWriteCredential:
      password: string
      port: 0
      secure: true
      username: string
    ipAddressList: string
    ipFilterList:
    - string
    lldpLevel: 0
    name: string
    netconfPort: string
    passwordList:
    - string
    preferredMgmtIPMethod: string
    protocolOrder: string
    retry: 0
    snmpAuthPassphrase: string
    snmpAuthProtocol: string
    snmpMode: string
    snmpPrivPassphrase: string
    snmpPrivProtocol: string
    snmpRoCommunity: string
    snmpRoCommunityDesc: string
    snmpRwCommunity: string
    snmpRwCommunityDesc: string
    snmpUserName: string
    snmpVersion: string
    timeOut: 0
    userNameList:
    - string

- name: Delete by id
  cisco.dnac.discovery:
    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}}"
    state: absent
    id: string

返回值

常见的返回值已在此处记录,以下是此模块特有的字段

描述

dnac_response

字典

包含Cisco DNAC Python SDK返回的响应的字典或列表。

返回值:始终返回

示例:{"response": {"taskId": "string", "url": "string"}, "version": "string"}

作者

  • Rafael Campos (@racampos)