cisco.aci.aci_vmm_controller 模块 – 管理虚拟域配置文件 (vmm:CtrlrP) 的 VMM 控制器

注意

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

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

要安装它,请使用: ansible-galaxy collection install cisco.aci

要在 Playbook 中使用它,请指定:cisco.aci.aci_vmm_controller

概要

  • 在 Cisco ACI 结构上管理 vCenter 虚拟域。

参数

参数

注释

annotation

字符串

用于注释对象的用户定义字符串。

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

如果任务中未指定该值,且环境变量 ACI_ANNOTATION 也未指定,则将使用默认值。

默认: "orchestrator:ansible"

certificate_name

别名:cert_name

字符串

附加到用于基于签名身份验证的 APIC AAA 用户的 X.509 证书名称。

如果提供了 private_key 文件名,则此默认值为 private_key 的基本名称,不带扩展名。

如果为 private_key 提供了 PEM 格式的内容,则此默认值为 username 值。

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

controller_hostname

字符串

控制器的主机名或 IP 地址。

credentials

字符串

要使用的 VMM 凭据的名称

datacenter

字符串

数据中心的名称,如 vCenter 中所见

domain

别名:domain_name, domain_profile

字符串

虚拟域配置文件的名称。

dvs_version

字符串

VMware DVS 的版本。

选择

  • "unmanaged"

  • "5.1"

  • "5.5"

  • "6.0"

  • "6.5"

  • "6.6"

  • "7.0"

  • "8.0"

host

别名:hostname

字符串

Ansible 控制主机可解析的 APIC 的 IP 地址或主机名。

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

inband_management_epg

字符串

控制器要使用的管理 EPG 的名称。目前仅支持带内管理 EPG。

name

字符串

VMM 控制器的名称。

name_alias

字符串

当前对象的别名。这与 ACI 中的 nameAlias 字段相关。

output_level

字符串

影响此 ACI 模块的输出。

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

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

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

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

选择

  • "debug"

  • "info"

  • "normal" ←(默认)

output_path

字符串

将用于转储模块生成的 ACI JSON 配置对象的文件路径。

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

password

字符串

用于身份验证的密码。

此选项与 private_key 互斥。如果也提供了 private_key,则将改用它。

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

port

整数

用于 REST 连接的端口号。

默认值取决于参数 use_ssl

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

private_key

aliases: cert_key

字符串

用于基于签名身份验证的 PEM 格式私钥文件或私钥内容。

此值还会影响使用的默认 certificate_name

此选项与 password 互斥。如果也提供了 password,它将被忽略。

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

state

字符串

使用 presentabsent 来添加或删除。

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

选择

  • "absent"

  • "present" ← (默认)

  • "query"

stats_collection

字符串

是否启用统计信息收集。

选择

  • "enabled"

  • "disabled" ← (默认)

suppress_previous

aliases: no_previous, ignore_previous

boolean

如果为 true,则在向 APIC 发送 POST 更新之前,不会发送 GET 请求来检查先前状态。

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

默认值为 false

警告 - 这将导致先前的返回值为空。

不会检查对象的先前状态,并且 POST 更新将包含所有属性。

选择

  • false

  • true

suppress_verification

aliases: no_verification, no_verify, suppress_verify, ignore_verify, ignore_verification

boolean

如果为 true,则在向 APIC 发送 POST 更新之后,不会发送验证 GET 请求。

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

默认值为 false

警告 - 这将导致当前返回值设置为建议值。

在单个任务中,无法验证包括默认值在内的当前对象。

选择

  • false

  • true

timeout

整数

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

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

默认值为 30。

use_proxy

boolean

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

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

默认值为 true。

选择

  • false

  • true

use_ssl

boolean

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

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

当连接为本地连接时,默认值为 true。

选择

  • false

  • true

username

aliases: user

字符串

用于身份验证的用户名。

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

默认值为 admin。

validate_certs

boolean

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

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

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

默认值为 true。

选择

  • false

  • true

vm_provider

字符串

VMM 域的 VM 平台。

ACI v3.0 中添加了对 Kubernetes 的支持。

ACI v3.1 中添加了对 CloudFoundry、OpenShift 和 Red Hat 的支持。

