cisco.aci.aci_l3out_interface 模块 – 管理三层外部 (L3Out) 接口 (l3ext:RsPathL3OutAtt)

注意

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

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

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

要在剧本中使用它,请指定: cisco.aci.aci_l3out_interface

概要

  • 管理 Cisco ACI 结构上的 L3Out 接口。

参数

参数

注释

address

别名:addr,ip_address

字符串

IP 地址。

注释

字符串

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

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

如果任务和环境变量 ACI_ANNOTATION 中均未指定此值,则将使用默认值。

默认值: "orchestrator:ansible"

auto_state

字符串

SVI 自动状态。

选项

  • "enabled"

  • "disabled"

certificate_name

别名:cert_name

字符串

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

如果提供了 private_key 文件名,则默认为 private_key 基名(不含扩展名)。

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

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

description

别名:descr

字符串

接口的描述。

encap

字符串

接口上的封装(例如,“vlan-500”)。

encap_scope

字符串

接口上封装的范围。

选项

  • "vrf"

  • "local"

host

别名:hostname

字符串

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

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

interface_profile

别名:interface_profile_name,logical_interface

字符串 / 必需

接口配置文件的名称。

interface_type

字符串

要构建的接口类型。

选项

  • "l3-port"

  • "sub-interface"

  • "ext-svi"

ipv6_dad

字符串

IPv6 DAD 功能。

选项

  • "enabled"

  • "disabled"

l3out

别名:l3out_name

字符串 / 必需

现有 L3Out 的名称。

mac

别名:mac_address

字符串

接口的 MAC 地址。

micro_bfd

布尔值

启用接口上的微型 BFD。

微型 BFD 应仅配置在基础设施 SR-MPLS L3Outs 直接端口通道接口上。

选项

  • false

  • true

micro_bfd_destination

别名:micro_bfd_address,micro_bfd_destination_address

字符串

接口的微型 BFD 目标地址。

micro_bfd_timer

别名:micro_bfd_start_timer,micro_bfd_start

整数

以秒为单位的微型 BFD 启动计时器。

在创建期间未设置时,APIC 默认值为 0

mode

字符串

接口模式,仅当 instance_type 为 ext-svi 时使用。

选项

  • "regular"

  • "native"

  • "untagged"

mtu

字符串

接口 MTU。

node_id

字符串

为端口通道和单个端口构建接口的节点。

用于 vPC 的用连字符分隔的节点对(例如,“201-202”)。

node_profile

别名:node_profile_name,logical_node

字符串 / 必需

节点配置文件的名称。

output_level

字符串

影响此 ACI 模块的输出。

normal 表示标准输出,包括 current dict

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 的值。

path_ep

字符串

接口路径。

端口通道和 vPC 的接口策略组名称。

单个端口的端口号(例如,“eth1/12”)。

pod_id

字符串

构建接口的 Pod。

port

整数

用于 REST 连接的端口号。

默认值取决于参数 use_ssl

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

private_key

别名:cert_key

字符串

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

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

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

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

state

字符串

使用 presentabsent 来添加或删除。

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

选项

  • "absent"

  • "present" ← (默认)

  • "query"

suppress_previous

别名:no_previous, ignore_previous

布尔值

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

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

默认值为 false

警告 - 这会导致之前的返回值为空。

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

选项

  • false

  • true

suppress_verification

别名:no_verification, no_verify, suppress_verify, ignore_verify, ignore_verification

布尔值

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

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

默认值为 false

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

包含默认值的当前对象在一个任务中将无法验证。

选项

  • false

  • true

tenant

别名:tenant_name

字符串 / 必需

现有租户的名称。

timeout

整数

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

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

默认值为 30。

use_proxy

布尔值

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

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

默认值为 true。

选项

  • false

  • true

use_ssl

布尔值

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

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

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

选项

  • false

  • true

username

别名:user

字符串

用于身份验证的用户名。

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

默认值为 admin。

validate_certs

布尔值

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

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

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

默认值为 true。

选项

  • false

  • true

注释

注意

另请参见

另请参见

aci_tenant

**aci_tenant** 模块的官方文档。

aci_l3out

**aci_l3out** 模块的官方文档。

aci_l3out_logical_node_profile

**aci_l3out_logical_node_profile** 模块的官方文档。

aci_l3out_logical_interface_profile

**aci_l3out_logical_interface_profile** 模块的官方文档。

