GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nakonfigurovat propojení síťového rozhraní na RHEL 8 / CentOS 8 Linux

Spojení síťových rozhraní spočívá v agregaci dvou nebo více fyzických síťových rozhraní, nazývaných slaves , pod jedním logickým rozhraním nazvaným master nebo bond rozhraní. V závislosti na režimu spojování může být takové nastavení užitečné pro dosažení odolnosti proti chybám a/nebo vyrovnávání zátěže. V tomto tutoriálu se naučíme, jaké jsou dostupné režimy propojení a jak vytvořit síťové propojení na RHEL 8 / CentOS 8.

V tomto tutoriálu se naučíte:

  • Co je propojení síťového rozhraní
  • Jak nakonfigurovat propojení síťového rozhraní na RHEL 8 / CentOS 8
  • Jaké jsou různé režimy lepení


Stav Bondu, jak jej vidí linuxové jádro

Požadavky na software a použité konvence

Softwarové požadavky a konvence příkazového řádku systému Linux
Kategorie Požadavky, konvence nebo použitá verze softwaru
Systém RHEL 8 / CentOS 8
Software Obslužný program nmtui pro ovládání démona NetworkManager. Aplikace je součástí minimální systémové instalace.
Jiné Oprávnění uživatele root pro úpravu nastavení systému
Konvence # – vyžaduje, aby dané linuxové příkazy byly spouštěny s právy root buď přímo jako uživatel root, nebo pomocí sudo příkaz
$ – vyžaduje, aby dané linuxové příkazy byly spouštěny jako běžný neprivilegovaný uživatel

Jaký režim vazby?

V zásadě existuje 7 režimů lepení, které můžeme použít:

Round Robin

Pakety jsou distribuovány rovnoměrně, v sekvenčním pořadí, do všech podřízených rozhraní (od prvního po poslední). Tento režim poskytuje jak vyvažování zátěže, tak odolnost proti chybám, ale potřebuje podporu na přepínačích.

Aktivní zálohování

Používá se pouze primární slave rozhraní. Pokud selže, je na jeho místo použit jiný slave. Poskytuje pouze odolnost proti chybám; nejsou žádné zvláštní požadavky.

XOR (exkluzivní OR)

Pakety jsou přenášeny a přidělovány jednomu z podřízených rozhraní v závislosti na hash zdrojové a cílové MAC adresy, vypočítané podle následujícího vzorce:

