cisco.dnac.network_settings_workflow_manager 模块 – IP 地址池和网络功能的资源模块

注意

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

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

要安装它,请使用:ansible-galaxy collection install cisco.dnac。您需要进一步的要求才能使用此模块,有关详细信息,请参阅 要求

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

cisco.dnac 6.6.0 中的新增功能

概要

  • 管理全局池、保留池、网络资源上的操作。

  • 用于创建/更新/删除全局池的 API。

  • 用于从全局池保留/更新/删除 IP 子池的 API。

  • 用于更新 DHCP、Syslog、SNMP、NTP、网络 AAA、客户端和端点 AAA 和/或 DNS 中心服务器设置的网络设置的 API。

要求

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

  • dnacentersdk >= 2.7.2

  • python >= 3.9

参数

参数

注释

config

列表 / 元素=字典 / 必需

正在管理的全局池、保留池、网络的详细信息列表。

global_pool_details

字典

在全局级别管理 IPv4 和 IPv6 IP 池。

settings

字典

全局池的设置。

ip_pool

列表 / 元素=字典

包含全局 IP 池配置的列表。

cidr

字符串

定义 IP 池的无类别域间路由块,从而能够在网络内系统地分配 IP 地址。

dhcp_server_ips

列表 / 元素=字符串

负责自动向本地网络上的设备分配 IP 地址和网络配置参数的 DHCP 服务器 IP。

dns_server_ips

列表 / 元素=字符串

负责将域名转换为相应的 IP 地址。

gateway

字符串

充当网络之间数据流量的入口点或出口点。

ip_address_space

字符串

IP 地址空间,IPv4 或 IPv6。

name

字符串

指定分配给全局 IP 池的名称。

全局 IP 池中的操作所必需。

长度应小于或等于 100。

只允许字母、数字和 -_./ 字符。

pool_type

字符串

包括通用 IP 池和隧道 IP 池。通用 - 用于网络中的一般用途,例如设备管理或网络设备之间的通信。隧道 - 指定用于隧道接口,以将数据包封装在网络协议内。它用于 VPN 连接、GRE 隧道或其他类型的覆盖网络。

选择

  • "Generic" ← (默认)

  • "Tunnel"

prev_name

字符串

全局池的先前标识符。仅当需要更新全局池的名称时才应使用它。

network_management_details

列表 / 元素=字典

为站点设置默认网络设置

settings

字典

网络管理详细信息设置。

client_and_endpoint_aaa

字典

管理客户端和端点的 AAA(身份验证授权记帐)。

pan_address

字符串

在 cisco.dnac 6.14.0 中添加

ISE 服务器的 PAN IP 地址。

例如,1.1.1.1。

primary_server_address

字符串

在 cisco.dnac 6.14.0 中添加

ISE/AAA 服务器的主 IP 地址。

例如,1.1.1.2。

protocol

字符串

AAA 或 ISE 服务器的协议。

选择

  • "RADIUS" ← (默认)

  • "TACACS"

secondary_server_address

字符串

在 cisco.dnac 6.14.0 中添加

AAA 服务器的辅助 IP 地址。

例如,1.1.1.3。

server_type

字符串

用于管理客户端和端点 AAA 的服务器类型。

选择

  • "AAA"

  • "ISE"

shared_secret

字符串

ISE 服务器的共享密钥。

共享密钥的长度应至少为 4 个字符。

dhcp_server

列表 / 元素=字符串

DHCP 服务器 IP 地址 (例如 1.1.1.4)。

dns_server

字典

特定站点下网络的 DNS 服务器详细信息。

domain_name

字符串

DHCP 的域名 (例如;cisco.com, cisco.net)。

primary_ip_address

字符串

DHCP 的主 IP 地址 (例如 2.2.2.2)。

secondary_ip_address

字符串

DHCP 的辅助 IP 地址 (例如 3.3.3.3)。

message_of_the_day

字典

特定站点下的横幅详细信息。

banner_message

字符串

横幅消息(例如;Good day)。

retain_existing_banner

布尔值

保留现有的横幅消息。

选择

  • false

  • true

netflow_collector

字典

特定站点的 NetFlow 收集器配置。

collector_type

