cisco.mso.mso_schema_template_bd – Manage Bridge Domains (BDs) in schema templates

Note

This plugin is part of the cisco.mso collection (version 1.2.0).

To install it use: ansible-galaxy collection install cisco.mso.

To use it in a playbook, specify: cisco.mso.mso_schema_template_bd.

Synopsis

  • Manage BDs in schema templates on Cisco ACI Multi-Site.

Requirements

The below requirements are needed on the host that executes this module.

  • Multi Site Orchestrator v2.1 or newer

Parameters

Parameter Choices/Defaults Comments
arp_flooding
boolean
    Choices:
  • no
  • yes
ARP Flooding
bd
string
The name of the BD to manage.

aliases: name
dhcp_policies
list / elements=dictionary
A list DHCP Policies to be assciated with the BD
This option can only be used on versions of MSO that are 3.1.1h or greater.
dhcp_option_policy
dictionary
The DHCP Option Policy
name
string
The name of the DHCP Option Policy
version
integer
The version of the DHCP Option Policy
name
string / required
The name of the DHCP Relay Policy
version
integer / required
The version of DHCP Relay Policy
dhcp_policy
dictionary
The DHCP Policy
dhcp_option_policy
dictionary
The DHCP Option Policy
name
string
The name of the DHCP Option Policy
version
integer
The version of the DHCP Option Policy
name
string / required
The name of the DHCP Relay Policy
version
integer / required
The version of DHCP Relay Policy
display_name
string
The name as displayed on the MSO web interface.
host
string
IP Address or hostname of the ACI Multi Site Orchestrator host.
If the value is not specified in the task, the value of environment variable MSO_HOST will be used instead.

aliases: hostname
intersite_bum_traffic
boolean
    Choices:
  • no
  • yes
Whether to allow intersite BUM traffic.
ipv6_unknown_multicast_flooding
string
    Choices:
  • flood
  • optimized_flooding
IPv6 Unknown Multicast Flooding can either be Flood or Optimized Flooding
layer2_stretch
boolean
    Choices:
  • no
  • yes ←
Whether to enable L2 stretch.
layer2_unknown_unicast
string
    Choices:
  • flood
  • proxy
Layer2 unknown unicast.
layer3_multicast
boolean
    Choices:
  • no
  • yes
Whether to enable L3 multicast.
login_domain
string
The login domain name to use for authentication.
The default value is Local.
If the value is not specified in the task, the value of environment variable MSO_LOGIN_DOMAIN will be used instead.
multi_destination_flooding
string
    Choices:
  • flood_in_bd
  • drop
Multi-Destination Flooding can either be Flood in BD or just Drop
optimize_wan_bandwidth
boolean
    Choices:
  • no
  • yes
Whether to optimize WAN bandwidth.
output_level
string
    Choices:
  • debug
  • info
  • normal ←
Influence the output of this MSO module.
normal means the standard output, incl. current dict
info adds informational output, incl. previous, proposed and sent dicts
debug adds debugging output, incl. filter_string, method, response, status and url information
If the value is not specified in the task, the value of environment variable MSO_OUTPUT_LEVEL will be used instead.
password
string
The password to use for authentication.
If the value is not specified in the task, the value of environment variables MSO_PASSWORD or ANSIBLE_NET_PASSWORD will be used instead.
port
integer
Port number to be used for the REST connection.
The default value depends on parameter `use_ssl`.
If the value is not specified in the task, the value of environment variable MSO_PORT will be used instead.
schema
string / required
The name of the schema.
state
string
    Choices:
  • absent
  • present ←
  • query
Use present or absent for adding or removing.
Use query for listing an object or multiple objects.
subnets
list / elements=dictionary
The subnets associated to this BD.
description
string
The description of this subnet.
no_default_gateway
boolean
    Choices:
  • no ←
  • yes
Whether this subnet has a default gateway.
primary
boolean
    Choices:
  • no ←
  • yes
Treat as Primary Subnet.
There can be only one primary subnet per address family under a BD.
This option can only be used on versions of MSO that are 3.1.1h or greater.
querier
boolean
    Choices:
  • no ←
  • yes
Whether this subnet is an IGMP querier.
scope
string
    Choices:
  • private ←
  • public
The scope of the subnet.
shared
boolean
    Choices:
  • no ←
  • yes
Whether this subnet is shared between VRFs.
subnet
string / required
The IP range in CIDR notation.

aliases: ip
virtual
boolean
    Choices:
  • no ←
  • yes
Treat as Virtual IP Address.
template
string / required
The name of the template.
Display Name of template for operations can only be used in some versions of mso.
Use the name of template instead of Display Name to avoid discrepency.
timeout
integer
Default:
30
The socket level timeout in seconds.
If the value is not specified in the task, the value of environment variable MSO_TIMEOUT will be used instead.
unicast_routing
boolean
    Choices:
  • no ←
  • yes
Unicast Routing
This option can only be used on versions of MSO that are 3.1.1h or greater.
unknown_multicast_flooding
string
    Choices:
  • flood
  • optimized_flooding
Unknown Multicast Flooding can either be Flood or Optimized Flooding
use_proxy
boolean
    Choices:
  • no
  • yes ←
If no, it will not use a proxy, even if one is defined in an environment variable on the target hosts.
If the value is not specified in the task, the value of environment variable MSO_USE_PROXY will be used instead.
use_ssl
boolean
    Choices:
  • no
  • yes ←
