cisco.aci.aci_fabric_management_access 模块 – 管理 Fabric 管理访问 (comm:Pol)

注意

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

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

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

要在 playbook 中使用它,请指定: cisco.aci.aci_fabric_management_access

概要

  • 管理 Cisco ACI 结构上的 Fabric 管理访问。

参数

参数

注释

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

description

别名:descr

字符串

Fabric 管理访问策略的描述。

host

别名:hostname

字符串

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

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

http

字典

HTTP 配置的参数 (comm:Http)。

admin_state

字符串

HTTP 连接的管理状态。

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

选项

  • "enabled"

  • "disabled"

allow_credentials

字符串

HTTP 连接允许凭据的状态。

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

选项

  • "enabled"

  • "disabled"

allow_origins

字符串

HTTP 连接允许的来源。

示例格式:http://127.0.0.1:8000

port

整数

HTTP 连接的端口。

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

redirect

字符串

HTTP 到 HTTPS 重定向服务的 状态。

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

选项

  • "enabled"

  • "disabled"

  • "tested"

throttle

字符串

HTTP 连接请求节流的状态。

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

选项

  • "enabled"

  • "disabled"

throttle_rate

整数

请求节流的速率。

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

throttle_unit

字符串

请求节流速率的单位。

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

选项

  • "requests_per_second"

  • "requests_per_minute"

https

字典

HTTPS 配置的参数 (comm:Https)。

admin_key_ring

字符串

HTTPS 连接的管理员密钥环。

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

admin_state

字符串

HTTPS 连接的管理状态。

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

选项

  • "enabled"

  • "disabled"

allow_credentials

字符串

HTTPS 连接允许凭据的状态。

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

选项

  • "enabled"

  • "disabled"

allow_origins

字符串

HTTPS 连接允许的来源。

示例格式:http://127.0.0.1:8000

client_certificate_authentication_state

别名:client_certificate_auth_state, auth_state, authentication_state

字符串

HTTPS 连接的客户端证书身份验证状态。

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

enabled 状态需要设置 client_certificate_trustpoint

选项

  • "enabled"

  • "disabled"

client_certificate_trustpoint

别名:trustpoint

字符串

HTTPS 连接的客户端证书信任点。

dh_param

字符串

HTTPS 连接的 Diffie-Hellman 参数。

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

选项

  • "1024"

  • "2048"

  • "4096"

  • "none"

port

整数

HTTPS 连接的端口。

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

ssl

别名:ssl_protocols

列表 / 元素=字符串

HTTPS 连接的 SSL 协议。

在创建期间未设置时,APIC 默认为 tls_v1.1tls_v1.2

选项

  • "tls_v1.0"

  • "tls_v1.1"

  • "tls_v1.2"

  • "tls_v1.3"

throttle

字符串

HTTPS 连接请求节流的状态。

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

选项

  • "enabled"

  • "disabled"

throttle_rate

整数

请求节流的速率。

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

throttle_unit

字符串

请求节流速率的单位。

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

选项

  • "requests_per_second"

  • "requests_per_minute"

name

别名:fabric_management_access_policy_name

字符串

Fabric 管理访问策略的名称。

name_alias

字符串

Fabric 管理访问策略的名称别名。

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

owner_key

字符串

ACI 对象的 ownerKey 属性的用户定义字符串。

此属性表示一个键,用于启用客户端拥有其数据以进行实体关联。

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

owner_tag

字符串

ACI 对象的 ownerTag 属性的用户定义字符串。

此属性表示一个标签,用于启用客户端添加他们自己的数据。

例如,指示谁创建了此对象。

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

password

字符串

用于身份验证的密码。

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

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

port

整数

用于 REST 连接的端口号。

默认值取决于参数 use_ssl

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

private_key

别名:cert_key

字符串

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

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

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

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

ssh

字典

SSH 配置参数 (comm:Ssh)。

admin_state

字符串

SSH 连接的管理状态。

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

选项

  • "enabled"

  • "disabled"

ciphers

列表 / 元素=字符串

SSH 连接的密码。

在创建期间未设置时,APIC 默认设置为所有选项。

选项

  • "aes128_ctr"

  • "aes192_ctr"

  • "aes256_ctr"

  • "aes128_gcm"

  • "aes256_gcm"

  • "chacha20"

kex

列表 / 元素=字符串

SSH 连接的 KEX 算法。

在创建期间未设置时,APIC 默认设置为所有选项。

选项

  • "dh_sha1"

  • "dh_sha256"

  • "dh_sha512"

  • "curve_sha256"

  • "curve_sha256_libssh"

  • "ecdh_256"

  • "ecdh_384"

  • "ecdh_521"

macs

列表 / 元素=字符串

SSH 连接的 MAC。

在创建期间未设置时,APIC 默认设置为所有选项。

选项

  • "sha1"

  • "sha2_256"

  • "sha2_512"

  • "sha2_256_etm"

  • "sha2_512_etm"