APIC 管理信息模型参考

有关内部 APIC 类 **l3ext:RsPathL3OutAtt** 的更多信息

Cisco ACI 指南

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

开发 Cisco ACI 模块

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

示例

- name: Add a new routed interface
  cisco.aci.aci_l3out_interface:
    host: apic
    username: admin
    password: SomeSecretPassword
    tenant: my_tenant
    l3out: my_l3out
    node_profile: my_node_profile
    interface_profile: my_interface_profile
    pod_id: 1
    node_id: 201
    path_ep: eth1/12
    interface_type: l3-port
    address: 192.168.10.1/27
    state: present
  delegate_to: localhost

- name: Add a new SVI vPC
  cisco.aci.aci_l3out_interface:
    host: apic
    username: admin
    password: SomeSecretPassword
    tenant: my_tenant
    l3out: my_l3out
    node_profile: my_node_profile
    interface_profile: my_interface_profile
    pod_id: 1
    node_id: 201-202
    path_ep: my_vpc_ipg
    interface_type: ext-svi
    encap: vlan-800
    mode: regular
    state: present
  delegate_to: localhost

- name: Add direct port channel interface in the infra SR-MPLS l3out interface profile with micro BFD enabled
  aci_l3out_interface:
    host: apic
    username: admin
    password: SomeSecretPassword
    tenant: infra
    l3out: ansible_infra_sr_mpls_l3out
    interface_profile: ansible_infra_sr_mpls_l3out_interface_profile
    pod_id: 1
    node_id: 101
    path_ep: pc_ansible_test
    interface_type: l3-port
    addr: 192.168.90.1/24
    micro_bfd: true
    micro_bfd_destination: 192.168.90.2
    micro_bfd_timer: 75
    state: present
  delegate_to: localhost

- name: Delete an interface
  cisco.aci.aci_l3out_interface:
    host: apic
    username: admin
    password: SomeSecretPassword
    tenant: my_tenant
    l3out: my_l3out
    node_profile: my_node_profile
    interface_profile: my_interface_profile
    pod_id: 1
    node_id: 201
    path_ep: eth1/12
    state: absent
  delegate_to: localhost

- name: Query an interface
  cisco.aci.aci_l3out_interface:
    host: apic
    username: admin
    password: SomeSecretPassword
    tenant: my_tenant
    l3out: my_l3out
    node_profile: my_node_profile
    interface_profile: my_interface_profile
    pod_id: 1
    node_id: 201
    path_ep: eth1/12
    state: query
  delegate_to: localhost
  register: query_result

返回值

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

描述

current

列表 / 元素=字符串

模块完成后从 APIC 获取的现有配置

返回:成功

示例:[{"fvTenant": {"attributes": {"descr": "Production environment", "dn": "uni/tn-production", "name": "production", "nameAlias": "", "ownerKey": "", "ownerTag": ""}}}]

error

字典

APIC 返回的错误信息

返回:失败

示例:{"code": "122", "text": "unknown managed object class foo"}

filter_string

字符串

用于请求的过滤器字符串

返回:失败或调试

示例:"?rsp-prop-include=config-only"

method

字符串

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

返回:失败或调试

示例: "POST"

上一个

列表 / 元素=字符串

模块启动前APIC的原始配置

返回: 信息

示例: [{"fvTenant": {"attributes": {"descr": "Production", "dn": "uni/tn-production", "name": "production", "nameAlias": "", "ownerKey": "", "ownerTag": ""}}}]

建议

字典

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

返回: 信息

示例: {"fvTenant": {"attributes": {"descr": "Production environment", "name": "production"}}}

原始数据

字符串

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

返回: 解析错误

示例: "<?xml version=\"1.0\" encoding=\"UTF-8\"?><imdata totalCount=\"1\"><error code=\"122\" text=\"unknown managed object class foo\"/></imdata>"

响应

字符串

APIC的HTTP响应

返回:失败或调试

示例: "OK (30 bytes)"

已发送

列表 / 元素=字符串

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

返回: 信息

示例: {"fvTenant": {"attributes": {"descr": "Production environment"}}}

状态

整数

APIC的HTTP状态

返回:失败或调试

示例: 200

URL

字符串

用于向APIC请求的HTTP URL

返回:失败或调试

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

作者

  • Tim Cragg (@timcragg)

  • Akini Ross (@akinross)