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

列表 / 元素=字符串

DHCP 服务器 IP,负责自动将 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

字符串

横幅消息(例如:您好)。

保留现有横幅

布尔值

保留现有横幅消息。

选项

  • 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 的 IP v4 全局池地址,例如 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 中添加

指定分配给 Ip v6 全局 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"

  • "Management"

  • "Service"

  • "WAN"

prev_name

字符串

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

site_name

字符串

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

slaac_support

布尔值

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

选项

  • false

  • true

config_verify

布尔值

设置为 True 以在应用 playbook 配置后验证 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

布尔值

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

当为 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_ 开头的参数供思科 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

字典

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

返回: 始终

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

response_2

字典

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

返回: 始终

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

response_3

字典

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

返回: 始终

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

作者

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