字符串

NetFlow 收集器的类型。

支持的值包括“Builtin”和“Telemetry_broker_or_UDP_director”。

适用于 Cisco Catalyst Center 2.3.7.6 及更高版本。

选择

  • "Builtin" ← (默认)

  • "Telemetry_broker_or_UDP_director"

enable_on_wired_access_devices

布尔值

启用或禁用有线接入设备。适用于 Cisco Catalyst Center 2.3.7.6 及更高版本。

选择

  • false ← (默认)

  • true

ip_address

字符串

NetFlow 收集器的 IP 地址。例如,3.3.3.1。

port

整数

NetFlow 收集器使用的端口号。例如,443。

network_aaa

字典

管理网络设备的 AAA(身份验证、授权、计费)。

pan_address

字符串

在 cisco.dnac 6.14.0 中添加

ISE 服务器的 PAN IP 地址。

例如,1.1.1.1。

primary_server_address

字符串

在 cisco.dnac 6.14.0 中添加

ISE/AAA 服务器的主 IP 地址。

例如,1.1.1.2。

protocol

字符串

AAA 或 ISE 服务器的协议。

选择

  • "RADIUS" ← (默认)

  • "TACACS"

secondary_server_address

字符串

在 cisco.dnac 6.14.0 中添加

AAA 服务器的辅助 IP 地址。

例如,1.1.1.3。

server_type

字符串

用于管理网络设备的 AAA 的服务器类型。

选择

  • "AAA"

  • "ISE"

shared_secret

字符串

ISE 服务器的共享密钥。

共享密钥的长度应至少为 4 个字符。

ntp_server

列表 / 元素=字符串

特定站点下的 NTP 服务器的 IP 地址(例如 1.1.1.2)。

snmp_server

字典

特定站点下的 SNMP 服务器详细信息。

configure_dnac_ip

布尔值

为 SNMP 服务器配置 Cisco Catalyst Center IP(例如 true)。

选择

  • false

  • true

ip_addresses

列表 / 元素=字符串

SNMP 服务器的 IP 地址(例如 4.4.4.1)。

syslog_server

字典

特定站点下的 syslog 服务器详细信息。

configure_dnac_ip

布尔值

为 syslog 服务器配置 Cisco Catalyst Center IP(例如 true)。

选择

  • false

  • true

ip_addresses

列表 / 元素=字符串

syslog 服务器的 IP 地址(例如 4.4.4.4)。

timezone

字符串

特定站点的时区。(例如 Africa/Abidjan/GMT)。

wired_data_collection

字典

启用或禁用从有线网络设备收集用于遥测和监控目的的数据。

适用于 Cisco Catalyst Center 2.3.7.6 及更高版本。

enable_wired_data_collection

布尔值

启用或禁用有线数据收集。

选择

  • false ← (默认)

  • true

wireless_telemetry

字典

启用或禁用从无线网络设备收集用于性能监控和分析的遥测数据。

适用于 Cisco Catalyst Center 2.3.7.6 及更高版本。

enable_wireless_telemetry

布尔值

启用或禁用无线遥测。

选择

  • false ← (默认)

  • true

site_name

字符串

作为路径参数提供的站点名称,用于指定保留 IP 子池的位置。(例如 Global/Chennai/Trill)

reserve_pool_details

字典

从全局池预留的 IP 子池详细信息。

ipv4_dhcp_servers

列表 / 元素=字符串

指定 DHCP 服务器的 IPv4 地址,例如“1.1.1.1”。

ipv4_dns_servers

列表 / 元素=字符串

指定 DNS 服务器的 IPv4 地址,例如“4.4.4.4”。

ipv4_gateway

字符串

在 cisco.dnac 4.0.0 中添加

提供网关的 IPv4 地址,例如“175.175.0.1”。

ipv4_global_pool

字符串

具有 CIDR 的 IPv4 全局池地址,例如 175.175.0.0/16。

如果同时提供了“ipv6_global_pool”和“ipv4_global_pool_name”,则将优先使用“ipv4_global_pool”。

ipv4_global_pool_name

字符串

在 cisco.dnac 6.14.0 中添加

指定与 IPv4 全局 IP 池关联的名称。

