Note
This module is part of the cisco.mso collection (version 2.11.0).
You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install cisco.mso. You need further requirements to be able to use this module, see Requirements for details.
To use it in a playbook, specify: cisco.mso.ndo_l3out_template.
The below requirements are needed on the host that executes this module.
Parameter | Comments |
|---|---|
attached_host_route_redistribution aliases: attached_host_route string | The name of the Route Map Policy for Route Control that needs to be associated with Attached Host Route Redistribution route map. Providing an empty string will remove the |
bgp dictionary | The BGP routing protocol configuration of the L3Out. |
|
inbound_route_map aliases: import_route, inbound_route string |
The name of the Route Map Policy for Route Control that needs to be associated with inbound route map. Providing an empty string will remove the |
|
outbound_route_map aliases: export_route, outbound_route string |
The name of the Route Map Policy for Route Control that needs to be associated with outbound route map. Providing an empty string will remove the |
|
route_dampening_ipv4 aliases: dampening_ipv4 string |
The name of the Route Map Policy for Route Control that needs to be associated with Route Dampening IPv4 route map. Providing an empty string will remove the |
|
route_dampening_ipv6 aliases: dampening_ipv6 string |
The name of the Route Map Policy for Route Control that needs to be associated with Route Dampening IPv6 route map. Providing an empty string will remove the |
|
state string |
Use Use Choices:
|
connected_route_redistribution aliases: connected_route string | The name of the Route Map Policy for Route Control that needs to be associated with Connected Route Redistribution route map. Providing an empty string will remove the |
description string | The description of the L3Out. Providing an empty string will remove the |
host aliases: hostname 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 |
interleak string | The name of the Route Map Policy for Route Control that needs to be associated with Interleak route map. Providing an empty string will remove the |
l3_domain string | The name of the L3 Domain. |
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 When using a HTTPAPI connection plugin the inventory variable |
name string | The name of the L3Out. |
ospf dictionary | The OSPF routing protocol configuration of the L3Out. |
|
area_id string |
The area id of the OSPF area. This option is required when the |
|
area_type string |
The area type of the OSPF area. This option is required when the Choices:
|
|
cost integer |
The cost of the OSPF area. Defaults to 1 when unset during creation. |
|
originate_default_route string |
The Originate Default Route option in an L3Out configuration allows the ACI fabric to advertise a default route (0.0.0.0/0) to external networks. Providing an empty string will remove the Choices:
|
|
originate_default_route_always aliases: always boolean |
Enabling this option will set the This option is applicable only if OSPF is configured on the L3Out. Choices:
|
|
originate_summary_lsa aliases: originate_lsa boolean |
This option is for OSPF NSSA (not-so-stubby area) or Stub area. When this option is disabled, not only Type 4 and 5, but also Type 3 LSAs are not sent into the NSSA or Stub area by the border leaf. Instead, the border leaf creates and sends a default route to the area. If there is no Type 3 LSA in this area in the first place, a default route is not created. Choices:
|
|
send_redistributed_lsas aliases: redistributed_lsas boolean |
This option is for the OSPF NSSA (not-so-stubby area). When this option is disabled, the redistributed routes are not sent into this NSSA area from the border leaf. This is typically used when the Because disabling the Choices:
|
|
state string |
Use Use Choices:
|
|
suppress_forwarding_addr_translated_lsa aliases: suppress_fa_lsa boolean |
This option is for OSPF NSSA (not-so-stubby area). When an OSPF NSSA ABR (Area Border Router) translates a Type-7 LSA into a Type-5 LSA to send it across non-NSSA areas. It typically includes the IP address of the originator ASBR (Autonomous System Boundary Router) as a forwarding address. However, if an OSPF router receiving the Type-5 LSA lacks a route to this forwarding address. The route may not be installed in the router’s route table. Enabling this option prevents the ABR from adding a forwarding address during the Type-7 to Type-5 translation, thereby avoiding this issue. Choices:
|
output_level string | Influence the output of this MSO module.
If the value is not specified in the task, the value of environment variable Choices:
|
password string | The password to use for authentication. If the value is not specified in the task, the value of environment variables |
pim boolean | The protocol independent multicast (PIM) flag of the L3Out. By default, PIM is disabled. To enable the PIM, Layer 3 Multicast must be enabled on the Choices:
|
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 |
state string | Use Use Use Choices:
|
static_route_redistribution aliases: static_route string | The name of the Route Map Policy for Route Control that needs to be associated with Static Route Redistribution route map. Providing an empty string will remove the |
target_dscp string | The DSCP Level of the L3Out. Choices:
|
template aliases: l3out_template string / required | The name of the L3Out template. |
timeout integer | The socket level timeout in seconds. The default value is 30 seconds. If the value is not specified in the task, the value of environment variable |
use_proxy boolean | If If the value is not specified in the task, the value of environment variable The default is Choices:
|
use_ssl boolean | If If the value is not specified in the task, the value of environment variable When using a HTTPAPI connection plugin the inventory variable The default is Choices:
|
username string | The username to use for authentication. If the value is not specified in the task, the value of environment variables |
uuid string | The UUID of the L3Out. This parameter is required when the L3Out |
validate_certs boolean | If This should only set to If the value is not specified in the task, the value of environment variable The default is Choices:
|
vrf dictionary | The VRF associated with the L3Out. |
|
name string / required |
The name of the VRF. |
|
schema string / required |
The name of the schema. |
|
template string / required |
The name of the template. |
Note
template must exist before using this module in your playbook. Use cisco.mso.ndo_template to create the L3Out template.vrf must exist before using this module in your playbook. Use cisco.mso.mso_schema_template_vrf to create the VRF.l3_domain must exist before using this module in your playbook. Use cisco.mso.ndo_l3_domain to create the L3Out domain.See also
Manage VRFs in schema templates.
Manage Templates on Cisco Nexus Dashboard Orchestrator (NDO).
Manage L3 Domains on Cisco Nexus Dashboard Orchestrator (NDO).
- name: Create a new L3Out object without BGP and OSPF
cisco.mso.ndo_l3out_template:
host: mso_host
username: admin
password: SomeSecretPassword
l3out_template: l3out_template
name: "l3out_1"
vrf:
name: "VRF1"
schema: "Schema1"
template: "Template1"
state: "present"
- name: Query a L3Out object with name
cisco.mso.ndo_l3out_template:
host: mso_host
username: admin
password: SomeSecretPassword
l3out_template: l3out_template
name: "l3out_1"
state: "query"
register: query_l3out_name
- name: Update a L3Out object name with UUID
cisco.mso.ndo_l3out_template:
host: mso_host
username: admin
password: SomeSecretPassword
l3out_template: l3out_template
uuid: "{{ query_l3out_name.current.uuid }}"
name: "l3out_1_updated"
description: "updated description"
state: "present"
- name: Create a new L3Out object with BGP and OSPF
cisco.mso.ndo_l3out_template:
host: mso_host
username: admin
password: SomeSecretPassword
l3out_template: l3out_template
name: "l3out_1_new"
vrf:
name: "VRF1"
schema: "Schema1"
template: "Template1"
routing_protocols: ["bgp", "ospf"]
bgp:
inbound_route_map: "ans_route_map"
outbound_route_map: "ans_route_map"
route_dampening_ipv4: "ans_route_map"
route_dampening_ipv6: "ans_route_map"
ospf:
area_id: "0.0.0.1"
area_type: "regular"
cost: 1
send_redistributed_lsas: true
originate_summary_lsa: true
suppress_forwarding_addr_translated_lsa: true
originate_default_route: "only"
originate_default_route_always: false
interleak: "ans_route_map"
static_route_redistribution: "ans_route_map"
connected_route_redistribution: "ans_route_map"
attached_host_route_redistribution: "ans_route_map"
state: "present"
- name: Update a L3Out object BGP and OSPF values
cisco.mso.ndo_l3out_template:
host: mso_host
username: admin
password: SomeSecretPassword
l3out_template: l3out_template
name: "l3out_1_new"
vrf:
name: "VRF1"
schema: "Schema1"
template: "Template1"
routing_protocols: ["bgp", "ospf"]
bgp:
route_dampening_ipv4: "ans_route_map_2"
route_dampening_ipv6: "ans_route_map_2"
ospf:
area_id: "0.0.0.2"
area_type: "stub"
cost: 3
send_redistributed_lsas: true
originate_summary_lsa: true
suppress_forwarding_addr_translated_lsa: true
interleak: "ans_route_map"
static_route_redistribution: "ans_route_map"
connected_route_redistribution: "ans_route_map"
attached_host_route_redistribution: "ans_route_map"
state: "present"
- name: Clear bgp and ospf routing protocol from the existing L3Out
cisco.mso.ndo_l3out_template:
host: mso_host
username: admin
password: SomeSecretPassword
l3out_template: l3out_template
name: "l3out_1_new"
vrf:
name: "VRF1"
schema: "Schema1"
template: "Template1"
routing_protocol: ["bgp"]
bgp:
state: disabled
ospf:
state: disabled
state: "present"
- name: Query a L3Out object with uuid
cisco.mso.ndo_l3out_template:
host: mso_host
username: admin
password: SomeSecretPassword
l3out_template: l3out_template
uuid: "{{ query_l3out_name.current.uuid }}"
state: "query"
register: query_l3out_name
- name: Query all L3Out objects
cisco.mso.ndo_l3out_template:
host: mso_host
username: admin
password: SomeSecretPassword
l3out_template: l3out_template
state: "query"
register: query_all_l3out
- name: Delete a L3Out object with name
cisco.mso.ndo_l3out_template:
host: mso_host
username: admin
password: SomeSecretPassword
l3out_template: l3out_template
name: "l3out_1"
state: "absent"
- name: Delete a L3Out object with uuid
cisco.mso.ndo_l3out_template:
host: mso_host
username: admin
password: SomeSecretPassword
l3out_template: l3out_template
uuid: "{{ query_l3out_name.current.uuid }}"
state: "absent"
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/cisco/mso/ndo_l3out_template_module.html