Kako stvoriti NIC udruživanje ili spajanje u CentOS 8/RHEL 8


NIC udruživanje je agregacija ili povezivanje dviju ili više mrežnih veza u jednu logičku vezu radi pružanja redundantnosti i visoke dostupnosti. Logičko sučelje/veza poznato je kao timsko sučelje. U slučaju da aktivna fizička veza padne, jedna od rezervnih ili rezerviranih veza automatski se pokreće i osigurava nesmetanu vezu s poslužiteljem.

Timska terminologija

Prije nego što zasučemo rukave, ključno je upoznati se sa sljedećim terminologijama:

  • Teamd – Ovo je nic teaming demon koji koristi biblioteku libteam za komunikaciju s timskim uređajima putem Linux kernela.
  • Teamdctl– Ovo je uslužni program koji korisnicima omogućuje kontrolu nad instancom teamd. Možete provjeriti i promijeniti status priključka, kao i prebacivati se između sigurnosnog i aktivnog stanja.
  • Runner – Ovo su jedinice koda napisane u JSON i koriste se za implementaciju različitih koncepata udruživanja NIC-a. Primjeri načina pokretanja uključuju Round robbin, balansiranje opterećenja, emitiranje i aktivno sigurnosno kopiranje.

Za ovaj vodič konfigurirat ćemo NIC timski rad pomoću aktivnog sigurnosnog kopiranja. Ovo je mjesto gdje jedna veza ostaje aktivna dok su ostale u stanju pripravnosti i rezervirane kao rezervne veze u slučaju da aktivna veza prestane.

Na ovoj stranici

  • Instalirajte teamd Daemon u CentOS
  • Konfigurirajte NIC Teaming u CentOS-u
  • Testiranje redundantnosti mrežnog timiranja
  • Brisanje mrežnog sučelja za udruživanje

Bez puno odlaganja, počnimo.

Korak 1: Instalirajte teamd Daemon u CentOS

Teamd je demon koji je odgovoran za stvaranje mrežnog tima koji će djelovati kao logičko sučelje tijekom izvođenja. Prema zadanim postavkama dolazi instaliran s CentOS/RHEL 8. Ali ako, iz bilo kojeg razloga, nije instaliran, izvršite sljedeću naredbu dnf da biste ga instalirali.

sudo dnf install teamd

Nakon instalacije provjerite je li teamd instaliran pokretanjem naredbe rpm:

rpm -qi teamd

Korak 2: Konfigurirajte NIC Teaming u CentOS-u

Za konfiguriranje NIC teaminga koristit ćemo praktičan alat nmcli koji se može koristiti za upravljanje uslugom NetworkManager. U svom sustavu imam 2 NIC kartice koje ću spojiti ili kombinirati da stvorim logično timsko sučelje: enp0s3 i enp0s8. Ovo može biti drugačije u vašem slučaju.

Za potvrdu aktivnih mrežnih sučelja pokrenite:

nmcli device status

Izlaz potvrđuje postojanje 2 aktivne mrežne veze. Za prikupljanje više informacija o sučeljima kao što je UUID, pokrenite naredbu:

nmcli connection show

Da bismo stvorili vezu ili sučelje za mrežno udruživanje, koje će biti naša logična poveznica, izbrisat ćemo postojeća mrežna sučelja. Nakon toga ćemo stvoriti podređena sučelja koristeći obrisana sučelja i zatim ih pridružiti poveznici za udruživanje.

Korištenjem njihovih odgovarajućih UUID-ova izvršite donje naredbe za brisanje poveznica:

nmcli connection delete e3cec54d-e791-4436-8c5f-4a48c134ad29
nmcli connection delete dee76b4c-9alb-4f24-a9f0-2c9574747807

Ovaj put kada provjerite sučelja, primijetit ćete da su isključena i da nemaju vezu s poslužiteljem. U osnovi, vaš će poslužitelj biti izoliran od ostatka mreže.

nmcli device status

Zatim ćemo kreirati timsko sučelje pod nazivom team0 u aktivnom rezervnom načinu trčanja. Kao što je ranije navedeno, aktivni backup runner mod koristi jedno aktivno sučelje, a ostala rezervira za redundantnost u slučaju da aktivna veza prestane.

nmcli connection add type team con-name team0 ifname team0 config '{"runner": {"name": "activebackup"}}'

Za pregled atributa dodijeljenih sučelju team0 pokrenite naredbu:

nmcli connection show team0

Savršen! U ovom trenutku imamo samo jedno sučelje, a to je team0 sučelje kao što je prikazano.

nmcli connection show

Zatim konfigurirajte IP adresu za sučelje team0 kao što je prikazano pomoću naredbe nmcli. Obavezno dodijelite IP adrese prema podmreži i shemi IP adresiranja vaše mreže.

nmcli con mod team0 ipv4.addresses 192.168.2.100/24
nmcli con mod team0 ipv4.gateway 192.168.2.1
nmcli con mod team0 ipv4.dns 8.8.8.8
nmcli con mod team0 ipv4.method manual
nmcli con mod team0 connection.autoconnect yes

Nakon toga, kreirajte slave veze i pridružite robove timskoj vezi:

nmcli con add type team-slave con-name team0-slave0 ifname enp0s3 master team0
nmcli con add type team-slave con-name team0-slave1 ifname enp0s8 master team0

Ponovno provjerite status veza i primijetit ćete da su podređene veze sada aktivne.

nmcli connection show

Zatim deaktivirajte i aktivirajte timsku vezu. Ovo aktivira vezu između podređenih veza i timske veze.

nmcli connection down team0 && nmcli connection up team0

Zatim provjerite stanje veze timske veze kao što je prikazano.

ip addr show dev team0

Vidimo da je veza gore s ispravnom IP adresom koju smo ranije konfigurirali.

Da biste dohvatili dodatne pojedinosti o timskoj vezi, pokrenite naredbu:

sudo teamdctl team0 state

Iz izlaza možemo vidjeti da obje veze (enp0s3 i enp0s8) rade i da je aktivna veza enp0s8.

Korak 3: Testiranje redundantnosti mrežnog timiranja

Kako bismo testirali naš aktivno-sigurnosni timski način, odspojit ćemo trenutno aktivnu vezu – enp0s3 – i provjeriti aktivira li se druga veza.

nmcli device disconnect enp0s3
sudo teamdctl team0 state

Kada provjerite status sučelja za udruživanje, vidjet ćete da je veza enp0s8 pokrenuta i poslužuje veze s poslužiteljem. Ovo potvrđuje da naša postavka radi!

Korak 4: Brisanje sučelja mrežnog udruživanja

Ako želite izbrisati timsko sučelje/vezu i vratiti se na zadane mrežne postavke, prvo spustite timsku vezu:

nmcli connection down team0

Zatim izbrišite robove.

nmcli connection delete team0-slave0 team0-slave1

Na kraju izbrišite timsko sučelje.

nmcli connection delete team0

U ovom trenutku sva sučelja nisu dostupna i vaš poslužitelj nije dostupan. Da biste aktivirali svoja mrežna sučelja i ponovno uspostavili vezu, pokrenite naredbe:

sudo ifconfig enp0s3 up
sudo ifconfig enp0s8 up
sudo systemctl restart NetworkManager
Zaključak

NIC teaming nudi izvrsno rješenje za redundanciju mreže. S 2 ili više mrežnih sučelja, možete konfigurirati timsko sučelje u bilo kojem runner modu kako biste osigurali visoku dostupnost u slučaju da jedna veza slučajno padne. Nadamo se da vam je ovaj vodič bio od pomoći. Javite nam se i javite nam kakvo je vaše iskustvo.