如果同时提供了“ipv4_global_pool”和“ipv4_global_pool_name”,则将优先使用“ipv4_global_pool”。

ipv4_prefix

布尔值

启用 ip4 前缀长度或启用 ipv4 总主机输入

选择

  • false

  • true

ipv4_prefix_length

整数

当 ipv4_prefix 值为 true 时,需要 ipv4 前缀长度。

ipv4_subnet

字符串

指示 IPv4 子网地址,例如“175.175.0.0”。

ipv4_total_host

整数

IPv4 的主机总数,当“ipv4_prefix”设置为 false 时需要。

ipv6_address_space

布尔值

确定是否需要 IPv6 和 IPv4 输入。如果设置为 false,则只需要 IPv4 输入。如果设置为 true,则需要 IPv6 和 IPv4 输入。

选择

  • false

  • true

ipv6_dhcp_servers

列表 / 元素=字符串

以以下格式指定 DHCP 服务器的 IPv6 地址。例如,“2001:0db8:0123:4567:89ab:cdef:0001:0001”。

ipv6_dns_servers

列表 / 元素=字符串

指定 DNS 服务器的 IPv6 地址。例如,“2001:0db8:0123:4567:89ab:cdef:0002:0002”。

ipv6_gateway

字符串

提供网关的 IPv6 地址。例如,“2001:0db8:0123:4567:89ab:cdef:0003:0003”。

ipv6_global_pool

字符串

当 ipv6_address_space 设置为 true 时,需要 ipv6_global_pool。

它使用 CIDR 表示法指定全局 IPv6 地址池,例如“2001:db8:85a3::/64”。

如果同时指定了 ipv6_global_pool 和 ipv6_global_pool_name,则 ipv6_global_pool 将优先。

ipv6_global_pool_name

字符串

在 cisco.dnac 6.14.0 中添加

指定分配给 IPv6 全局 IP 池的名称。

如果同时提供了“ipv6_global_pool”和“ipv6_global_pool_name”,则将优先使用“ipv6_global_pool”。

ipv6_prefix

布尔值

确定是否启用“ipv6_prefix_length”或“ipv6_total_host”输入字段。如果 IPv6 前缀值为 true,则需要 IPv6 前缀长度输入字段;如果为 false,则需要 IPv6 总主机输入。

选择

  • false

  • true

ipv6_prefix_length

整数

指定 IPv6 前缀长度。当“ipv6_prefix”设置为 true 时需要。

ipv6_subnet

字符串

IPv6 子网地址,例如 2001:db8:85a3:0:100。

ipv6_total_host

整数

指定 IPv6 主机的总数。当“ipv6_prefix”设置为 false 时需要。

必须指定小于 256 的 IPv6 IP 地址数。

name

字符串

保留 IP 子池的名称。

在保留 IP 池中进行操作时需要。

长度应小于或等于 100。

只允许字母、数字和 -_./ 字符。

pool_type

字符串

保留 IP 子池的类型。通用 - 用于网络中的一般用途,例如设备管理或网络设备之间的通信。LAN - 用于局域网内的设备和资源,例如设备连接、内部通信或服务。管理 - 用于管理目的,例如设备管理接口、管理访问或其他管理功能。服务 - 用于网络服务和应用程序,例如 DNS(域名系统)、DHCP(动态主机配置协议)、NTP(网络时间协议)。WAN - 用于广域网中的设备和资源,例如远程站点与其他网络或 WAN 内托管的服务的互连。

选择

  • "Generic" ← (默认)

  • "LAN"

  • "管理"

  • "服务"

  • "WAN"

prev_name

字符串

与保留 IP 子池关联的先前名称。

site_name

字符串

作为路径参数提供的站点名称,用于指定保留 IP 子池的位置。

slaac_support

布尔值

允许 IPv6 网络上的设备自主配置其 IP 地址,无需手动设置。

选择

  • false

  • true

config_verify

布尔值

设置为 True 以在应用剧本配置后验证 Cisco Catalyst Center。

选择

  • false ← (默认)

  • true

dnac_api_task_timeout

整数

定义用于检索任务详细信息的 API 调用的超时时间(以秒为单位)。如果在此期间未收到任务详细信息,则进程将结束,并记录超时通知。

