MC-LAG redundant connection
MC-LAG (Multi-chassis link aggregation group) — Multi-chassis link aggregation. Redundant connectivity to LAN and Internet access switches, improves infrastructure fault tolerance. Only LAN connectivity can be reserved for prebuilt configuration servers. Redundancy is not available for all configurations.
Configure MC-LAG is only available for servers that have a redundant NIC and MC-LAG in their configuration.
For servers with redundant MC-LAG connectivity, Selectel ensures that one of the access switches is always available, including during scheduled maintenance.
Working principle
The server connects to two independent switches over an aggregated Ethernet link (LAG, Etherchannel). The LACP 802.3ad protocol is used for connectivity and link aggregation is configured on the server side. In this case, two links from the access switches to the server will be active at the same time.
Connection speed
For [custom configuration] servers(/servers-and-infrastructure/dedicated/order/dedicated-configurations/#servers-arbitrary-configurations):
- 1 Gbit/sec — copper crossover is used for the connection;
- 10 Gbit/sec — optical crossover is used for the connection;
- 25 Gbit/sec — LAN only, optical crossover is used for connection.
For servers ready-configuration:
- 10 Gbit/sec — for LAN only, optical crossover is used for connection.
Cost
The cost of the MC-LAG redundant connection depends on the selected connection speed.
You can view the cost in the configurator on the website, or when selecting server accessories in control panel.
Customize MC-LAG
- Ensure that the dedicated server configuration has a redundant NIC and MC-LAG added. If a redundant NIC is not available, you can order a new redundant server or modify the components for a server of a custom configuration.
- Wait for a server readiness message from technical support. The switch ports will be bonded together.
- Configure link aggregation (LAG) on the server.
Configure channel aggregation on the server
Do not connect to the server on network interfaces that will be included in the aggregation. You will need to disable them during setup.
- Debian 9, 10 (lacp)
- Ubuntu (netplan)
- Windows
-
Connect to the server on a network interface that will not be included in the aggregation, or through KVM-console.
-
Check that the bonding kernel module is installed on the server:
lsmod | grep bond
If there is no information in the response — the bonding kernel module is not installed.
-
If the bonding kernel module is not installed, install it:
sudo modprobe bonding
-
Install a package to manage and configure interfaces for parallel routing (bonding):
apt-get install ifenslave
-
Output the data about the network interfaces:
ifconfig -a
-
Consecutively shut down each network interface that will be included in the aggregation:
ifdown <eth_name>
Specify
<eth_name>
is the interface name. -
Open the
/etc/network/interfaces
file:nano /etc/network/interfaces
-
Bring the settings for the network interfaces that will be included in the aggregation to the following:
source /etc/network/interfaces
auto lo
iface lo inet loopback
auto <eth_name_1>
iface <eth_name_1> inet static
bond-master bond0
bond-primary <eth_name_1> <eth_name_2>
auto <eth_name_2>
iface <eth_name_2> inet manual
bond-master bond0
bond-primary <eth_name_1> <eth_name_2>
auto bond0
iface bond0 inet static
bond-slaves <eth_name_1> <eth_name_2>
bond-miimon 100
bond-mode 802.3ad
bond-downdelay 100
bond-updelay 100
bond-xmit-hash-policy layer2+3
address <ip_address>
netmask <mask>
gateway <gateway>
dns-nameservers <dns_servers>Specify:
<eth_name_1>
,<eth_name_2>
is the network interface that is included in the aggregation;<ip_address>
is the IP address to use on the aggregated interface;<mask>
is the subnet mask;<gateway>
is a gateway;<dns_servers>
— DNS server address. We recommend using Selectel DNS:188.93.16.19
,188.93.17.19
.
-
Bring up the bond0 network interface:
ifup bond0
-
Restart the network services:
/etc/init.d/networking start
-
Verify that the bond0 network interface is assembled correctly:
cat /proc/net/bonding/bond0
-
Connect to the server on a network interface that will not be included in the aggregation, or through KVM-console.
-
Output information about the network interfaces:
ip link
-
Open the
/etc/netplan/01-netcfg.yaml
file:nano /etc/netplan/01-netcfg.yaml
-
Bring the settings for the network interfaces that will be included in the aggregation to the following:
network:
version: 2
renderer: networkd
ethernets:
<eth_name_1>:
dhcp4: false
<eth_name_2>:
dhcp4: false
bonds:
bond0:
addresses:
- <ip_address>/<mask>
gateway4: <gateway_4>
gateway6: <gateway_6>
interfaces:
- <eth_name_1>
- <eth_name_2>
# https://netplan.io/reference#properties-for-device-type-bonds
parameters:
mode: 802.3ad
lacp-rate: fast
transmit-hash-policy: layer3+4Specify:
<eth_name_1>
,<eth_name_2>
is the network interface that is included in the aggregation;<ip_address>
is the IP address to use on the aggregated interface;<mask>
is the subnet mask;<gateway_4>
,<gateway_6>
— gateway.
-
Apply the new configuration:
netplan --debug apply
-
Verify that the bond0 network interface is assembled correctly:
cat /proc/net/bonding/bond0
-
Connect to the server on a network interface that will not be included in the aggregation, or through KVM-console.
-
Start Server Manager.
-
Open the Local Server section of the Properties block.
-
Under NIC Teaming and click on Disabled or Enabled. NIC Teaming opens.
-
In the Servers block, select the server to configure.
-
In the Groups box, click Tasks and select New Team.
-
Specify the parameters for the merge:
- Team name;
- Member adapters;
- Additional properties:
- Teaming mode — LACP;
- Load balancing mode;
- Primary team interface — VLAN ID for the team interface.
-
Press OK.