cisco.mso.ndo_template 模块 – 管理 Cisco Nexus Dashboard Orchestrator (NDO) 上的模板。

注意

此模块是 cisco.mso 集合(版本 2.9.0)的一部分。

如果您正在使用 ansible 包,您可能已经安装了这个集合。它不包含在 ansible-core 中。要检查是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install cisco.mso。您需要其他要求才能使用此模块,请参阅 要求 以了解详细信息。

要在 Playbook 中使用它,请指定:cisco.mso.ndo_template

概要

  • 管理 Cisco Nexus Dashboard Orchestrator (NDO) 上的模板。

要求

执行此模块的主机需要以下要求。

  • Multi Site Orchestrator v2.1 或更新版本

参数

参数

注释

host

别名: hostname

字符串

ACI Multi Site Orchestrator 主机的 IP 地址或主机名。

如果未在任务中指定该值,则将使用环境变量 MSO_HOST 的值。

login_domain

字符串

用于身份验证的登录域名。

默认值为 Local。

如果未在任务中指定该值,则将使用环境变量 MSO_LOGIN_DOMAIN 的值。

当使用 HTTPAPI 连接插件时,如果未指定此属性,则将使用清单变量 ansible_httpapi_login_domain

output_level

字符串

影响此 MSO 模块的输出。

normal 表示标准输出,包括 current 字典

info 添加信息输出,包括 previousproposedsent 字典

debug 添加调试输出,包括 filter_stringmethodresponsestatusurl 信息

如果未在任务中指定该值,则将使用环境变量 MSO_OUTPUT_LEVEL 的值。

选择

  • "debug"

  • "info"

  • "normal" ← (默认)

password

字符串

用于身份验证的密码。

如果未在任务中指定该值,则将使用环境变量 MSO_PASSWORDANSIBLE_NET_PASSWORD 的值。

port

整数

用于 REST 连接的端口号。

默认值取决于参数 `use_ssl`。

如果未在任务中指定该值,则将使用环境变量 MSO_PORT 的值。

sites

别名: site

列表 / 元素=字典

附加到模板的站点列表。

type=l3outtype=monitoring_tenanttype=monitoring_access 时是必需的。

设置为一个空列表 sites=[] 以从模板中删除所有附加的站点。

设置为 null sites=null 或不提供 sites 以避免更改附加到模板的站点。

name

字符串

附加到模板的站点的名称。

state

字符串

使用 absent 进行删除。

使用 query 列出一个对象或多个对象。

使用 present 进行创建或更新。

选择

  • "absent"

  • "query" ← (默认)

  • "present"

template

别名: name

字符串

模板的名称。

template_id

别名: id

字符串

模板的 ID。

当需要更新 template 时,此参数是必需的。

template_type

别名: type

字符串

模板的类型。

选择

  • "tenant"

  • "l3out"

  • "fabric_policy"

  • "fabric_resource"

  • "monitoring_tenant"

  • "monitoring_access"

  • "service_device"

tenant

字符串

附加到模板的租户的名称。

type=tenant, type=l3out, 0(type=monitoring_tenant) 或 0(type=service_device) 时,此参数是必需的。

timeout

整数

套接字级别的超时时间,以秒为单位。

默认值为 30 秒。

如果任务中未指定该值,则将使用环境变量 MSO_TIMEOUT 的值。

use_proxy

布尔值

如果为 false,即使目标主机上的环境变量中定义了代理,也不会使用代理。

如果任务中未指定该值,则将使用环境变量 MSO_USE_PROXY 的值。

默认值为 true

选择

  • false

  • true

use_ssl

布尔值

如果为 false,则将使用 HTTP 连接而不是默认的 HTTPS 连接。

如果任务中未指定该值,则将使用环境变量 MSO_USE_SSL 的值。

当使用 HTTPAPI 连接插件时,如果未指定此属性,则将使用库存变量 ansible_httpapi_use_ssl

当使用 HTTPAPI 连接插件(mso 或 nd)时,默认值为 false,当使用旧连接方法(仅适用于 mso)时,默认值为 true

选择

  • false

  • true

username

字符串

用于身份验证的用户名。

如果任务中未指定该值,则将使用环境变量 MSO_USERNAMEANSIBLE_NET_USERNAME 的值。

validate_certs

布尔值

如果为 false,则不会验证 SSL 证书。

仅当在个人控制的站点上使用自签名证书时,才应将其设置为 false

如果任务中未指定该值,则将使用环境变量 MSO_VALIDATE_CERTS 的值。

默认值为 true

选择

  • false

  • true

注意

注意

  • 此模块编写的目的是为了支持 Multi Site Orchestrator v2.1 或更新版本。某些或所有功能可能无法在早期版本上运行。

示例

- name: Create a new tenant policy template
  cisco.mso.ndo_template:
    host: mso_host
    username: admin
    password: SomeSecretPassword
    template: ansible_tenant_policy
    template_type: tenant
    tenant: ansible_test_tenant
    state: present

- name: Create a new l3out policy template
  cisco.mso.ndo_template:
    host: mso_host
    username: admin
    password: SomeSecretPassword
    template: ansible_l3out_policy_template
    template_type: l3out
    tenant: ansible_test_tenant
    sites:
      - name: ansible_test_site
    state: present

- name: Query a tenant policy template
  cisco.mso.ndo_template:
    host: mso_host
    username: admin
    password: SomeSecretPassword
    template: ansible_tenant_policy
    template_type: tenant
    state: query
  register: query_new_tenant_policy_template

- name: Query all tenant policy templates
  cisco.mso.ndo_template:
    host: mso_host
    username: admin
    password: SomeSecretPassword
    template_type: tenant
    state: query
  register: query_all

- name: Query all templates
  cisco.mso.ndo_template:
    host: mso_host
    username: admin
    password: SomeSecretPassword
    state: query
  register: query_all

- name: Delete a tenant policy template
  cisco.mso.ndo_template:
    host: mso_host
    username: admin
    password: SomeSecretPassword
    template: ansible_tenant_policy
    template_type: tenant
    state: absent

作者

  • Akini Ross (@akinross)