Deprecated

Removed in 2.5

i

Reason:The M(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 M(nclu) instead.

ansible.builtin._cl_bond (v2.6.20) — module

Configures a bond port on Cumulus Linux

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

Authors: Cumulus Networks (@CumulusNetworks)

deprecated | supported by community

Install Ansible via pip

Install with pip install ansible==2.6.20

Description

Configures a bond interface on Cumulus Linux To configure a bridge port use the cl_bridge module. To configure any other type of interface use the cl_interface module. Follow the guidelines for bonding found in the Cumulus User Guide at U(http://docs.cumulusnetworks.com).


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# 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
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# configure bond as a dual-connected clag bond
- cl_bond:
    name: bond1
    slaves:
      - swp1s0
      - swp2s0
    clag_id: 1
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# 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 }}"

Inputs

    
mtu:
    description:
    - Set MTU. Configure Jumbo Frame by setting MTU to I(9000).

ipv4:
    description:
    - List of IPv4 addresses to configure on the interface. In the form I(X.X.X.X/YY).

ipv6:
    description:
    - List of IPv6 addresses to configure on the interface. In the form I(X:X:X::X/YYY).

mode:
    default: 802.3ad
    description:
    - The bond mode, as of Cumulus Linux 2.5 only LACP bond mode is supported.

name:
    description:
    - Name of the interface.
    required: true

pvid:
    description:
    - In vlan-aware mode, defines vlan that is the untagged vlan.

vids:
    description:
    - In vlan-aware mode, lists VLANs defined under the interface.

miimon:
    default: 100
    description:
    - The mii link monitoring interval.

slaves:
    description:
    - Bond members.
    required: true

clag_id:
    description:
    - 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.

location:
    default:
    - /etc/network/interfaces.d
    description:
    - Interface directory location.

lacp_rate:
    default: 1
    description:
    - The lacp rate.

min_links:
    default: 1
    description:
    - Minimum number of links.

alias_name:
    description:
    - Description of the port.

virtual_ip:
    description:
    - Define IPv4 virtual IP used by the Cumulus Linux VRR feature.

addr_method:
    choices:
    - dhcp
    description:
    - Configures the port to use DHCP. To enable this feature use the option I(dhcp).

virtual_mac:
    description:
    - Define Ethernet mac associated with Cumulus Linux VRR feature.

xmit_hash_policy:
    default: layer3+4
    description:
    - Transmit load balancing algorithm. As of Cumulus Linux 2.5 only I(layer3+4) policy
      is supported.

lacp_bypass_allow:
    description:
    - Enable LACP bypass.

mstpctl_bpduguard:
    choices:
    - true
    - false
    description:
    - Enables BPDU Guard on a port in vlan-aware mode.

lacp_bypass_period:
    description:
    - Period for enabling LACP bypass. Max value is 900.

mstpctl_portnetwork:
    choices:
    - true
    - false
    description:
    - Enables bridge assurance in vlan-aware mode.

lacp_bypass_priority:
    description:
    - List of ports and priorities. Example I("swp1=10, swp2=20").

mstpctl_portadminedge:
    choices:
    - true
    - false
    description:
    - Enables admin edge port.

lacp_bypass_all_active:
    description:
    - Activate all interfaces for bypass. It is recommended to configure all_active instead
      of using bypass_priority.

Outputs

changed:
  description: whether the interface was changed
  returned: changed
  sample: true
  type: bool
msg:
  description: human-readable report of success or failure
  returned: always
  sample: interface bond0 config updated
  type: string