ifupdown2 advanced bond config options for LACP

onlime

Renowned Member
Aug 9, 2013
76
14
73
Zurich, Switzerland
www.onlime.ch
Hi there.

I have my Proxmox VE (latest 7.3) pre-configured for LAGGs with LACP, currently only with a single interface assigned to bond0 slaves, so I can go live by adding the second interface once I (physically) migrate to new switches (Aruba 6300 Series).

All works fine so far and «Apply Configuration» works flawlessly, generating such /etc/network/interfaces:

Code:
auto lo
iface lo inet loopback

auto eno1
iface eno1 inet manual

iface eno2 inet manual

auto bond0
iface bond0 inet manual
    bond-slaves eno1
    bond-miimon 100
    bond-mode 802.3ad
    bond-xmit-hash-policy layer2

auto vmbr0
iface vmbr0 inet static
    address XXX.XXX.XXX.204/26
    gateway XXX.XXX.XXX.193
    bridge-ports bond0
    bridge-stp off
    bridge-fd 0

auto vmbr1
iface vmbr1 inet static
    address 10.0.0.204/24
    bridge-ports eno2
    bridge-stp off
    bridge-fd 0

But ifupdown2 reports:

Bash:
$ ifreload -a
warning: bond0: attribute bond-min-links is set to '0'

Should I worry about that warning?
How can I add bond-min-links 1 to the bond0 interface through PVE webUI? Is it recommended to override the default bond-min-links 0?

My second question is, why can't I configure LACP fast mode on the bond0 interface through PVE webUI? bond-lacp-rate 1 seems to be what I am searching for (according to https://forum.proxmox.com/threads/bond-lacp-rate.17360/#post-88508) - Why such an important setting is not available in the webUI, at least under "Advanced"?
If I have LACP fast rate set on the other side (LAGG on switch ports), is it really required to have it set to fast as well on PVE bond0 side, or is that not really required, as heartbeats are anyway sent from the switch every second and it would care about it.

And instead of fine-tuning the bond0 interfaces in /etc/network/interfaces manually, would there be a way to change the defaults for min-links and lacp-rate on kernel level?
 
ok, the kernel documentation https://www.kernel.org/doc/Documentation/networking/bonding.txt says:

Code:
min_links

    Specifies the minimum number of links that must be active before
    asserting carrier. It is similar to the Cisco EtherChannel min-links
    feature. This allows setting the minimum number of member ports that
    must be up (link-up state) before marking the bond device as up
    (carrier on). This is useful for situations where higher level services
    such as clustering want to ensure a minimum number of low bandwidth
    links are active before switchover. This option only affect 802.3ad
    mode.

    The default value is 0. This will cause carrier to be asserted (for
    802.3ad mode) whenever there is an active aggregator, regardless of the
    number of available links in that aggregator. Note that, because an
    aggregator cannot be active without at least one available link,
    setting this option to 0 or to 1 has the exact same effect.

so we can just ignore min_links as 0 and 1 have the same effect.

But how could I configure lacp_rate 1 globally or via PVE webUI? Will you add this option to the webUI or how could I override the kernel default (e.g. via /etc/modprobe.d/*.conf)?

Code:
lacp_rate

    Option specifying the rate in which we'll ask our link partner
    to transmit LACPDU packets in 802.3ad mode.  Possible values
    are:

    slow or 0
        Request partner to transmit LACPDUs every 30 seconds

    fast or 1
        Request partner to transmit LACPDUs every 1 second

    The default is slow.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!