• 博客
  • Ansible 社区论坛
  • 文档
Ansible Logo
Ansible 社区文档
Ansible

Ansible 入门

  • Ansible 入门
  • 执行环境入门

安装、升级和配置

  • 安装指南
  • Ansible 移植指南

使用 Ansible

  • 构建 Ansible 清单
  • 使用 Ansible 命令行工具
  • 使用 Ansible Playbook
  • 使用 Ansible Vault 保护敏感数据
  • 使用 Ansible 模块和插件
  • 使用 Ansible 集合
  • 在 Windows 和 BSD 上使用 Ansible
  • Ansible 技巧

为 Ansible 做贡献

  • Ansible 社区指南
  • Ansible 集合贡献者指南
  • ansible-core 贡献者指南
  • 高级贡献者指南
  • Ansible 文档风格指南

扩展 Ansible

  • 开发者指南

常见 Ansible 场景

  • 遗留公共云指南

网络自动化

  • 网络入门
  • 网络高级主题
  • 网络开发者指南

Ansible Galaxy

  • Galaxy 用户指南
  • Galaxy 开发者指南

参考和附录

  • 集合索引
    • Amazon 命名空间中的集合
    • Ansible 命名空间中的集合
    • Arista 命名空间中的集合
    • Awx 命名空间中的集合
    • Azure 命名空间中的集合
    • Check_point 命名空间中的集合
    • Chocolatey 命名空间中的集合
    • Cisco 命名空间中的集合
      • Cisco.Aci
      • Cisco.Asa
      • Cisco.Dnac
        • 描述
        • 插件索引
      • Cisco.Intersight
      • Cisco.Ios
      • Cisco.Iosxr
      • Cisco.Ise
      • Cisco.Meraki
      • Cisco.Mso
      • Cisco.Nxos
      • Cisco.Ucs
    • Cloud 命名空间中的集合
    • Cloudscale_ch 命名空间中的集合
    • Community 命名空间中的集合
    • Containers 命名空间中的集合
    • Cyberark 命名空间中的集合
    • Dellemc 命名空间中的集合
    • F5networks 命名空间中的集合
    • Fortinet 命名空间中的集合
    • Frr 命名空间中的集合
    • Gluster 命名空间中的集合
    • Google 命名空间中的集合
    • Grafana 命名空间中的集合
    • Hetzner 命名空间中的集合
    • Hpe 命名空间中的集合
    • Ibm 命名空间中的集合
    • Ieisystem 命名空间中的集合
    • Infinidat 命名空间中的集合
    • Infoblox 命名空间中的集合
    • Inspur 命名空间中的集合
    • Junipernetworks 命名空间中的集合
    • Kaytus 命名空间中的集合
    • Kubernetes 命名空间中的集合
    • Kubevirt 命名空间中的集合
    • Lowlydba 命名空间中的集合
    • Mellanox 命名空间中的集合
    • Microsoft 命名空间中的集合
    • Netapp 命名空间中的集合
    • Netapp_eseries 命名空间中的集合
    • Netbox 命名空间中的集合
    • Ngine_io 命名空间中的集合
    • Openstack 命名空间中的集合
    • Openvswitch 命名空间中的集合
    • Ovirt 命名空间中的集合
    • Purestorage 命名空间中的集合
    • Sensu 命名空间中的集合
    • Servicenow 命名空间中的集合
    • Splunk 命名空间中的集合
    • T_systems_mms 命名空间中的集合
    • Telekom_mms 命名空间中的集合
    • Theforeman 命名空间中的集合
    • Vmware 命名空间中的集合
    • Vultr 命名空间中的集合
    • Vyos 命名空间中的集合
    • Wti 命名空间中的集合
  • 所有模块和插件的索引
  • Playbook 关键字
  • 返回值
  • Ansible 配置设置
  • 控制 Ansible 的行为:优先级规则
  • YAML 语法
  • Python 3 支持
  • 解释器发现
  • 发布和维护
  • 测试策略
  • 健全性测试
  • 常见问题解答
  • 术语表
  • Ansible 参考:模块实用程序
  • 特殊变量
  • Red Hat Ansible Automation Platform
  • Ansible Automation Hub
  • 记录 Ansible 输出

路线图

  • Ansible 路线图
  • ansible-core 路线图




Ansible
  • 集合索引
  • Cisco 命名空间中的集合
  • Cisco.Dnac
  • cisco.dnac.pnp_intent 模块 – 用于站点和 PnP 相关功能的资源模块


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

参数

参数

注释

config

列表 / 元素=字典 / 必需

正在管理的设备的详细信息列表。

device_info

列表 / 元素=字典 / 必需

提供将尚未存在的设备添加到 PnP 数据库所需的特定于设备的信息。

要添加单个设备,该列表应仅包含一组设备信息。如果还提供了站点名称,则可以在添加后立即声明该设备。

对于批量导入,该列表必须包含多个设备的信息。批量导入仅用于添加设备;必须使用单独的任务或配置来执行声明。