password_auth_state

字符串

SSH 连接的密码身份验证状态。

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

选项

  • "enabled"

  • "disabled"

port

整数

SSH 连接的端口。

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

ssh_web

字典

通过 WEB 配置进行 SSH 访问的参数 (comm:Shellinabox)。

admin_state

字符串

通过 WEB 连接进行 SSH 访问的管理状态。

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

选项

  • "enabled"

  • "disabled"

state

字符串

使用 present 更新配置。

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

telnet

字典

telnet 配置参数 (comm:Telnet)。

admin_state

字符串

telnet 连接的管理状态。

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

选项

  • "enabled"

  • "disabled"

port

整数

telnet 连接的端口。

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

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

另见

另见

APIC 管理信息模型参考

有关内部 APIC 类 comm:Pol 的更多信息。

Cisco ACI 指南

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

开发 Cisco ACI 模块

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

示例

- name: Create a Fabric Management Access policy
  cisco.aci.aci_fabric_management_access:
    host: apic
    username: admin
    password: SomeSecretPassword
    name: fabric_management_access_policy_1
    description: "This is a example Fabric Management Access policy."
    state: present
  delegate_to: localhost

- name: Create a Fabric Management Access policy with telnet enabled
  cisco.aci.aci_fabric_management_access:
    host: apic
    username: admin
    password: SomeSecretPassword
    name: fabric_management_access_policy_1
    description: "This is a example Fabric Management Access policy."
    telnet:
      admin_state: enabled
    state: present
  delegate_to: localhost

- name: Create a Fabric Management Access policy with SSH access via WEB enabled
  cisco.aci.aci_fabric_management_access:
    host: apic
    username: admin
    password: SomeSecretPassword
    name: fabric_management_access_policy_1
    description: "This is a example Fabric Management Access policy."
    ssh_web:
      admin_state: enabled
    state: present
  delegate_to: localhost

- name: Create a Fabric Management Access policy with SSH enabled and ciphers set
  cisco.aci.aci_fabric_management_access:
    host: apic
    username: admin
    password: SomeSecretPassword
    name: fabric_management_access_policy_1
    description: "This is a example Fabric Management Access policy."
    ssh:
      admin_state: enabled
      ciphers:
        - aes128_ctr
        - aes192_ctr
        - aes256_ctr
    state: present
  delegate_to: localhost

- name: Create a Fabric Management Access policy with HTTP enabled
  cisco.aci.aci_fabric_management_access:
    host: apic
    username: admin
    password: SomeSecretPassword
    name: fabric_management_access_policy_1
    description: "This is a example Fabric Management Access policy."
    http:
      admin_state: enabled
      allow_origins: http://127.0.0.1:8000
      throttle: enabled
      throttle_rate: 7500
      throttle_unit: requests_per_minute
    state: present
  delegate_to: localhost

- name: Create a Fabric Management Access policy with HTTPS enabled
  cisco.aci.aci_fabric_management_access:
    host: apic
    username: admin
    password: SomeSecretPassword
    name: fabric_management_access_policy_1
    description: "This is a example Fabric Management Access policy."
    https:
      admin_state: enabled
      port: 445
      allow_origins: http://127.0.0.1:8000
      allow_credentials: enabled
      ssl:
        - tls_v1.2
      dh_param: 4096
      throttle: enabled
      throttle_rate: 7500
      throttle_unit: requests_per_minute
      admin_key_ring: default
      client_certificate_trustpoint: ansible_trustpoint
      client_certificate_authentication_state: enabled
    state: present
  delegate_to: localhost

- name: Query a Fabric Management Access policy
  cisco.aci.aci_fabric_management_access:
    host: apic
    username: admin
    password: SomeSecretPassword
    name: fabric_management_access_policy_1
    state: query
  delegate_to: localhost
  register: query_result

- name: Query all Fabric Management Access policies
  cisco.aci.aci_fabric_management_access:
    host: apic
    username: admin
    password: SomeSecretPassword
    state: query
  delegate_to: localhost
  register: query_result

- name: Delete a Fabric Management Access policy
  cisco.aci.aci_fabric_management_access:
    host: apic
    username: admin
    password: SomeSecretPassword
    name: fabric_management_access_policy_1
    state: absent
  delegate_to: localhost

返回值

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

描述

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"

previous

列表 / 元素=字符串

模块启动前APIC中的原始配置

返回: 信息

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

proposed

字典

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

返回: 信息

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

raw

字符串

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>"

response

字符串

APIC的HTTP响应

返回: 失败或调试信息

示例: "OK (30 bytes)"

sent

列表 / 元素=字符串

实际/最小配置推送到APIC

返回: 信息

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

status

整数

APIC的HTTP状态码

返回: 失败或调试信息

示例: 200

url

字符串

向APIC发出的请求使用的HTTP URL

返回: 失败或调试信息

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

作者

  • Akini Ross (@akinross)