cisco.dnac.pnp_intent 模块 – 用于站点和 PnP 相关功能的资源模块
注意
此模块是 cisco.dnac 集合 (版本 6.25.0) 的一部分。
如果您正在使用 ansible
包,您可能已经安装了此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install cisco.dnac
。您需要进一步的要求才能使用此模块,请参阅 要求 了解详细信息。
要在 playbook 中使用它,请指定:cisco.dnac.pnp_intent
。
cisco.dnac 6.6.0 中的新功能
概要
管理 Onboarding Configuration(PnP) 资源的添加设备、声明设备和取消声明设备的操作
API 用于将设备添加到 pnp 库存并将其声明到站点。
API 用于从 pnp 库存中删除设备。
API 用于从错误状态重置设备。
要求
以下要求需要在执行此模块的主机上满足。
dnacentersdk == 2.6.10
python >= 3.9
参数
参数 |
注释 |
---|---|
正在管理的设备的详细信息列表。 |
|
提供将尚未存在的设备添加到 PnP 数据库所需的特定于设备的信息。 要添加单个设备,该列表应仅包含一组设备信息。如果还提供了站点名称,则可以在添加后立即声明该设备。 对于批量导入,该列表必须包含多个设备的信息。批量导入仅用于添加设备;必须使用单独的任务或配置来执行声明。 |
|
定义声明后 PnP 设备的所需主机名。 主机名只能在声明过程中分配或更改,而不能在批量或单个设备添加过程中分配或更改。 |
|
Sudi 身份验证要求的标志。 选项
|
|
Pnp 设备的 pid。 |
|
Pnp 设备的 serial_number。 |
|
表示 PnP 设备的入职状态。 可能的值为“Unclaimed”、“Claimed”或“Provisioned”。 |
|
用于 ping 的无线控制器的网关 IP 地址 |
|
是否将要配置的镜像标记为黄金镜像 选项
|
|
要在设备上配置的镜像名称 |
|
指定无线控制器用于即插即用 (PnP) 的接口名称。确保此接口在声明设备之前已在控制器上预配置。 |
|
指定即插即用 (PnP) 设备的设备类型。 - 选项包括“Default”、“CatalystWLC”、“AccessPoint”或“StackSwitch”。 - “Default”适用于交换机和路由器。 - 对于 9800 系列无线控制器,应选择“CatalystWLC”。 - 声明接入点时使用“AccessPoint”。 - “StackSwitch”应选择用于作为单个交换机运行的一组交换机,通常在接入层中使用。 选项
|
|
模板所在的项目的名称 默认值: |
|
正在声明的 AP 的射频 (RF) 配置文件。 RF 配置文件允许您一起调整共享公共覆盖区域的 AP 组。 它们选择性地更改无线资源管理将如何在该覆盖区域内操作 AP。 HIGH RF 配置文件允许您使用更大的功率,并允许以更简单的方式连接 AP 和客户端。 TYPICAL RF 配置文件是中等功率和对客户端的中等可见性的混合。 LOW RF 配置文件允许您消耗更少的功率,并且对客户端的可见性最低。 选项
|
|
将声明设备的站点的名称。 |
|
无线控制器的管理 IP 地址 |
|
无线控制器的管理 IP 地址的子网掩码 |
|
要在设备上配置的模板的名称。 从 Cisco Catalyst Center 版本 2.3.7.x 开始,支持 EWLC。 |
|
参数化模板的参数值。 每个变量都有一个需要在字典中以键值对形式传递的值。我们可以将值作为 variable_name:variable_value 传递。 从 Cisco Catalyst Center 版本 2.3.7.x 开始,支持 EWLC。 |
|
分配用于声明无线控制器的 Vlan Id |
|
设置为 True 以在应用 playbook 配置后验证 Cisco Catalyst Center 配置。 选项
|
|
定义用于检索任务详细信息的 API 调用的超时时间(以秒为单位)。如果在此期间未收到任务详细信息,则该过程将结束,并且将记录超时通知。 默认值: |
|
用于 Cisco DNA Center SDK 启用调试的标志。 选项
|
|
Cisco DNA 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 DNA Center 密码。 |
|
Cisco DNA Center 端口。 默认值: |
|
指定连续调用 API 以检索任务详细信息的时间间隔(以秒为单位)。 默认值: |
|
用于身份验证的 Cisco DNA Center 用户名。 默认值: |
|
启用或禁用 SSL 证书验证的标志。 选项
|
|
通知 SDK 使用哪个版本的 Cisco DNA Center。 默认值: |
|
模块完成后 Cisco Catalyst Center 的状态。 选项
|
|
Cisco DNA Center SDK 的标志,用于启用针对 JSON 模式验证请求主体。 选项
|
注释
注意
使用的 SDK 方法是 device_onboarding_pnp.DeviceOnboardingPnp.add_device, device_onboarding_pnp.DeviceOnboardingPnp.get_device_list, device_onboarding_pnp.DeviceOnboardingPnp.claim_a_device_to_a_site, device_onboarding_pnp.DeviceOnboardingPnp.delete_device_by_id_from_pnp, device_onboarding_pnp.DeviceOnboardingPnp.get_device_count, device_onboarding_pnp.DeviceOnboardingPnp.get_device_by_id, device_onboarding_pnp.DeviceOnboardingPnp.update_device, sites.Sites.get_site, software_image_management_swim.SoftwareImageManagementSwim.get_software_image_details, configuration_templates.ConfigurationTemplates.gets_the_templates_available
使用的路径是 post /dna/intent/api/v1/onboarding/pnp-device post /dna/intent/api/v1/onboarding/pnp-device/site-claim post /dna/intent/api/v1/onboarding/pnp-device/{id} get /dna/intent/api/v1/onboarding/pnp-device/count get /dna/intent/api/v1/onboarding/pnp-device put /onboarding/pnp-device/${id} get /dna/intent/api/v1/site get /dna/intent/api/v1/image/importation get /dna/intent/api/v1/template-programmer/template
不支持
check_mode
该插件在控制节点上运行,不使用任何 ansible 连接插件,而是使用 Cisco DNAC SDK 中嵌入的连接管理器
以 dnac_ 开头的参数由 Cisco DNAC Python SDK 用于建立连接
示例
- name: Import multiple switches in bulk only
cisco.dnac.pnp_intent:
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_level: "{{dnac_log_level}}"
dnac_log: True
state: merged
config_verify: True
config:
- device_info:
- serial_number: QD2425L8M7
state: Unclaimed
pid: c9300-24P
is_sudi_required: False
- serial_number: QTC2320E0H9
state: Unclaimed
pid: c9300-24P
hostname: Test-123
- serial_number: ETC2320E0HB
state: Unclaimed
pid: c9300-24P
- name: Add a new EWLC and claim it
cisco.dnac.pnp_intent:
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_level: "{{dnac_log_level}}"
dnac_log: True
state: merged
config_verify: True
config:
- device_info:
- serial_number: FOX2639PAY7
hostname: New_WLC
state: Unclaimed
pid: C9800-CL-K9
site_name: Global/USA/San Francisco/BGL_18
template_name: Ansible_PNP_WLC
template_params:
hostname: IAC-EWLC-Claimed
project_name: Onboarding Configuration
image_name: C9800-40-universalk9_wlc.17.12.01.SPA.bin
golden_image: true
pnp_type: CatalystWLC
static_ip: 204.192.101.10
subnet_mask: 255.255.255.0
gateway: 204.192.101.1
vlan_id: 1101
ip_interface_name: TenGigabitEthernet0/0/0
- name: Claim a pre-added switch, apply a template, and perform an image upgrade for a specific site
cisco.dnac.pnp_intent:
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_level: "{{dnac_log_level}}"
dnac_log: True
state: merged
config_verify: True
config:
- device_info:
- serial_number: FJC271924EQ
hostname: Switch
state: Unclaimed
pid: C9300-48UXM
site_name: Global/USA/San Francisco/BGL_18
template_name: "Ansible_PNP_Switch"
image_name: cat9k_iosxe_npe.17.03.07.SPA.bin
project_name: Onboarding Configuration
template_params:
hostname: SJC-Switch-1
interface: TwoGigabitEthernet1/0/2
- name: Remove multiple devices from the PnP dashboard safely (ignores non-existent devices)
cisco.dnac.pnp_intent:
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_level: "{{dnac_log_level}}"
dnac_log: True
state: deleted
config_verify: True
config:
- device_info:
- serial_number: QD2425L8M7
- serial_number: FTC2320E0HA
- serial_number: FKC2310E0HB
返回值
通用返回值在此处记录 此处,以下是此模块独有的字段
键 |
描述 |
---|---|
一个字典,包含 Cisco Catalyst Center Python SDK 返回的响应 返回: 始终 示例: |
|
一个列表,包含 Cisco Catalyst Center Python SDK 返回的响应 返回: 始终 示例: |
|
一个字符串,包含 Cisco Catalyst Center Python SDK 返回的响应 返回: 始终 示例: |
作者
Abinash Mishra (@abimishr) Madhan Sankaranarayanan (@madhansansel) Rishita Chowdhary (@rishitachowdhary)