cisco.dnac.lan_automation_workflow_manager 模块 – 使用 Cisco Catalyst Center 中的 LAN 自动化来自动化网络发现、部署和设备配置。
注意
此模块是 cisco.dnac 集合 (版本 6.25.0) 的一部分。
如果您使用的是 ansible
包,则可能已安装此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用: ansible-galaxy collection install cisco.dnac
。您需要其他要求才能使用此模块,请参阅 要求 以了解详情。
要在 playbook 中使用它,请指定: cisco.dnac.lan_automation_workflow_manager
。
cisco.dnac 6.20.0 中的新增功能
概要
在 Cisco Catalyst Center 中配置 LAN 自动化会话,以自动发现设备并将其集成到网络中。
更新 LAN 自动化设备配置,包括环回地址、主机名和链路配置。
根据超时或发现设备列表完成等条件自动停止正在进行的 LAN 自动化会话,无需显式调用停止 API。
此外,它还提供停止正在进行的 LAN 自动化会话和处理 PnP 设备授权的功能。
要求
以下是执行此模块的主机所需的条件。
dnacentersdk >= 2.9.2
python >= 3.9
参数
参数 |
注释 |
---|---|
包含用于创建和停止 LAN 自动化会话以及更新 LAN 自动化设备的环回地址、主机名和链路配置的详细配置的列表。列表中的每个元素都表示要在 LAN 自动化基础设施上执行的特定操作。 |
|
用于更新通过 LAN 自动化发现的设备设置的配置。 |
|
要使用新主机名更新的设备列表。 |
|
设备的管理 IP 地址。 |
|
设备的新主机名。 |
|
在两台设备之间添加新的链路。 |
|
目标设备上的接口名称。 |
|
目标设备的管理 IP 地址。 |
|
在 LAN 自动化中配置的 IP 池的名称,将从中为新链路分配 IP 地址。 |
|
源设备上的接口名称。 |
|
源设备的管理 IP 地址。 |
|
删除两台设备之间现有的链路。 |
|
目标设备上的接口名称。 |
|
目标设备的管理 IP 地址。 |
|
源设备上的接口名称。 |
|
源设备的管理 IP 地址。 |
|
要使用新的环回 IP 地址更新的设备列表。 |
|
设备的管理 IP 地址。 |
|
设备的新 Loopback0 IP 地址,来自与设备发现站点关联的 LAN 池。 |
|
用于启动或停止 LAN 自动化会话的配置。 |
|
要在会话期间授权的设备的序列号列表。 |
|
发现的设备将被放置的站点层次结构。 |
|
在 LAN 自动化会话期间要发现的设备列表。如果只提供设备列表而没有超时,则一旦发现列表中的所有设备,就会停止处理。可以为会话提供的设备最大数量为 50。如果同时提供了 discovery_devices 列表和超时,则将尝试先发生的停止处理。用户可以选择使用 LAN 自动化“已删除”状态随时停止处理。 |
|
要发现的设备的主机名。 |
|
设备的管理 IP 地址。 |
|
要发现的设备的序列号。 |
|
发现后设备将被放置的站点层次结构。 |
|
LAN 自动化期间发现的深度(例如,主种子设备下方的 1-5 级)。 默认值: |
|
LAN 自动化期间设备发现的超时时间(以分钟为单位)。在此时间之前,不会触发停止处理。在此提供的发现超时后联系的任何设备都不会被处理,并且将尝试重置和重新加载设备以将其恢复到 PnP 代理状态,然后再完成处理。支持的超时范围(以分钟为单位)为 [20-10080]。如果同时提供了“discovery_timeout”和“discovery_devices”,则处理将根据先发生的情况停止。用户始终可以使用 LAN 自动化“已删除”状态强制停止处理。 |
|
在 LAN 自动化会话期间用于自动生成主机名的前缀。 |
|
在 LAN 自动化会话期间使用的 IP 池列表。 |
|
IP 池的名称。 |
|
IP 池在自动化会话中的角色,可以是 MAIN_POOL 或 PHYSICAL_LINK_POOL。 选项
|
|
IS-IS域配置密码。 |
|
指示任务是否应暂停,直到LAN自动化会话完成之后才能继续执行后续任务的标志。如果设置为false,则流程将立即转到下一个任务。 选项
|
|
启用LAN自动化会话中多播路由的标志。 选项
|
|
LAN自动化会话中对等设备的管理IP地址。 |
|
启用会话期间发现的设备的即插即用 (PnP) 授权的标志。 选项
|
|
主设备上用于LAN自动化的接口名称列表。 |
|
LAN自动化会话中主设备或种子设备的管理IP地址。 |
|
启用将IS-IS路由重新分发到BGP的标志。 选项
|
|
应用playbook配置后,设置为true以验证LAN自动化配置。 选项
|
|
等待LAN自动化在Cisco DNA Center上完成任务的最大时间。 默认值: |
|
指示是否在Cisco Catalyst Center SDK中启用了调试。 选项
|
|
Cisco Catalyst Center的主机名。 |
|
启用/禁用playbook执行日志记录的标志。 当为true且提供了dnac_log_file_path时,- 在执行位置创建具有指定名称的日志文件。 当为true且未提供dnac_log_file_path时,- 在执行位置创建名为“dnac.log”的日志文件。 当为false时,- 日志记录被禁用。 如果日志文件不存在,- 它将根据“dnac_log_append”标志以追加或写入模式创建。 如果日志文件存在,- 它将根据“dnac_log_append”标志被覆盖或追加。 选项
|
|
确定文件的模式。设置为True表示“追加”模式。设置为False表示“写入”模式。 选项
|
|
控制日志记录。如果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。 默认值: |
|
设置日志级别的阈值。级别等于或高于此级别的消息将被记录。级别按严重性顺序排列[CRITICAL,ERROR,WARNING,INFO,DEBUG]。 CRITICAL表示严重的错误导致程序停止。仅显示CRITICAL消息。 ERROR表示阻止功能出现的问题。显示ERROR和CRITICAL消息。 WARNING表示潜在的未来问题。显示WARNING、ERROR、CRITICAL消息。 INFO跟踪正常操作。显示INFO、WARNING、ERROR、CRITICAL消息。 DEBUG提供详细的诊断信息。显示所有日志消息。 默认值: |
|
Cisco Catalyst Center身份验证的密码。 |
|
指定与Cisco Catalyst Center关联的端口号。 默认值: |
|
轮询任务完成的间隔(秒)。 默认值: |
|
Cisco Catalyst Center身份验证的用户名。 默认值: |
|
启用或禁用SSL证书验证的标志。 选项
|
|
指定SDK应使用的Cisco Catalyst Center版本。 默认值: |
|
模块完成之后Cisco Catalyst Center的状态。 选项
|
|
Cisco Catalyst Center SDK的标志,用于启用根据JSON模式验证请求正文。 选项
|
注释
注意
等待LAN自动化会话完成时,将首先考虑超时和要发现的设备列表。如果没有提供超时或设备列表,LAN自动化将持续运行直到停止。
要停止LAN自动化会话,请在“deleted”状态下执行相同的详细信息。只需要种子设备IP即可终止会话。
如果在Catalyst Center中选择了设备授权,则将执行PnP授权。LAN自动化将持续运行,直到提供的序列号获得授权,并持续检查设备的状态。如果启用了PnP授权,但没有用于授权或发现的设备列表,则模块将不会等待LAN自动化任务完成。但是,如果设备处于错误状态或未在Catalyst Center上检查授权,则playbook将持续运行,直到设备状态变为活动状态或达到超时值。
使用的SDK方法是:ccc_lan_automation.lanautomation.lan_automation_start_v2 ccc_lan_automation.lanautomation.lan_automation_stop ccc_lan_automation.lanautomation.lan_automation_device_update ccc_lan_automation.lanautomation.lan_automation_active_sessions ccc_lan_automation.lanautomation.lan_automation_status ccc_lan_automation.lanautomation.lan_automation_log ccc_lan_automation.devices.get_device_list ccc_lan_automation.devices.get_interface_details ccc_lan_automation.deviceonboardingpnp.authorize_device ccc_lan_automation.deviceonboardingpnp.get_device_list
不支持
check_mode
插件在控制节点上运行,不使用任何ansible连接插件,而是使用来自Cisco Catalyst Center SDK的嵌入式连接管理器。
以dnac_开头的参数由Cisco Catalyst Center Python SDK用于建立连接。
示例
- name: Start a LAN Automation session without waiting for it to finish
cisco.dnac.lan_automation_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
config_verify: false
state: merged
config:
- lan_automation:
discovered_device_site_name_hierarchy: "Global/USA/SAN JOSE"
peer_device_management_ip_address: "204.1.1.2"
primary_device_management_ip_address: "204.1.1.1"
primary_device_interface_names:
- "HundredGigE1/0/2"
- "HundredGigE1/0/29"
ip_pools:
- ip_pool_name: "underlay_sub"
ip_pool_role: "MAIN_POOL"
- ip_pool_name: "underlay_sub_sj"
ip_pool_role: "PHYSICAL_LINK_POOL"
multicast_enabled: true
redistribute_isis_to_bgp: true
host_name_prefix: "San-Jose"
isis_domain_pwd: "cisco"
discovery_level: 5
discovery_timeout: 40
discovery_devices:
- device_serial_number: "FJC27172JDW"
device_host_name: "SR-LAN-9300-IM1"
device_site_name_hierarchy: "Global/USA/SAN JOSE/BLD23"
device_management_ip_address: "204.1.1.10"
- device_serial_number: "FJC2721261A"
device_host_name: "SR-LAN-9300-IM2"
device_site_name_hierarchy: "Global/USA/SAN JOSE/BLD20"
device_management_ip_address: "204.1.1.11"
launch_and_wait: false
pnp_authorization: false
- name: Start a LAN Automation session with device authorization and waiting for the task to complete
cisco.dnac.lan_automation_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
config_verify: false
state: merged
config:
- lan_automation:
discovered_device_site_name_hierarchy: "Global/USA/SAN JOSE"
peer_device_management_ip_address: "204.1.1.2"
primary_device_management_ip_address: "204.1.1.1"
primary_device_interface_names:
- "HundredGigE1/0/2"
- "HundredGigE1/0/29"
ip_pools:
- ip_pool_name: "underlay_sub"
ip_pool_role: "MAIN_POOL"
- ip_pool_name: "underlay_sub_sj"
ip_pool_role: "PHYSICAL_LINK_POOL"
multicast_enabled: true
redistribute_isis_to_bgp: true
host_name_prefix: "San-Jose"
isis_domain_pwd: "cisco"
discovery_level: 5
discovery_timeout: 40
discovery_devices:
- device_serial_number: "FJC27172JDW"
device_host_name: "SR-LAN-9300-IM1"
device_site_name_hierarchy: "Global/USA/SAN JOSE/BLD23"
device_management_ip_address: "204.1.1.10"
- device_serial_number: "FJC2721261A"
device_host_name: "SR-LAN-9300-IM2"
device_site_name_hierarchy: "Global/USA/SAN JOSE/BLD20"
device_management_ip_address: "204.1.1.11"
launch_and_wait: true
pnp_authorization: true
device_serial_number_authorization:
- "FJC27172JDW"
- "FJC2721261A"
- name: Stop a LAN Automation session
cisco.dnac.lan_automation_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
config_verify: false
state: deleted
config:
- lan_automation:
discovered_device_site_name_hierarchy: "Global/USA/SAN JOSE"
primary_device_management_ip_address: "204.1.1.1"
- name: Update loopback for LAN Automated devices
cisco.dnac.lan_automation_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
config_verify: false
state: merged
config:
- lan_automated_device_update:
loopback_update_device_list:
- device_management_ip_address: "204.1.3.160"
new_loopback0_ip_address: "91.1.2.6"
- device_management_ip_address: "204.1.2.163"
new_loopback0_ip_address: "91.1.2.5"
- name: Update hostname for LAN Automated devices
cisco.dnac.lan_automation_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
config_verify: false
state: merged
config:
- lan_automated_device_update:
hostname_update_devices:
- device_management_ip_address: "204.1.1.1"
new_host_name: "SR-LAN-9300-im1"
- device_management_ip_address: "91.1.1.6"
new_host_name: "Test"
- name: Add link for LAN Automated devices
cisco.dnac.lan_automation_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
config_verify: false
state: merged
config:
- lan_automated_device_update:
link_add:
source_device_management_ip_address: "204.1.1.1"
source_device_interface_name: "HundredGigE1/0/2"
destination_device_management_ip_address: "204.1.1.4"
destination_device_interface_name: "HundredGigE1/0/5"
ip_pool_name: "underlay_sj"
- name: Delete link between LAN Automated devices
cisco.dnac.lan_automation_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
config_verify: false
state: merged
config:
- lan_automated_device_update:
link_delete:
source_device_management_ip_address: "204.1.1.1"
source_device_interface_name: "HundredGigE1/0/2"
destination_device_management_ip_address: "204.1.1.4"
destination_device_interface_name: "HundredGigE1/0/5"
- name: Apply loopback and hostname updates for LAN Automated devices
cisco.dnac.lan_automation_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
config_verify: false
state: merged
config:
- lan_automated_device_update:
loopback_update_device_list:
- device_management_ip_address: "204.1.1.160"
new_loopback0_ip_address: "10.4.18.101"
hostname_update_devices:
- device_management_ip_address: "91.1.3.2"
new_host_name: "SR-LAN-9300-SJ"
- device_management_ip_address: "204.1.1.5"
new_host_name: "SR-LAN-9500-SJ"
返回值
常见返回值已在此处记录,以下是此模块特有的字段。
键 |
描述 |
---|---|
包含Cisco Catalyst Center Python SDK返回的响应的字典或列表。 返回:始终 示例: |