[(zdrojová MAC adresa XOR'd s cílovou MAC adresou) počet modulo slave]

Tento režim poskytuje odolnost proti chybám i vyrovnávání zátěže.

Vysílání

Při použití tohoto režimu jsou všechny pakety přenášeny na všech podřízených rozhraních, což zajišťuje odolnost proti chybám, ale ne vyrovnávání zátěže.

802.3ad

Tento režim využívá agregaci odkazů IEEE 802.3ad, která musí být podporována na přepínačích. Vytváří agregační skupiny, které sdílejí stejnou rychlost a duplexní nastavení. Vysílá a přijímá na všech podřízených v aktivní skupině. Poskytuje jak vyvažování zátěže, tak odolnost proti chybám.

Adaptivní vyvažování přenosové zátěže

Odchozí pakety jsou přenášeny přes slave rozhraní v závislosti na jejich zatížení a příchozí provoz přijímá aktuální slave zařízení. Pokud selže, další slave převezme jeho MAC adresu. Tento režim poskytuje odolnost proti chybám a vyrovnávání zátěže.

Adaptivní vyvažování zátěže

Funguje jako Adaptive Transmit Load Balancing , ale poskytuje také inbound vyvažování pomocí ARP (Address Resolution Protocol) vyjednávání.

Prostředí

V zájmu tohoto tutoriálu budeme pracovat na virtualizovaném systému Red Hat Enterprise Linux 8. Abychom vytvořili naše síťové propojení, budeme pracovat s nmtui , nástroj textového uživatelského rozhraní používaný k ovládání NetworkManager démon. Stejné operace však lze provádět pomocí nmcli nástroj příkazového řádku nebo přes GUI s Network Manager Connection Editor .

Systém má aktuálně dva ethernet odkazy, enp1s0
a enp7s0 :

1:lo: mtu 65536 stav qdisc noqueue UNKNOWN režim VÝCHOZÍ skupina výchozí qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00:00:00 :002:enp1s0: mtu 1500 qdisc fq_codel stav UP režim DEFAULT výchozí skupina qlen 1000 link/ether 52:54:00:cb:25:82 brd ff:ff:ff::ff3:enp7s0: mtu 1500 qdisc fq_codel stav UP režim DEFAULT skupina výchozí qlen 1000 link/ether 52:54:00:32:37:9b brd ff:ffff:ff:ff :ff

Vytvoření propojení sítí

Nejprve vymažeme aktuální existující konfigurace podřízených rozhraní. Není to nezbytně nutné, protože takové konfigurace bychom mohli upravovat na místě, ale abychom začali od začátku, budeme postupovat tímto způsobem. Vyvoláme nmtui :

$ sudo nmtui

Z hlavní nabídky vybereme „Upravit připojení“ a potvrdíme.



Nmtui hlavní menu.

Nejprve v seznamu vybereme připojení, které chcete odstranit, a poté přejdeme na <Delete> . Nakonec potvrdíme:



Seznam připojení Nmtui.

Nakonec potvrdíme, že chceme spojení smazat:



Výzva k potvrzení Nmtui k odstranění existujícího připojení.

Opakujeme operaci pro další rozhraní. Jakmile odstraníme všechny existující konfigurace, můžeme vytvořit bond rozhraní. Vybereme <Add> v nabídce a ze seznamu typů připojení vybereme Bond :



Nabídka výběru typu připojení Nmtui.

Otevře se nové okno, kde můžeme nakonfigurovat naše rozhraní. V tomto případě, i když je to zcela volitelné, použiji bond0 jako profil i název zařízení. Nejdůležitější částí je však výběr podřízených rozhraní, která mají být přidána do vazby. V BOND Slaves klikněte na <Add> a vyberte typ připojení slave, které chcete přidat, v tomto případě ethernet .



Nmtui menu pro výběr typu připojení slave.

Zadejte název zařízení a vyberte <OK> a potvrďte. Operace se musí opakovat pro každé z podřízených rozhraní.



Rozhraní Nmtui pro úpravu připojení slave.

Dalším krokem je výběr bonding mode :pro účely tohoto tutoriálu použijeme Active Backup jeden. V nabídce vybereme související možnost a v poli „Primární“ zadáme název primárního podřízeného rozhraní. Nakonec už jen vybereme <OK> pro potvrzení vytvoření rozhraní vazby.



Nastavení síťového propojení.

Nyní můžeme ukončit nmtui aplikace. Chcete-li ověřit, že vytvoření vazby bylo úspěšné, můžeme spustit následující příkaz:

$ ip addr show bond0

Výsledek je následující:

4:bond0: mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether 52:54:00:cb:25:82 brd ff:ff:ff:ff :ff:ff inet 192.168.122.164/24 brd 192.168.122.255 rozsah globální dynamický noprefixroute bond0 valid_lft 3304sec preferovaný_lft 3304sec inet6 fe80::48:d311:9dc6c1 rozsah
preferovaný rozsah noprefix_ever 

ifcfg konfigurační soubory související s naší konfigurací byly vygenerovány v /etc/sysconfig/network-scripts adresář:

$ ls /etc/sysconfig/network-scriptsifcfg-bond0 ifcfg-enp1s0 ifcfg-enp7s0

Chcete-li zobrazit aktuální stav bond0 rozhraní, jak ho vidí jádro, můžeme spustit:

$ cat /proc/net/bonding/bond0

Výstup příkazu je uveden níže:

Ovladač propojení ethernetového kanálu:v3.7.1 (27. dubna 2011) Režim propojení:odolnost proti chybám (aktivní-záloha)Primární slave:enp1s0 (primární_reselect vždy)Aktuálně aktivní slave:enp1s0MII Stav:upMII Interval dotazování (ms):100 Up Zpoždění (ms):0Down Delay (ms):0Slave rozhraní:enp1s0MII Stav:upSpeed:UnknownDuplex:UnknownLink Počet chyb:0Trvalá HW adresa:52:54:00:cb:25:82Slave fronta ID:0Spe7 Enplave:Stav:0Slave slave::UnknownDuplex:Unknown Link Failure Count:0Stálá HW adresa:52:54:00:32:37:9bID fronty podřízených:0

Můžeme vidět, jak jsou obě slave rozhraní aktivní, ale pouze enp1s0 je aktivní, protože se používá jako primární slave.

Testování aktivní zálohy

Jak můžeme ověřit, že naše konfigurace funguje? Můžeme odložit primární podřízené rozhraní a zjistit, zda stroj stále reaguje na ping. Abychom zrušili rozhraní, které spustíme:

$ sudo ip link set enp1s0 down

Odpovídá stroj stále? Pojďme to ověřit:

$ ping -c3 192.168.122.164PING 192.168.122.164 (192.168.122.164) 56(84) bajtů dat.64 bajtů od 192.168.122.164=192.168.122.163q=ic.168.122.163q=ic mp ttl64=ic. icmp_seq=2 ttl=64 čas=0,353 ms64 bajtů z 192.168.122.164:icmp_seq=3 ttl=64 čas=0,406 ms--- 192.168.122.164 statistika odeslaných paketů, 0 % přijatých paketů 88 msrtt min/avg/max/mdev =0,353/0,381/0,406/0,027 ms

To ano! Podívejme se, jak se změnil stav dluhopisu:

Ovladač propojení Ethernet kanálu:v3.7.1 (27. dubna 2011) Režim připojení:odolnost proti chybám (aktivní-záloha)Primární slave:enp1s0 (vždy primární_reselect)Aktuálně aktivní slave:enp7s0MII Stav:upMII Interval dotazování (ms):100 Up Zpoždění (ms):0Down Delay (ms):0Slave Rozhraní:enp1s0MII Stav:downSpeed:UnknownDuplex:UnknownLink Počet selhání:1Stálá HW adresa:52:54:00:cb:25:82Slave fronta ID:0Spe7 enpMI Stav:0SpeedMI Enplave::UnknownDuplex:Unknown Link Failure Count:0Stálá HW adresa:52:54:00:32:37:9bID fronty podřízených:0

Jak můžete vidět, protože jsme zrušili primární slave rozhraní (enp1s0 ), druhý slave, enp7s0 byl použit jako záloha a je nyní aktivní. Kromě toho Link Failure Count pro primární slave se zvýšil a je nyní 1 .

Závěry

V tomto tutoriálu jsme se naučili, co je to síťové propojení a jaké jsou možné způsoby konfigurace síťového propojení. Vytvořili jsme také síťové propojení mezi dvěma ethernetovými rozhraními pomocí Active Backup režimu. S Red Hat Enterprise Linux 7 byl představen nový koncept, network teaming . V některých aspektech je teaming podobný bondingu, ale je implementován jinak a má více funkcí. Budeme se jí zabývat v budoucích článcích.


Cent OS
  1. CentOS / RHEL 7 :Jak upravit názvy síťových rozhraní

  2. CentOS / RHEL 7 :Jak vytvořit Network Bonding (NIC teaming) pomocí nmcli

  3. CentOS / RHEL 5:Jak nakonfigurovat propojení rozhraní (NIC teaming)

  1. CentOS / RHEL 4:Jak nakonfigurovat propojení rozhraní (Týmování NIC)

  2. Jak nakonfigurovat rozhraní v „Promiskuitním režimu“ v CentOS/RHEL

  3. Jak změnit režim síťového propojení v CentOS/RHEL 6

  1. CentOS / RHEL 7 :Jak nakonfigurovat Network Bonding nebo NIC teaming

  2. Jak nakonfigurovat Network Teaming v CentOS/RHEL 7

  3. Jak odstranit propojení konfigurace sítě v CentOS/RHEL