ansible.builtin.aci_bd (v2.9.0) — module

Manage Bridge Domains (BD) objects (fv:BD)

| "added in version" 2.4 of ansible.builtin"

Authors: Jacob McGill (@jmcgill298)

preview | supported by certified

Install Ansible via pip

Install with pip install ansible==2.9.0

Description

Manages Bridge Domains (BD) on Cisco ACI fabrics.

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Add Bridge Domain
  aci_bd:
    host: "{{ inventory_hostname }}"
    username: "{{ username }}"
    password: "{{ password }}"
    validate_certs: no
    tenant: prod
    bd: web_servers
    mac_address: 00:22:BD:F8:19:FE
    vrf: prod_vrf
    state: present
  delegate_to: localhost
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Add an FC Bridge Domain
  aci_bd:
    host: "{{ inventory_hostname }}"
    username: "{{ username }}"
    password: "{{ password }}"
    validate_certs: no
    tenant: prod
    bd: storage
    bd_type: fc
    vrf: fc_vrf
    enable_routing: no
    state: present
  delegate_to: localhost
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Modify a Bridge Domain
  aci_bd:
    host: "{{ inventory_hostname }}"
    username: "{{ username }}"
    password: "{{ password }}"
    validate_certs: yes
    tenant: prod
    bd: web_servers
    arp_flooding: yes
    l2_unknown_unicast: flood
    state: present
  delegate_to: localhost
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Query All Bridge Domains
  aci_bd:
    host: "{{ inventory_hostname }}"
    username: "{{ username }}"
    password: "{{ password }}"
    validate_certs: yes
    state: query
  delegate_to: localhost
  register: query_result
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Query a Bridge Domain
  aci_bd:
    host: "{{ inventory_hostname }}"
    username: "{{ username }}"
    password: "{{ password }}"
    validate_certs: yes
    tenant: prod
    bd: web_servers
    state: query
  delegate_to: localhost
  register: query_result
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Delete a Bridge Domain
  aci_bd:
    host: "{{ inventory_hostname }}"
    username: "{{ username }}"
    password: "{{ password }}"
    validate_certs: yes
    tenant: prod
    bd: web_servers
    state: absent
  delegate_to: localhost

Inputs

    
bd:
    aliases:
    - bd_name
    - name
    description:
    - The name of the Bridge Domain.
    type: str

vrf:
    aliases:
    - vrf_name
    description:
    - The name of the VRF.
    type: str

host:
    aliases:
    - hostname
    description:
    - IP Address or hostname of APIC resolvable by Ansible control host.
    required: true
    type: str

port:
    description:
    - Port number to be used for REST connection.
    - The default value depends on parameter C(use_ssl).
    type: int

state:
    choices:
    - absent
    - present
    - query
    default: present
    description:
    - Use C(present) or C(absent) for adding or removing.
    - Use C(query) for listing an object or multiple objects.
    type: str

tenant:
    aliases:
    - tenant_name
    description:
    - The name of the Tenant.
    type: str

bd_type:
    choices:
    - ethernet
    - fc
    description:
    - The type of traffic on the Bridge Domain.
    - The APIC defaults to C(ethernet) when unset during creation.
    type: str

timeout:
    default: 30
    description:
    - The socket level timeout in seconds.
    type: int

use_ssl:
    default: true
    description:
    - If C(no), an HTTP connection will be used instead of the default HTTPS connection.
    type: bool

password:
    description:
    - The password to use for authentication.
    - This option is mutual exclusive with C(private_key). If C(private_key) is provided
      too, it will be used instead.
    required: true
    type: str

username:
    aliases:
    - user
    default: admin
    description:
    - The username to use for authentication.
    type: str

use_proxy:
    default: true
    description:
    - If C(no), it will not use a proxy, even if one is defined in an environment variable
      on the target hosts.
    type: bool

multi_dest:
    choices:
    - bd-flood
    - drop
    - encap-flood
    description:
    - Determines the forwarding method for L2 multicast, broadcast, and link layer traffic.
    - The APIC defaults to C(bd-flood) when unset during creation.
    type: str

description:
    description:
    - Description for the Bridge Domain.
    type: str

ip_learning:
    description:
    - Determines if the Bridge Domain should learn End Point IPs.
    - The APIC defaults to C(yes) when unset during creation.
    type: bool

mac_address:
    aliases:
    - mac
    description:
    - The MAC Address to assign to the C(bd) instead of using the default.
    - The APIC defaults to C(00:22:BD:F8:19:FF) when unset during creation.
    type: str
    version_added: '2.5'
    version_added_collection: ansible.builtin

private_key:
    aliases:
    - cert_key
    description:
    - Either a PEM-formatted private key file or the private key content used for signature-based
      authentication.
    - This value also influences the default C(certificate_name) that is used.
    - This option is mutual exclusive with C(password). If C(password) is provided too,
      it will be ignored.
    required: true
    type: str

arp_flooding:
    description:
    - Determines if the Bridge Domain should flood ARP traffic.
    - The APIC defaults to C(no) when unset during creation.
    type: bool

