cisco.dnac.sda_host_port_onboarding_workflow_manager 模块 – 在 Cisco Catalyst Center 中管理 SD-Access Fabric 中的主机端口加入。
注意
此模块是 cisco.dnac 集合 (版本 6.25.0) 的一部分。
如果您正在使用 ansible
包,则可能已经安装了此集合。 它不包含在 ansible-core
中。 要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install cisco.dnac
。 您需要进一步的要求才能使用此模块,有关详细信息,请参阅 要求。
要在 playbook 中使用它,请指定:cisco.dnac.sda_host_port_onboarding_workflow_manager
。
cisco.dnac 6.17.0 中的新增功能
概要
管理主机加入操作,例如在 SD-Access Fabric 中添加、更新和删除网络设备的端口分配和端口通道。
API 用于在 Cisco Catalyst Center 的 SD-Access Fabric 角色中创建网络设备的端口分配。
API 用于在 Cisco Catalyst Center 的 SD-Access Fabric 角色中更新网络设备的端口分配。
API 用于在 Cisco Catalyst Center 的 SD-Access Fabric 角色中删除网络设备的端口分配。
API 用于在 Cisco Catalyst Center 的 SD-Access Fabric 角色中创建网络设备的端口通道。
API 用于在 Cisco Catalyst Center 的 SD-Access Fabric 角色中更新网络设备的端口通道。
API 用于在 Cisco Catalyst Center 的 SD-Access Fabric 角色中删除网络设备的端口通道。
要求
执行此模块的主机需要以下要求。
dnacentersdk >= 2.9.2
python >= 3.9
参数
参数 |
注释 |
---|---|
一个列表,其中包含用于在 Cisco Catalyst Center 中添加/更新/删除 SD-Access Fabric 角色中网络设备的端口分配或端口通道的详细配置。 |
|
SD-Access Fabric 中目标设备的主机名,需要在该设备上配置访问设备端口。 必须提供网络设备的主机名或 IP 地址,才能执行端口分配或端口通道操作。 指定的主机名必须与 Cisco Catalyst Center 的库存部分中显示的主机名相同。 例如 - “DC-T-9300.cisco.local” 注意 - 如果在 “deleted” 状态下仅提供 “ip_address” 或 “hostname”,则将删除为指定 Fabric 设备配置的所有端口分配和端口通道。 |
|
SD-Access Fabric 中目标设备的 IP 地址,需要在该设备上配置访问设备端口。 必须提供网络设备的主机名或 IP 地址,才能执行端口分配或端口通道操作。 指定的 IP 地址必须与 Cisco Catalyst Center 的库存部分中显示的管理 IP 匹配。 例如 - “204.1.2.2” 注意 - 如果在 “deleted” 状态下仅提供 “ip_address” 或 “hostname”,则将删除为指定 Fabric 设备配置的所有端口分配和端口通道。 |
|
一个列表,其中包含用于在 Cisco Catalyst Center 中添加、更新或删除端口分配的配置详细信息。 “interface_name” 和 “connected_device_type” 字段是添加和更新端口分配操作所必需的。 对于更新端口通道操作,可以更新的参数包括 “data_vlan_name”、“voice_vlan_name”、“authentication_template_name” 和 “interface_description”。 对于删除端口分配操作,有效参数是 “interface_name”、“data_vlan_name” 和 “voice_vlan_name”。 如果提供了所有三个参数,则仅删除与所有指定条件匹配的端口分配(即,应用 AND 筛选)。 |
|
指定在端口分配操作期间应用于端口的身份验证模板。 可用选项是 “No Authentication”、“Open Authentication”、“Closed Authentication” 和 “Low Impact”。 所有设备类型的默认 “authentication_template_name” 是 “No Authentication”。 对于连接的设备类型 “TRUNKING_DEVICE”,必须将 “authentication_template_name” 设置为 “No Authentication”。 安全/可扩展组仅支持 “No Authentication” 配置文件。 选择
|
|
指定需要在指定接口上加入的接入设备类型。 连接的设备类型的有效选项是 - “USER_DEVICE”、“ACCESS_POINT” 和 “TRUNKING_DEVICE”。 TRUNKING_DEVICE - 将接口配置为中继端口。 此连接的设备类型不需要其他参数。 如果提供了 “authentication_template_name”,则在配置 “TRUNKING_DEVICE” 时必须将其设置为 “No Authentication”。 ACCESS_POINT - 配置端口以连接接入点。 在端口分配中配置 “ACCESS_POINT” 设备时,需要 “data_vlan_name” 参数。 可选地,还可以指定 “authentication_template_name” 和 “interface_description”。 USER_DEVICE - 配置端口以连接到主机设备,例如 IP 电话、计算机或笔记本电脑。 配置 “USER_DEVICE” 时,至少需要一个 VLAN(“data_vlan_name” 或 “voice_vlan_name”)。 可选参数包括 “security_group_name”、“authentication_template_name” 和 “interface_description”。 注意 - 除非配置的协议是 PAGP,否则“connected_device_type”无法从“TRUNK”更新为“EXTENDED_NODE”。 选择
|
|
指定要分配给端口的数据 VLAN 名称或 IP 地址池。 当 connected_device_type 设置为 ACCESS_POINT 时,此参数是必需的。 配置“USER_DEVICE”时,至少需要一个 VLAN(“data_vlan_name”或“voice_vlan_name”)。 |
|
端口分配接口的描述。 |
|
指定需要在 Fabric 设备上执行端口分配操作的端口或接口的名称。 添加或更新端口分配时,此参数是必需的。 例如 - “GigabitEthernet2/1/1” |
|
指定端口分配的安全组或可扩展组名称。 安全/可扩展组仅支持 “No Authentication” 配置文件。 |
|
指定要分配给端口的语音 VLAN 名称或 IP 地址池。 配置“USER_DEVICE”时,至少需要一个 VLAN(“data_vlan_name”或“voice_vlan_name”)。 |
|
包含在 Cisco Catalyst Center 中添加、更新或删除 Fabric 边缘及其远程连接设备之间的端口通道的配置详细信息的列表。 “interface_names”和“connected_device_type”字段对于添加和更新端口通道操作是必需的。 对于更新端口通道操作,可以更新的参数包括“connected_device_type”和“port_channel_description”。 对于删除端口通道操作,有效的参数是“port_channel_name”和“connected_device_type”。如果提供了这两个参数,则仅删除符合指定条件的端口通道(即,应用 AND 过滤)。 |
|
指定连接到端口通道的设备类型。有效选项为“TRUNK”或“EXTENDED_NODE”。 要在 Fabric 边缘节点和扩展节点之间,或在两个扩展节点之间创建端口通道,请选择“EXTENDED_NODE”。 要创建一侧为 Fabric 边缘节点或扩展节点,另一侧为第三方设备或服务器端口的端口通道,请选择“TRUNK”。 选择
|
|
SD-Access Fabric 中目标设备的端口/接口列表,需要在这些端口/接口上配置端口通道。 对于“PAGP”和“ON”协议,interface_names 中最多支持 8 个端口。 对于“LACP”协议,interface_names 中最多支持 16 个端口。 示例 - [“TwoGigabitEthernet2/0/1”, “TwoGigabitEthernet2/0/2”, “TwoGigabitEthernet2/0/3”] |
|
端口通道的描述。 |
|
指定 SD-Access Fabric 中需要删除的现有端口通道的名称。 此参数仅适用于删除端口通道操作。 |
|
指定要在端口通道上配置的特定连接设备类型的适当协议。 有效选项为“ON”、“LACP”和“PAGP”。 默认情况下,对于“connected_device_type” - “EXTENDED_NODE”,协议为“ON”。 默认情况下,对于“connected_device_type” - “TRUNK”,协议为“LACP”。 初始配置后,无法更新协议字段。 除非配置的协议是 PAGP,否则“connected_device_type”无法从“TRUNK”更新为“EXTENDED_NODE”。 选择
|
|
设置为 True,以在应用 playbook 配置后验证 Cisco Catalyst Center 配置。 选择
|
|
定义 API 调用以检索任务详细信息的超时时间(以秒为单位)。如果在此期间未收到任务详细信息,该过程将结束,并记录超时通知。 默认值: |
|
指示是否在 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 关联的端口号。 默认值: |
|
指定连续调用 API 以检索任务详细信息的时间间隔(以秒为单位)。 默认值: |
|
用于在 Cisco Catalyst Center 进行身份验证的用户名。 默认值: |
|
启用或禁用 SSL 证书验证的标志。 选择
|
|
指定 SDK 应使用的 Cisco Catalyst Center 的版本。 默认值: |
|
模块执行后 Cisco Catalyst Center 的所需状态。 选择
|
|
用于 Cisco Catalyst Center SDK 的标志,以启用针对 JSON 架构验证请求正文的功能。 选择
|
注释
注意
使用的 SDK 方法有 - devices.Devices.get_device_list - sda.SDA.get_device_info - site_design.SiteDesigns.get_sites - sda.SDA.get_fabric_sites - sda.SDA.get_port_assignments - sda.SDA.get_port_channels - sda.SDA.add_port_assignments - sda.SDA.update_port_assignments - sda.SDA.delete_port_assignments - sda.SDA.add_port_channels - sda.SDA.update_port_channels - sda.SDA.update_port_channels
使用的路径有 - GET /dna/intent/api/v1/network-device - GET /dna/intent/api/v1/business/sda/device - GET /dna/intent/api/v1/sites - GET /dna/intent/api/v1/sda/fabricSites - GET /dna/intent/api/v1/sda/portAssignments - GET /dna/intent/api/v1/sda/portChannels - POST /dna/intent/api/v1/sda/portAssignments - PUT /dna/intent/api/v1/sda/portAssignments - DELETE /dna/intent/api/v1/sda/portAssignments - POST /dna/intent/api/v1/sda/portChannels - PUT /dna/intent/api/v1/sda/portChannels - DELETE /dna/intent/api/v1/sda/portChannels
不支持
check_mode
该插件在控制节点上运行,不使用任何 Ansible 连接插件,而是使用来自 Cisco Catalyst Center SDK 的嵌入式连接管理器
以 dnac_ 开头的参数由 Cisco Catalyst Center Python SDK 用于建立连接
示例
- name: Add port interfaces and port channels for a specific fabric device
cisco.dnac.sda_host_port_onboarding_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:
- ip_address: "204.1.2.2"
port_assignment_details:
- interface_name: "FortyGigabitEthernet1/1/1"
connected_device_type: "TRUNKING_DEVICE"
- interface_name: "FortyGigabitEthernet1/1/2"
connected_device_type: "TRUNKING_DEVICE"
authentication_template_name: "No Authentication"
interface_description: "Trunk Port"
- interface_name: "FortyGigabitEthernet2/1/1"
connected_device_type: "ACCESS_POINT"
data_vlan_name: "AG_23"
- interface_name: "FortyGigabitEthernet2/1/2"
connected_device_type: "ACCESS_POINT"
data_vlan_name: "AG_23"
authentication_template_name: "No Authentication"
interface_description: "Access Point Port"
- interface_name: "GigabitEthernet1/1/1"
connected_device_type: "ACCESS_POINT"
data_vlan_name: "AG_23"
authentication_template_name: "Open Authentication"
interface_description: "Access Point Port"
- interface_name: "GigabitEthernet1/1/2"
connected_device_type: "ACCESS_POINT"
data_vlan_name: "AG_23"
authentication_template_name: "Closed Authentication"
interface_description: "Access Point Port"
- interface_name: "GigabitEthernet1/1/3"
connected_device_type: "ACCESS_POINT"
data_vlan_name: "AG_23"
authentication_template_name: "Low Impact"
interface_description: "Access Point Port"
- interface_name: "GigabitEthernet1/1/4"
connected_device_type: "USER_DEVICE"
data_vlan_name: "AG_VLAN_23"
- interface_name: "GigabitEthernet2/1/1"
connected_device_type: "USER_DEVICE"
voice_vlan_name: "VOICE_VLAN_23"
- interface_name: "GigabitEthernet2/1/2"
connected_device_type: "USER_DEVICE"
data_vlan_name: "AG_23"
voice_vlan_name: "VOICE_VLAN_23"
- interface_name: "GigabitEthernet2/1/3"
connected_device_type: "USER_DEVICE"
data_vlan_name: "AG_23"
voice_vlan_name: "VOICE_VLAN_23"
security_group_name: "Guests"
- interface_name: "GigabitEthernet2/1/4"
connected_device_type: "USER_DEVICE"
data_vlan_name: "AG_23"
voice_vlan_name: "VOICE_VLAN_23"
security_group_name: "Guests"
authentication_template_name: "No Authentication"
- interface_name: "GigabitEthernet2/1/4"
connected_device_type: "USER_DEVICE"
data_vlan_name: "AG_23"
security_group_name: "Guests"
authentication_template_name: "Closed Authentication"
- interface_name: "GigabitEthernet2/1/4"
connected_device_type: "USER_DEVICE"
voice_vlan_name: "VOICE_VLAN_23"
authentication_template_name: "Low Impact"
interface_description: "User Device"
port_channel_details:
- interface_names: ["TenGigabitEthernet1/0/37", "TenGigabitEthernet1/0/38", "TenGigabitEthernet1/0/39"]
connected_device_type: "TRUNK"
- interface_names: ["TenGigabitEthernet1/0/43", "TenGigabitEthernet1/0/44"]
connected_device_type: "TRUNK"
protocol: "ON"
- interface_names: ["TenGigabitEthernet1/0/45", "TenGigabitEthernet1/0/46", "TenGigabitEthernet1/0/47", "TenGigabitEthernet1/0/48"]
connected_device_type: "TRUNK"
protocol: "LACP"
- interface_names: ["TenGigabitEthernet1/1/2", "TenGigabitEthernet1/1/3", "TenGigabitEthernet1/1/4"]
connected_device_type: "TRUNK"
protocol: "PAGP"
port_channel_description: "Trunk port channel"
- interface_names: ["TenGigabitEthernet1/1/5", "TenGigabitEthernet1/1/6"]
connected_device_type: "EXTENDED_NODE"
- interface_names: ["TenGigabitEthernet1/1/7", "TenGigabitEthernet1/1/8"]
connected_device_type: "EXTENDED_NODE"
protocol: "PAGP"
port_channel_description: "extended node port channel"
- name: Update port interfaces and port channels for a specific fabric device
cisco.dnac.sda_host_port_onboarding_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:
- hostname: "DC-T-9300.cisco.local"
port_assignment_details:
- interface_name: "FortyGigabitEthernet1/1/1"
connected_device_type: "TRUNKING_DEVICE"
interface_description: "Trunking device on port 111"
- interface_name: "GigabitEthernet2/1/4"
connected_device_type: "USER_DEVICE"
data_vlan_name: "AG_VLAN_23"
security_group_name: "Guests"
authentication_template_name: "Closed Authentication"
- interface_name: "GigabitEthernet2/1/4"
connected_device_type: "USER_DEVICE"
data_vlan_name: "AG_23"
security_group_name: "Guests"
authentication_template_name: "Closed Authentication"
interface_description: "User device at port 214"
port_channel_details:
- interface_names: ["TenGigabitEthernet1/1/2", "TenGigabitEthernet1/1/3", "TenGigabitEthernet1/1/4"]
connected_device_type: "EXTENDED_NODE"
protocol: 'PAGP'
port_channel_description: "Trunk port channel"
- name: Delete ALL port assignments and port channels for the fabric device using hostname
cisco.dnac.sda_host_port_onboarding_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:
- hostname: "DC-T-9300.cisco.local"
- name: Delete ALL port assignments and port channels for the fabric device using ip_address
cisco.dnac.sda_host_port_onboarding_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:
- ip_address: "204.1.2.2"
- name: Delete specific interfaces and port channels using interface names and port channel name
cisco.dnac.sda_host_port_onboarding_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:
- ip_address: "204.1.2.2"
port_assignment_details:
- interface_name: "FortyGigabitEthernet2/1/2"
data_vlan_name: "AG_23"
- interface_name: "GigabitEthernet2/1/3"
voice_vlan_name: "VOICE_VLAN_23"
port_channel_details:
- port_channel_name: "Port-channel2"
connected_device_type: "TRUNK"
- port_channel_name: "Port-channel6"
connected_device_type: "EXTENDED_NODE"
- name: Delete specific interfaces and port channels using interface names and port channel name
cisco.dnac.sda_host_port_onboarding_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:
- ip_address: "204.1.2.2"
port_assignment_details:
- interface_name: "FortyGigabitEthernet1/1/1"
- interface_name: "FortyGigabitEthernet1/1/2"
- interface_name: "GigabitEthernet2/1/1"
- interface_name: "TenGigabitEthernet1/0/37"
- interface_name: "TenGigabitEthernet1/0/38"
- interface_name: "TenGigabitEthernet1/0/39"
port_channel_details:
- port_channel_name: "Port-channel2"
- port_channel_name: "Port-channel5"
- port_channel_name: "Port-channel6"
- name: Delete interfaces that have specified data vlan assigned
cisco.dnac.sda_host_port_onboarding_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:
- hostname: "DC-T-9300.cisco.local"
port_assignment_details:
- data_vlan_name: "AG_23"
- voice_vlan_name: "VOICE_VLAN_23"
- name: Delete all port channels that have Connected Device Type EXTENDED_NODE
cisco.dnac.sda_host_port_onboarding_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:
- ip_address: "204.1.2.2"
port_channel_details:
- connected_device_type: "EXTENDED_NODE"
返回值
常用返回值记录在此处此处,以下是此模块特有的字段
键 |
描述 |
---|---|
包含 Cisco Catalyst Center Python SDK 返回的响应的字典 返回值: 始终 示例: |
|
一个字符串,包含 Cisco Catalyst Center Python SDK 返回的响应 返回值: 始终 示例: |