Differences
This shows you the differences between two versions of the page.
linux_wiki:use_network_teaming_or_bonding_to_configure_aggregated_network_links_between_two_red_hat_enterprise_linux_systems [2016/10/10 14:09] billdozor [Interface Teaming] |
linux_wiki:use_network_teaming_or_bonding_to_configure_aggregated_network_links_between_two_red_hat_enterprise_linux_systems [2019/05/25 23:50] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Use Network Teaming Or Bonding To Configure Aggregated Network Links Between Two Red Hat Enterprise Linux Systems ====== | ||
- | |||
- | **General Information** | ||
- | |||
- | Network interface teaming is a new method of what RHEL 6 referred to as bonding. There are more available options in RHEL 7's network teaming. | ||
- | |||
- | ---- | ||
- | |||
- | ====== Lab Setup ====== | ||
- | |||
- | The following virtual machines will be used: | ||
- | * server1.example.com (192.168.1.150) -> Configure a team interface backed by to slave interfaces | ||
- | * server2.example.com (192.168.1.151) -> Configure a team interface backed by to slave interfaces | ||
- | |||
- | ---- | ||
- | |||
- | ====== Prerequisites ====== | ||
- | |||
- | Install Teamd package (if not already installed) | ||
- | <code bash> | ||
- | yum install teamd | ||
- | </ | ||
- | |||
- | \\ | ||
- | **Example configs** located at: / | ||
- | |||
- | \\ | ||
- | Install Network Manager team plugin (if not already installed) | ||
- | <code bash> | ||
- | yum install NetworkManager-team | ||
- | </ | ||
- | |||
- | ---- | ||
- | |||
- | ====== Team Creation ====== | ||
- | |||
- | Creating a virtual team interface that is backed by two physical network interfaces. | ||
- | |||
- | ===== Virtualbox Notes ===== | ||
- | |||
- | To each virtual machine, **add two network interfaces**. | ||
- | |||
- | Each VM should end up with 3 total interfaces: | ||
- | * Main Management NIC: 192.168.1.x (server1=150 and server2=151) | ||
- | * Additional NIC for slave1: 10.0.0.x | ||
- | * Additional NIC for slave2: 10.0.0.x | ||
- | |||
- | \\ | ||
- | Due to the limitations of the virtualbox hypervisor, the virtual NICs must be configured to be in promiscuous mode. | ||
- | |||
- | \\ | ||
- | When NICs are added to a team, the MAC address of the first slave gets duplicated to the team interface and any other slave interfaces added. This confuses the underlying virtualbox hypervisor. | ||
- | |||
- | \\ | ||
- | In Virtualbox (Example from Virtualbox 5.2): | ||
- | * Select the EL7 virtual machine | ||
- | * Click Settings | ||
- | * Click Network | ||
- | * Under each Adapter tab, change the Promiscuous Mode drop down to "Allow All" | ||
- | * Click OK after changing all adapters | ||
- | |||
- | In the EL7 OS | ||
- | * Once the VM is booted up, set the interfaces to promiscuous mode< | ||
- | ip link set enp0s9 promisc on</ | ||
- | |||
- | ---- | ||
- | |||
- | ===== Interface Teaming ===== | ||
- | |||
- | Create a new team connection | ||
- | <code bash> | ||
- | nmcli con add type team ifname team0 config ' | ||
- | </ | ||
- | * This creates a connection with a name of " | ||
- | * Other team " | ||
- | * broadcast -> transmit packets via all ports | ||
- | * roundrobin -> transmit in round robin | ||
- | * activebackup -> 1 active port, 1 on standby in case of failure | ||
- | * loadbalance -> balance between ports | ||
- | * lacp -> 802.3ad LACP protocol | ||
- | |||
- | \\ | ||
- | Assign a static address to the virtual team0 interface | ||
- | <code bash> | ||
- | nmcli con mod team-team0 ipv4.method manual ipv4.addresses 10.1.2.3/24 | ||
- | </ | ||
- | |||
- | \\ | ||
- | Add two **unconfigured** interfaces (enp0s8 and enp0s9) to the virtual team0 interface | ||
- | <code bash> | ||
- | nmcli con add type team-slave con-name team0-port1 ifname enp0s8 master team0 | ||
- | nmcli con add type team-slave con-name team0-port2 ifname enp0s9 master team0 | ||
- | </ | ||
- | * If the interfaces have any previous configuration, | ||
- | * Remove configurations: | ||
- | |||
- | \\ | ||
- | Configure ports and team as up | ||
- | <code bash> | ||
- | nmcli con up team0-port1 | ||
- | nmcli con up team0-port2 | ||
- | nmcli con up team-team0 | ||
- | </ | ||
- | |||
- | \\ | ||
- | View team status | ||
- | <code bash> | ||
- | teamdctl team0 state | ||
- | </ | ||
- | |||
- | ---- | ||