选择

  • "cloudfoundry"

  • "kubernetes"

  • "microsoft"

  • "openshift"

  • "openstack"

  • "redhat"

  • "vmware"

另请参阅

另请参阅

cisco.aci.aci_domain

管理物理、虚拟、桥接、路由或 FC 域配置文件 (phys:DomP, vmm:DomP, l2ext:DomP, l3ext:DomP 和 fc:DomP)。

cisco.aci.aci_vmm_credential

管理虚拟域凭证配置文件 (vmm:UsrAccP)。

APIC 管理信息模型参考

有关内部 APIC 类 vmm:DomP 的更多信息

Cisco ACI 指南

有关如何使用 Ansible 管理 ACI 基础架构的详细信息。

开发 Cisco ACI 模块

有关如何编写自己的 Cisco ACI 模块以进行贡献的详细指南。

示例

- name: Add controller to VMware VMM domain
  cisco.aci.aci_vmm_controller:
    host: apic
    username: admin
    password: SomeSecretPassword
    domain: vmware_dom
    name: vCenter1
    controller_hostname: 10.1.1.1
    dvs_version: unmanaged
    vm_provider: vmware
    credentials: vCenterCredentials1
    datacenter: DC1
    state: present

- name: Remove controller from VMware VMM domain
  cisco.aci.aci_vmm_controller:
    host: apic
    username: admin
    password: SomeSecretPassword
    domain: vmware_dom
    name: vCenter1
    vm_provider: vmware
    state: absent

- name: Query a specific VMware VMM controller
  cisco.aci.aci_vmm_controller:
    host: apic
    username: admin
    password: SomeSecretPassword
    domain: vmware_dom
    name: vCenter1
    vm_provider: vmware
    state: query
  delegate_to: localhost
  register: query_result

- name: Query all VMware VMM controller
  cisco.aci.aci_vmm_controller:
    host: apic
    username: admin
    password: SomeSecretPassword
    state: query
  delegate_to: localhost
  register: query_result

返回值

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

Key

描述

current

list / elements=string

模块完成运行后来自 APIC 的现有配置

Returned: success

Sample: [{"fvTenant": {"attributes": {"descr": "生产环境", "dn": "uni/tn-production", "name": "production", "nameAlias": "", "ownerKey": "", "ownerTag": ""}}}]

error

dictionary

从 APIC 返回的错误信息

Returned: failure

Sample: {"code": "122", "text": "未知管理对象类 foo"}

filter_string

字符串

用于请求的筛选字符串

Returned: failure or debug

Sample: "?rsp-prop-include=config-only"

method

字符串

用于向 APIC 发送请求的 HTTP 方法

Returned: failure or debug

Sample: "POST"

previous

list / elements=string

模块开始运行之前来自 APIC 的原始配置

Returned: info

Sample: [{"fvTenant": {"attributes": {"descr": "生产", "dn": "uni/tn-production", "name": "production", "nameAlias": "", "ownerKey": "", "ownerTag": ""}}}]

proposed

dictionary

根据用户提供的参数组装的配置

Returned: info

Sample: {"fvTenant": {"attributes": {"descr": "生产环境", "name": "production"}}}

raw

字符串

APIC REST API 返回的原始输出(xml 或 json)

Returned: parse error

Sample: "<?xml version=\"1.0\" encoding=\"UTF-8\"?><imdata totalCount=\"1\"><error code=\"122\" text=\"未知管理对象类 foo\"/></imdata>"

response

字符串

来自 APIC 的 HTTP 响应

Returned: failure or debug

Sample: "OK (30 bytes)"

sent

list / elements=string

推送到 APIC 的实际/最小配置

Returned: info

Sample: {"fvTenant": {"attributes": {"descr": "生产环境"}}}

status

整数

来自 APIC 的 HTTP 状态

Returned: failure or debug

Sample: 200

url

字符串

用于向 APIC 发送请求的 HTTP url

Returned: failure or debug

Sample: "https://10.11.12.13/api/mo/uni/tn-production.json"

Authors

  • Manuel Widmer (@lumean)

  • Anvitha Jain (@anvitha-jain)

  • Akini Ross (@akinross)