If no, an HTTP connection will be used instead of the default HTTPS connection.
If the value is not specified in the task, the value of environment variable MSO_USE_SSL will be used instead.
username
string
Default:
"admin"
The username to use for authentication.
If the value is not specified in the task, the value of environment variables MSO_USERNAME or ANSIBLE_NET_USERNAME will be used instead.
validate_certs
boolean
    Choices:
  • no
  • yes ←
If no, SSL certificates will not be validated.
This should only set to no when used on personally controlled sites using self-signed certificates.
If the value is not specified in the task, the value of environment variable MSO_VALIDATE_CERTS will be used instead.
virtual_mac_address
string
Virtual MAC Address
vrf
dictionary
The VRF associated to this BD. This is required only when creating a new BD.
name
string / required
The name of the VRF to associate with.
schema
string
The schema that defines the referenced VRF.
If this parameter is unspecified, it defaults to the current schema.
template
string
The template that defines the referenced VRF.
If this parameter is unspecified, it defaults to the current template.

Notes

Note

  • Please read the mso_guide for more detailed information on how to manage your MSO infrastructure using Ansible.

  • This module was written to support Multi Site Orchestrator v2.1 or newer. Some or all functionality may not work on earlier versions.

Examples

- name: Add a new BD
  cisco.mso.mso_schema_template_bd:
    host: mso_host
    username: admin
    password: SomeSecretPassword
    schema: Schema 1
    template: Template 1
    bd: BD 1
    vrf:
      name: VRF1
    state: present
  delegate_to: localhost

- name: Add a new BD from another Schema
  mso_schema_template_bd:
    host: mso_host
    username: admin
    password: SomeSecretPassword
    schema: Schema 1
    template: Template 1
    bd: BD 1
    vrf:
      name: VRF1
      schema: Schema Origin
      template: Template Origin
    state: present
  delegate_to: localhost

- name: Add bd with options available on version 3.1
  mso_schema_template_bd:
    host: mso_host
    username: admin
    password: SomeSecretPassword
    schema: Schema 1
    template: Template 1
    bd: BD 1
    intersite_bum_traffic: true
    optimize_wan_bandwidth: false
    layer2_stretch: true
    layer2_unknown_unicast: flood
    layer3_multicast: false
    unknown_multicast_flooding: flood
    multi_destination_flooding: drop
    ipv6_unknown_multicast_flooding: flood
    arp_flooding: false
    virtual_mac_address: 00:00:5E:00:01:3C
    subnets:
    - subnet: 10.0.0.128/24
    - subnet: 10.0.1.254/24
      description: 1234567890
    - ip: 192.168.0.254/24
      description: "My description for a subnet"
      scope: private
      shared: false
      no_default_gateway: true
    vrf:
      name: vrf1
      schema: Test
      template: Template1
    dhcp_policy:
      name: ansible_test
      version: 1
      dhcp_option_policy:
        name: ansible_test_option
        version: 1
    state: present

- name: Add bd with options available on version 3.1.1h or greater
  mso_schema_template_bd:
    host: mso_host
    username: admin
    password: SomeSecretPassword
    schema: Schema 1
    template: Template 1
    bd: BD 1
    intersite_bum_traffic: true
    optimize_wan_bandwidth: false
    layer2_stretch: true
    layer2_unknown_unicast: flood
    layer3_multicast: false
    unknown_multicast_flooding: flood
    multi_destination_flooding: drop
    ipv6_unknown_multicast_flooding: flood
    arp_flooding: false
    virtual_mac_address: 00:00:5E:00:01:3C
    unicast_routing: true
    subnets:
    - subnet: 10.0.0.128/24
      primary: true
    - subnet: 10.0.1.254/24
      description: 1234567890
      virtual: true
    - ip: 192.168.0.254/24
      description: "My description for a subnet"
      scope: private
      shared: false
      no_default_gateway: true
    vrf:
      name: vrf1
      schema: Schema1
      template: Template1
    dhcp_policies:
      - name: ansible_test
        version: 1
        dhcp_option_policy:
          name: ansible_test_option
          version: 1
      - name: ansible_test2
        version: 1
        dhcp_option_policy:
          name: ansible_test_option2
          version: 1
      - name: ansible_test3
        version: 1
        dhcp_option_policy:
          name: ansible_test_option
          version: 1
    state: present
  delegate_to: localhost

- name: Remove a BD
  cisco.mso.mso_schema_template_bd:
    host: mso_host
    username: admin
    password: SomeSecretPassword
    schema: Schema 1
    template: Template 1
    bd: BD1
    state: absent
  delegate_to: localhost

- name: Query a specific BD
  cisco.mso.mso_schema_template_bd:
    host: mso_host
    username: admin
    password: SomeSecretPassword
    schema: Schema 1
    template: Template 1
    bd: BD1
    state: query
  delegate_to: localhost
  register: query_result

- name: Query all BDs
  cisco.mso.mso_schema_template_bd:
    host: mso_host
    username: admin
    password: SomeSecretPassword
    schema: Schema 1
    template: Template 1
    state: query
  delegate_to: localhost
  register: query_result

Authors

  • Dag Wieers (@dagwieers)

  • Shreyas Srish (@shrsr)