Port Channeling on Linux Server Hosts

Overview

Avi Vantage on Linux server (bare metal) cloud supports port channel (bond) interfaces.

A port channel interface groups multiple physical interfaces into a single logical interface and provides fault tolerance, bandwidth aggregation, and traffic load balancing. Similar to an Ethernet interface, a port channel interface can be configured with an IP address and VLAN trunking. Up to eight physical links can be grouped into a single port channel interface.

Notes:

  1. Port channeling is also referred to as port bonding, port trunking, and link aggregation.
  2. Starting with release 18.1.2, this feature is supported for IPv6 in Avi Vantage.

Based on the source and destination IP address and the Layer 4 protocol ports of the outgoing traffic, a hash is generated. The hash determines the transmitting link for this traffic to achieve load balancing.

Traffic directed on a failing link is automatically redirected to other links within the port channel interface to achieve fault tolerance.

Configuration

Configuring Port Channel

This section discusses a set of sample port channel configuration files. In the Linux interface configuration files, a bond interface consists of a master interface and one or more slave (secondary) interfaces.

Note: Port channeling can only be configured using the Linux server’s interface configuration files. This configuration is not supported on Avi Vantage.

  • The mode=4 bonding option stands for Link Aggregation Control Protocol (LACP).
  • ens1f0 and ens1f1 are the two member interfaces of bond0 interface. The following options are configured for these interfaces as they are the secondary members of a logical interface with bond0 as its primary member:
    • MASTER=bond0
    • SLAVE=yes
  • bond0.652 interface is the VLAN interface under bond0, configured with the following option:
    • VLAN=yes

Interface bond0’s Configuration file: /etc/sysconfig/network-scripts/ifcfg-bond0

DEVICE=bond0
IPADDR=10.124.251.101
NETMASK=255.255.255.0
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
NM_CONTROLLED=no
BONDING_OPTS="mode=4 miimon=100 xmit_hash_policy=layer3+4 use_carrier=1"

Interface ens1f0’s Configuration file: /etc/sysconfig/network-scripts/ifcfg-ens1f0

DEVICE=ens1f0
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no
NM_CONTROLLED=no

Interface ens1f1’s Configuration file: /etc/sysconfig/network-scripts/ifcfg-ens1f1

DEVICE=ens1f1
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no
NM_CONTROLLED=no

Configuring VLAN on Avi Vantage

The following example explains configuring a VLAN on a logical interface eth0 in Avi Vantage.

Note: Starting with Avi Vantage 18.1.2, VLANs and port channel interfaces can be configured with IPv6 addresses as well.

  1. Navigate to Infrastructure, and select the Service Engine (SE) where the VLAN interface is to be created.

  2. Click on the edit button, and the following editor pop-up will appear.

  3. Click on Create VLAN Interface.

  4. Select the parent interface from the drop-down list, and enter the VLAN and IP Address fields. Choose global from the dropdown list for VRF. Enter the IP prefix of the Service Engine’s data vNIC in the Static IP Prefix field. Click on Save.

  5. The configured VLAN interface will be displayed in the VLAN Interfaces section of the Service Engine edit page.

  6. Click on Save to commit the change.