output_level:
    choices:
    - debug
    - info
    - normal
    default: normal
    description:
    - Influence the output of this ACI module.
    - C(normal) means the standard output, incl. C(current) dict
    - C(info) adds informational output, incl. C(previous), C(proposed) and C(sent) dicts
    - C(debug) adds debugging output, incl. C(filter_string), C(method), C(response),
      C(status) and C(url) information
    type: str

enable_routing:
    description:
    - Determines if IP forwarding should be allowed.
    - The APIC defaults to C(yes) when unset during creation.
    type: bool

endpoint_clear:
    description:
    - Clears all End Points in all Leaves when C(yes).
    - The value is not reset to disabled once End Points have been cleared; that requires
      a second task.
    - The APIC defaults to C(no) when unset during creation.
    type: bool

ipv6_nd_policy:
    description:
    - The name of the IPv6 Neighbor Discovery Policy the Bridge Domain should use when
      overridding the default IPV6 ND Policy.
    type: str

limit_ip_learn:
    description:
    - Determines if the BD should limit IP learning to only subnets owned by the Bridge
      Domain.
    - The APIC defaults to C(yes) when unset during creation.
    type: bool

validate_certs:
    default: true
    description:
    - If C(no), SSL certificates will not be validated.
    - This should only set to C(no) when used on personally controlled sites using self-signed
      certificates.
    type: bool

certificate_name:
    aliases:
    - cert_name
    description:
    - The X.509 certificate name attached to the APIC AAA user used for signature-based
      authentication.
    - If a C(private_key) filename was provided, this defaults to the C(private_key) basename,
      without extension.
    - If PEM-formatted content was provided for C(private_key), this defaults to the C(username)
      value.
    type: str

enable_multicast:
    description:
    - Determines if PIM is enabled.
    - The APIC defaults to C(no) when unset during creation.
    type: bool

igmp_snoop_policy:
    description:
    - The name of the IGMP Snooping Policy the Bridge Domain should use when overriding
      the default IGMP Snooping Policy.
    type: str

l2_unknown_unicast:
    choices:
    - proxy
    - flood
    description:
    - Determines what forwarding method to use for unknown l2 destinations.
    - The APIC defaults to C(proxy) when unset during creation.
    type: str

endpoint_move_detect:
    choices:
    - default
    - garp
    description:
    - Determines if GARP should be enabled to detect when End Points move.
    - The APIC defaults to C(garp) when unset during creation.
    type: str

l3_unknown_multicast:
    choices:
    - flood
    - opt-flood
    description:
    - Determines the forwarding method to use for unknown multicast destinations.
    - The APIC defaults to C(flood) when unset during creation.
    type: str

endpoint_retention_action:
    choices:
    - inherit
    - resolve
    description:
    - Determines if the Bridge Domain should inherit or resolve the End Point Retention
      Policy.
    - The APIC defaults to C(resolve) when unset during creation.
    type: str

endpoint_retention_policy:
    description:
    - The name of the End Point Retention Policy the Bridge Domain should use when overriding
      the default End Point Retention Policy.
    type: str

Outputs

current:
  description: The existing configuration from the APIC after the module has finished
  returned: success
  sample:
  - fvTenant:
      attributes:
        descr: Production environment
        dn: uni/tn-production
        name: production
        nameAlias: ''
        ownerKey: ''
        ownerTag: ''
  type: list
error:
  description: The error information as returned from the APIC
  returned: failure
  sample:
    code: '122'
    text: unknown managed object class foo
  type: dict
filter_string:
  description: The filter string used for the request
  returned: failure or debug
  sample: ?rsp-prop-include=config-only
  type: str
method:
  description: The HTTP method used for the request to the APIC
  returned: failure or debug
  sample: POST
  type: str
previous:
  description: The original configuration from the APIC before the module has started
  returned: info
  sample:
  - fvTenant:
      attributes:
        descr: Production
        dn: uni/tn-production
        name: production
        nameAlias: ''
        ownerKey: ''
        ownerTag: ''
  type: list
proposed:
  description: The assembled configuration from the user-provided parameters
  returned: info
  sample:
    fvTenant:
      attributes:
        descr: Production environment
        name: production
  type: dict
raw:
  description: The raw output returned by the APIC REST API (xml or json)
  returned: parse error
  sample: <?xml version="1.0" encoding="UTF-8"?><imdata totalCount="1"><error code="122"
    text="unknown managed object class foo"/></imdata>
  type: str
response:
  description: The HTTP response from the APIC
  returned: failure or debug
  sample: OK (30 bytes)
  type: str
sent:
  description: The actual/minimal configuration pushed to the APIC
  returned: info
  sample:
    fvTenant:
      attributes:
        descr: Production environment
  type: list
status:
  description: The HTTP status from the APIC
  returned: failure or debug
  sample: 200
  type: int
url:
  description: The HTTP url used for the request to the APIC
  returned: failure or debug
  sample: https://10.11.12.13/api/mo/uni/tn-production.json
  type: str

See also