New in version 2.1.
Removed in Ansible: | |
---|---|
version: 2.5 | |
Why: | The nclu module is designed to be easier to use for individuals who are new to Cumulus Linux by exposing the NCLU interface in an automatable way. |
Alternative: | Use nclu instead. |
The below requirements are needed on the host that executes this module.
Parameter |
Choices/Defaults |
Comments |
---|---|---|
addr_method
|
|
Address method.
|
alias_name
|
|
Description of the port.
|
clagd_enable
|
|
Enables the clagd daemon. This command should only be applied to the clag peerlink interface.
|
clagd_peer_ip
|
|
IP address of the directly connected peer switch interface.
|
clagd_priority
|
|
Integer that changes the role the switch has in the clag domain. The lower priority switch will assume the primary role. The number can be between 0 and 65535.
|
clagd_sys_mac
|
|
Clagd system mac address. Recommended to use the range starting with 44:38:39:ff. Needs to be the same between 2 Clag switches.
|
ipv4
|
|
List of IPv4 addresses to configure on the interface. In the form X.X.X.X/YY.
|
ipv6
|
|
List of IPv6 addresses to configure on the interface. In the form X:X:X::X/YYY.
|
location
|
Default:
[u'/etc/network/interfaces.d']
|
Interface directory location
|
mstpctl_bpduguard
|
|
Enables BPDU Guard on a port in vlan-aware mode.
|
mstpctl_portadminedge
|
|
Enables admin edge port.
|
mstpctl_portnetwork
|
|
Enables bridge assurance in vlan-aware mode.
|
mtu
|
|
Set MTU. Configure Jumbo Frame by setting MTU to 9000.
|
name
required |
|
Name of the interface.
|
pvid
|
|
In vlan-aware mode, defines vlan that is the untagged vlan.
|
speed
|
|
Set speed of the swp(front panel) or management(eth0) interface. speed is in MB.
|
vids
|
|
In vlan-aware mode, lists VLANs defined under the interface.
|
virtual_ip
|
|
Define IPv4 virtual IP used by the Cumulus Linux VRR feature.
|
virtual_mac
|
|
Define Ethernet mac associated with Cumulus Linux VRR feature.
|
Note
/etc/network/interfaces
has a ‘source /etc/network/interfaces.d/*’ or whatever path is mentioned in the location
attribute.# Options ['virtual_mac', 'virtual_ip'] are required together
- name: Configure a front panel port with an IP
cl_interface:
name: swp1
ipv4: 10.1.1.1/24
notify: reload networking
- name: Configure front panel to use DHCP
cl_interface:
name: swp2
addr_family: dhcp
notify: reload networking
- name: Configure a SVI for vlan 100 interface with an IP
cl_interface:
name: bridge.100
ipv4: 10.1.1.1/24
notify: reload networking
- name: Configure subinterface with an IP
cl_interface:
name: bond0.100
alias_name: my bond
ipv4: 10.1.1.1/24
notify: reload networking
# define cl_interfaces once in tasks
# then write interfaces in variables file
# with just the options you want.
- name: Create interfaces
cl_interface:
name: '{{ item.key }}'
ipv4: '{{ item.value.ipv4 | default(omit) }}'
ipv6: '{{ item.value.ipv6 | default(omit) }}'
alias_name: '{{ item.value.alias_name | default(omit) }}'
addr_method: '{{ item.value.addr_method | default(omit) }}'
speed: '{{ item.value.link_speed | default(omit) }}'
mtu: '{{ item.value.mtu | default(omit) }}'
clagd_enable: '{{ item.value.clagd_enable | default(omit) }}'
clagd_peer_ip: '{{ item.value.clagd_peer_ip | default(omit) }}'
clagd_sys_mac: '{{ item.value.clagd_sys_mac | default(omit) }}'
clagd_priority: '{{ item.value.clagd_priority | default(omit) }}'
vids: '{{ item.value.vids | default(omit) }}'
virtual_ip: '{{ item.value.virtual_ip | default(omit) }}'
virtual_mac: '{{ item.value.virtual_mac | default(omit) }}'
mstpctl_portnetwork: "{{ item.value.mstpctl_portnetwork | default('no') }}"
mstpctl_portadminedge: "{{ item.value.mstpctl_portadminedge | default('no') }}"
mstpctl_bpduguard: "{{ item.value.mstpctl_bpduguard | default('no') }}"
with_dict: '{{ cl_interfaces }}'
notify: reload networking
# In vars file
# ============
---
cl_interfaces:
swp1:
alias_name: uplink to isp
ipv4: 10.1.1.1/24
swp2:
alias_name: l2 trunk connection
vids:
- 1
- 50
swp3:
speed: 1000
alias_name: connects to 1G link
##########
# br0 interface is configured by cl_bridge
##########
br0.100:
alias_name: SVI for vlan 100
ipv4: 10.2.2.2/24
ipv6: '10:2:2::2/127'
virtual_ip: 10.2.2.254
virtual_mac: 00:00:5E:00:10:10
Common return values are documented here, the following are the fields unique to this module:
Key |
Returned |
Description |
---|---|---|
changed
bool
|
changed |
whether the interface was changed
Sample:
True
|
msg
string
|
always |
human-readable report of success or failure
Sample:
interface bond0 config updated
|
This module is flagged as deprecated and will be removed in version { deprecated[‘removed_in’] | default(‘’) | string | convert_symbols_to_format }@. For more information see DEPRECATED.
Hint
If you notice any issues in this documentation you can edit this document to improve it.