Port Channeling on Linux Server Hosts
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.
- Port channeling is also referred to as port bonding, port trunking, and link aggregation.
- Starting with release 18.1.2, this feature is supported for IPv6 in Avi Vantage.
Link Interface Load Balancing
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.
Link Failure Recovery
Traffic directed on a failing link is automatically redirected to other links within the port channel interface to achieve fault tolerance.
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:
- bond0.652 interface is the VLAN interface under bond0, configured with the following option:
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.
Navigate to Infrastructure, and select the Service Engine (SE) where the VLAN interface is to be created.
Click on the edit button, and the following editor pop-up will appear.
Click on Create VLAN Interface.
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.
The configured VLAN interface will be displayed in the VLAN Interfaces section of the Service Engine edit page.
Click on Save to commit the change.