hostname

字符串

定义声明后 PnP 设备的所需主机名。

主机名只能在声明过程中分配或更改,而不能在批量或单个设备添加过程中分配或更改。

is_sudi_required

布尔值

Sudi 身份验证要求的标志。

选项

  • false

  • true

pid

字符串

Pnp 设备的 pid。

serial_number

字符串

Pnp 设备的 serial_number。

state

字符串

表示 PnP 设备的入职状态。

可能的值为“Unclaimed”、“Claimed”或“Provisioned”。

gateway

字符串

用于 ping 的无线控制器的网关 IP 地址

golden_image

布尔值

是否将要配置的镜像标记为黄金镜像

选项

  • false

  • true

image_name

字符串

要在设备上配置的镜像名称

ip_interface_name

字符串

指定无线控制器用于即插即用 (PnP) 的接口名称。确保此接口在声明设备之前已在控制器上预配置。

pnp_type

字符串

指定即插即用 (PnP) 设备的设备类型。 - 选项包括“Default”、“CatalystWLC”、“AccessPoint”或“StackSwitch”。 - “Default”适用于交换机和路由器。 - 对于 9800 系列无线控制器,应选择“CatalystWLC”。 - 声明接入点时使用“AccessPoint”。 - “StackSwitch”应选择用于作为单个交换机运行的一组交换机,通常在接入层中使用。

选项

  • "Default" ← (默认)

  • "CatalystWLC"

  • "AccessPoint"

  • "StackSwitch"

project_name

字符串

模板所在的项目的名称

默认值: "Onboarding Configuration"

rf_profile

字符串

正在声明的 AP 的射频 (RF) 配置文件。

RF 配置文件允许您一起调整共享公共覆盖区域的 AP 组。

它们选择性地更改无线资源管理将如何在该覆盖区域内操作 AP。

HIGH RF 配置文件允许您使用更大的功率,并允许以更简单的方式连接 AP 和客户端。

TYPICAL RF 配置文件是中等功率和对客户端的中等可见性的混合。

LOW RF 配置文件允许您消耗更少的功率,并且对客户端的可见性最低。

选项

  • "HIGH"

  • "LOW"

  • "TYPICAL"

site_name

字符串

将声明设备的站点的名称。

static_ip

字符串

无线控制器的管理 IP 地址

subnet_mask

字符串

无线控制器的管理 IP 地址的子网掩码

template_name

字符串

要在设备上配置的模板的名称。

从 Cisco Catalyst Center 版本 2.3.7.x 开始,支持 EWLC。

template_params

字典

参数化模板的参数值。

每个变量都有一个需要在字典中以键值对形式传递的值。我们可以将值作为 variable_name:variable_value 传递。

从 Cisco Catalyst Center 版本 2.3.7.x 开始,支持 EWLC。

vlan_id

字符串

分配用于声明无线控制器的 Vlan Id

config_verify

布尔值

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

选项

  • false ← (默认)

  • true

dnac_api_task_timeout

整数

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

默认值: 1200

dnac_debug

布尔值

用于 Cisco DNA Center SDK 启用调试的标志。

选项

  • false ← (默认)

  • true

dnac_host

字符串 / 必需

Cisco DNA 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 DNA Center 密码。

dnac_port

字符串

Cisco DNA Center 端口。

默认值: "443"

dnac_task_poll_interval

整数

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

默认值: 2

dnac_username

别名: user

字符串

用于身份验证的 Cisco DNA Center 用户名。

默认值: "admin"

dnac_verify

布尔值

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

选项

  • false

  • true ← (默认)

dnac_version

字符串

通知 SDK 使用哪个版本的 Cisco DNA Center。

默认值: "2.2.3.3"

state

字符串

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

选项

  • "merged" ← (默认)

  • "deleted"

validate_response_schema

布尔值

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

选项

  • false

  • true ← (默认)

注释

注意

  • 使用的 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

返回值

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

键

描述

response_1

字典

一个字典,包含 Cisco Catalyst Center Python SDK 返回的响应

返回: 始终

示例: "{\n  \"response\":\n    {\n      \"response\": String,\n      \"version\": String\n    },\n  \"msg\": String\n}\n"

response_2

列表 / elements=string

一个列表,包含 Cisco Catalyst Center Python SDK 返回的响应

返回: 始终

示例: ["{\n  \"response\": []", "\n  \"msg\": String\n}\n"]

response_3

字典

一个字符串,包含 Cisco Catalyst Center Python SDK 返回的响应

返回: 始终

示例: "{\n  \"response\": String,\n  \"msg\": String\n}\n"

作者

  • Abinash Mishra (@abimishr) Madhan Sankaranarayanan (@madhansansel) Rishita Chowdhary (@rishitachowdhary)

集合链接

  • 问题跟踪器
  • 存储库(来源)
上一个 下一个

© 版权归 Ansible 项目贡献者所有。 最后更新于 2024 年 12 月 19 日。