默认值: 1200

dnac_debug

布尔值

指示是否在 Cisco Catalyst Center SDK 中启用了调试。

选择

  • false ← (默认)

  • true

dnac_host

字符串 / 必填

Cisco Catalyst Center 的主机名。

dnac_log

布尔值

用于启用/禁用剧本执行日志记录的标志。

当为 true 并且提供了 dnac_log_file_path 时,- 在执行位置创建具有指定名称的日志文件。

当为 true 并且未提供 dnac_log_file_path 时,- 在执行位置创建名为“dnac.log”的日志文件。

当为 false 时,- 禁用日志记录。

如果日志文件不存在,- 则根据“dnac_log_append”标志以追加或写入模式创建它。

如果日志文件存在,- 则根据“dnac_log_append”标志覆盖或追加它。

选择

  • false ← (默认)

  • true

dnac_log_append

布尔值

确定文件的模式。设置为 True 表示“追加”模式。设置为 False 表示“写入”模式。

选择

  • false

  • true ← (默认)

dnac_log_file_path

字符串

控制日志记录。如果 dnac_log 为 True,则会记录日志。

如果未指定路径,- 当“dnac_log_append”为 True 时,将在当前 Ansible 目录中生成“dnac.log”;追加日志。- 当“dnac_log_append”为 False 时,将生成“dnac.log”;覆盖日志。

如果指定了路径,- 当“dnac_log_append”为 True 时,该文件将以追加模式打开。- 当“dnac_log_append”为 False 时,该文件将以写入 (w) 模式打开。- 在共享文件场景中,如果不使用追加模式,则每次模块执行后内容都会被覆盖。- 对于共享日志文件,将追加设置为 False 用于第一个模块(进行覆盖);对于后续模块,将追加设置为 True。

默认值: "dnac.log"

dnac_log_level

字符串

设置日志级别的阈值。将记录级别等于或高于此级别的消息。级别按严重性顺序列出[CRITICAL、ERROR、WARNING、INFO、DEBUG]。

CRITICAL 表示导致程序停止的严重错误。仅显示 CRITICAL 消息。

ERROR 表示阻止功能的出现问题。显示 ERROR 和 CRITICAL 消息。

WARNING 表示潜在的未来问题。显示 WARNING、ERROR、CRITICAL 消息。

INFO 跟踪正常操作。显示 INFO、WARNING、ERROR、CRITICAL 消息。

DEBUG 提供详细的诊断信息。显示所有日志消息。

默认值: "WARNING"

dnac_password

字符串

用于在 Cisco Catalyst Center 进行身份验证的密码。

dnac_port

字符串

指定与 Cisco Catalyst Center 关联的端口号。

默认值: "443"

dnac_task_poll_interval

整数

指定连续调用 API 以检索任务详细信息之间的时间间隔(以秒为单位)。

默认值: 2

dnac_username

别名:user

字符串

用于在 Cisco Catalyst Center 进行身份验证的用户名。

默认值: "admin"

dnac_verify

布尔值

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

选择

  • false

  • true ← (默认)

dnac_version

字符串

指定 SDK 应使用的 Cisco Catalyst Center 的版本。

默认值: "2.2.3.3"

state

字符串

模块完成后 Cisco Catalyst Center 的状态。

选择

  • "merged" ← (默认)

  • "deleted"(已删除)

validate_response_schema

布尔值

Cisco Catalyst Center SDK 的标志,用于启用针对 JSON 模式验证请求体的功能。

选择

  • false

  • true ← (默认)

注释

注意

  • 使用的 SDK 方法包括 network_settings.NetworkSettings.create_global_pool, network_settings.NetworkSettings.delete_global_ip_pool, network_settings.NetworkSettings.update_global_pool, network_settings.NetworkSettings.release_reserve_ip_subpool, network_settings.NetworkSettings.reserve_ip_subpool, network_settings.NetworkSettings.update_reserve_ip_subpool, network_settings.NetworkSettings.update_network_v2,

  • 使用的路径包括 post /dna/intent/api/v1/global-pool, delete /dna/intent/api/v1/global-pool/{id}, put /dna/intent/api/v1/global-pool, post /dna/intent/api/v1/reserve-ip-subpool/{siteId}, delete /dna/intent/api/v1/reserve-ip-subpool/{id}, put /dna/intent/api/v1/reserve-ip-subpool/{siteId}, put /dna/intent/api/v2/network/{siteId},

  • 不支持 check_mode

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

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

