New in version 2.1.
Deprecated in 2.3. Use nclu instead.
| parameter | required | default | choices | comments |
|---|---|---|---|---|
| addr_method | no |
| Configures the port to use DHCP. To enable this feature use the option dhcp. | |
| alias_name | no | Description of the port. | ||
| clag_id | no | Specify a unique clag_id for every dual connected bond on each peer switch. The value must be between 1 and 65535 and must be the same on both peer switches in order for the bond to be considered dual-connected. | ||
| ipv4 | no | List of IPv4 addresses to configure on the interface. In the form X.X.X.X/YY. | ||
| ipv6 | no | List of IPv6 addresses to configure on the interface. In the form X:X:X::X/YYY. | ||
| lacp_bypass_all_active | no | Activate all interfaces for bypass. It is recommended to configure all_active instead of using bypass_priority. | ||
| lacp_bypass_allow | no | Enable LACP bypass. | ||
| lacp_bypass_period | no | Period for enabling LACP bypass. Max value is 900. | ||
| lacp_bypass_priority | no | List of ports and priorities. Example "swp1=10, swp2=20". | ||
| lacp_rate | no | 1 | The lacp rate. | |
| location | no | [u'/etc/network/interfaces.d'] | Interface directory location. | |
| miimon | no | 100 | The mii link monitoring interval. | |
| min_links | no | 1 | Minimum number of links. | |
| mode | no | 802.3ad | The bond mode, as of Cumulus Linux 2.5 only LACP bond mode is supported. | |
| mstpctl_bpduguard | no |
| Enables BPDU Guard on a port in vlan-aware mode. | |
| mstpctl_portadminedge | no |
| Enables admin edge port. | |
| mstpctl_portnetwork | no |
| Enables bridge assurance in vlan-aware mode. | |
| mtu | no | Set MTU. Configure Jumbo Frame by setting MTU to 9000. | ||
| name | yes | Name of the interface. | ||
| pvid | no | In vlan-aware mode, defines vlan that is the untagged vlan. | ||
| slaves | yes | Bond members. | ||
| vids | no | In vlan-aware mode, lists VLANs defined under the interface. | ||
| virtual_ip | no | Define IPv4 virtual IP used by the Cumulus Linux VRR feature. | ||
| virtual_mac | no | Define Ethernet mac associated with Cumulus Linux VRR feature. | ||
| xmit_hash_policy | no | layer3+4 | Transmit load balancing algorithm. As of Cumulus Linux 2.5 only layer3+4 policy is supported. |
# Options ['virtual_mac', 'virtual_ip'] are required together
# configure a bond interface with IP address
- cl_bond:
name: bond0
slaves:
- swp4-5
ipv4: 10.1.1.1/24
# configure bond as a dual-connected clag bond
- cl_bond:
name: bond1
slaves:
- swp1s0
- swp2s0
clag_id: 1
# define cl_bond once in tasks file
# then write interface config in variables file
# with just the options you want.
- cl_bond:
name: "{{ item.key }}"
slaves: "{{ item.value.slaves }}"
clag_id: "{{ item.value.clag_id|default(omit) }}"
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) }}"
mtu: "{{ item.value.mtu|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_bonds }}"
# In vars file
# ============
---
cl_bonds:
bond0:
alias_name: uplink to isp
slaves:
- swp1
- swp3
ipv4: 10.1.1.1/24'
bond2:
vids:
- 1
- 50
clag_id: 1
Common return values are documented here Return Values, the following are the fields unique to this module:
| name | description | returned | type | sample |
|---|---|---|---|---|
| msg | human-readable report of success or failure | always | string | interface bond0 config updated |
| changed | whether the interface was changed | changed | bool | True |
Note
/etc/network/interfaces has a ‘source /etc/network/interfaces.d/*’ or whatever path is mentioned in the location attribute.For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Testing Ansible and Developing Modules.
© 2012–2017 Michael DeHaan
© 2017 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/cl_bond_module.html