示例

- name: Create global pool
  cisco.dnac.network_settings_workflow_manager:
    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:
    - global_pool_details:
        settings:
          ip_pool:
          - name: string
            pool_type: Generic
            ip_address_space: string
            cidr: string
            gateway: string
            dhcp_server_ips: list
            dns_server_ips: list

- name: Create reserve an ip pool
  cisco.dnac.network_settings_workflow_manager:
    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:
    - reserve_pool_details:
      - site_name: string
        name: string
        pool_type: LAN
        ipv6_address_space: True
        ipv4_global_pool: string
        ipv4_prefix: True
        ipv4_prefix_length: 9
        ipv4_subnet: string
        ipv6_prefix: True
        ipv6_prefix_length: 64
        ipv6_global_pool: string
        ipv6_subnet: string
        slaac_support: True

- name: Create reserve an ip pool using global pool name
  cisco.dnac.network_settings_workflow_manager:
    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:
    - reserve_pool_details:
      - name: string
        site_name: string
        pool_type: LAN
        ipv6_address_space: True
        ipv4_global_pool_name: string
        ipv4_prefix: True
        ipv4_prefix_length: 9
        ipv4_subnet: string
        ipv6_prefix: True
        ipv6_prefix_length: 64
        ipv6_global_pool_name: string
        ipv6_subnet: string
        slaac_support: True

- name: Delete reserved pool
  cisco.dnac.network_settings_workflow_manager:
    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:
    - reserve_pool_details:
      - site_name: string
        name: string

- name: Manage the network functions
  cisco.dnac.network_settings_workflow_manager:
    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:
    - network_management_details:
      - site_name: string
        settings:
          dhcp_server: list
          dns_server:
            domain_name: string
            primary_ip_address: string
            secondary_ip_address: string
          ntp_server: list
          timezone: string
          message_of_the_day:
            banner_message: string
            retain_existing_banner: bool
          netflow_collector:
            ip_address: string
            port: 443
          snmp_server:
            configure_dnac_ip: True
            ip_addresses: list
          syslog_server:
            configure_dnac_ip: True
            ip_addresses: list

- name: Adding the network_aaa and client_and_endpoint_aaa AAA server
  cisco.dnac.network_settings_workflow_manager:
    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:
    - network_management_details:
      - site_name: string
        settings:
          network_aaa:
            server_type: AAA
            primary_server_address: string
            secondary_server_address: string
            protocol: string
          client_and_endpoint_aaa:
            server_type: AAA
            primary_server_address: string
            secondary_server_address: string
            protocol: string

- name: Adding the network_aaa and client_and_endpoint_aaa ISE server
  cisco.dnac.network_settings_workflow_manager:
    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:
    - network_management_details:
      - site_name: string
        settings:
          network_aaa:
            server_type: ISE
            pan_address: string
            primary_server_address: string
            protocol: string
          client_and_endpoint_aaa:
            server_type: ISE
            pan_address: string
            primary_server_address: string
            protocol: string

返回值

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

描述

response_1

字典

一个字典或列表,其中包含 Cisco Catalyst Center Python SDK 返回的响应。

返回: 始终

示例: {"executionId": "string", "executionStatusUrl": "string", "message": "string"}

response_2

字典

一个字典或列表,其中包含 Cisco Catalyst Center Python SDK 返回的响应。

返回: 始终

示例: {"executionId": "string", "executionStatusUrl": "string", "message": "string"}

response_3

字典

一个字典或列表,其中包含 Cisco Catalyst Center Python SDK 返回的响应。

返回: 始终

示例: {"executionId": "string", "executionStatusUrl": "string", "message": "string"}

作者

  • Muthu Rakesh (@MUTHU-RAKESH-27) Madhan Sankaranarayanan (@madhansansel) Megha Kandari (@kandarimegha)