CentOS 8/RHEL 8-ൽ NIC ടീമിംഗ് അല്ലെങ്കിൽ ബോണ്ടിംഗ് എങ്ങനെ സൃഷ്ടിക്കാം


ആവർത്തനവും ഉയർന്ന ലഭ്യതയും നൽകുന്നതിനായി രണ്ടോ അതിലധികമോ നെറ്റ്uവർക്ക് ലിങ്കുകളെ ഒരൊറ്റ ലോജിക്കൽ ലിങ്കിലേക്ക് കൂട്ടിച്ചേർക്കുകയോ ബന്ധിപ്പിക്കുകയോ ചെയ്യുന്നതാണ് എൻഐസി ടീമിംഗ്. ലോജിക്കൽ ഇന്റർഫേസ്/ലിങ്ക് ഒരു ടീം ഇന്റർഫേസ് എന്നാണ് അറിയപ്പെടുന്നത്. സജീവമായ ഫിസിക്കൽ ലിങ്ക് തകരാറിലാകുന്ന സാഹചര്യത്തിൽ, ബാക്കപ്പ് അല്ലെങ്കിൽ റിസർവ് ചെയ്ത ലിങ്കുകളിലൊന്ന് സ്വയമേവ കിക്ക് ചെയ്യുകയും സെർവറിലേക്കുള്ള തടസ്സമില്ലാത്ത കണക്ഷൻ ഉറപ്പാക്കുകയും ചെയ്യുന്നു.

ഞങ്ങളുടെ സ്ലീവ് ചുരുട്ടുന്നതിന് മുമ്പ്, ഇനിപ്പറയുന്ന പദപ്രയോഗങ്ങൾ സ്വയം പരിചയപ്പെടുത്തുന്നത് നിർണായകമാണ്:

  • Teamd – Linux കേർണൽ വഴി ടീം ഉപകരണങ്ങളുമായി ആശയവിനിമയം നടത്താൻ libteam ലൈബ്രറി ഉപയോഗിക്കുന്ന nic ടീമിംഗ് ഡെമണാണിത്.
  • Teamdctl– ടീമിന്റെ ഒരു ഉദാഹരണം നിയന്ത്രിക്കാൻ ഉപയോക്താക്കളെ അനുവദിക്കുന്ന ഒരു യൂട്ടിലിറ്റിയാണിത്. നിങ്ങൾക്ക് പോർട്ട് സ്റ്റാറ്റസ് പരിശോധിക്കാനും മാറ്റാനും ബാക്കപ്പിനും സജീവമായ അവസ്ഥകൾക്കും ഇടയിൽ മാറാനും കഴിയും.
  • റണ്ണർ - JSON-ൽ എഴുതിയ കോഡിന്റെ യൂണിറ്റുകളാണ് ഇവ, വിവിധ NIC ടീമിംഗ് ആശയങ്ങൾ നടപ്പിലാക്കാൻ ഉപയോഗിക്കുന്നു. റണ്ണർ മോഡുകളുടെ ഉദാഹരണങ്ങളിൽ റൗണ്ട് റോബിൻ, ലോഡ് ബാലൻസിങ്, പ്രക്ഷേപണം, സജീവ ബാക്കപ്പ് എന്നിവ ഉൾപ്പെടുന്നു.

ഈ ഗൈഡിനായി, ഞങ്ങൾ സജീവ-ബാക്കപ്പ് മോഡ് ഉപയോഗിച്ച് NIC ടീമിംഗ് കോൺഫിഗർ ചെയ്യും. ഇവിടെയാണ് ഒരു ലിങ്ക് സജീവമായി നിലകൊള്ളുന്നത്, ബാക്കിയുള്ളവ സ്റ്റാൻഡ്uബൈയിലായിരിക്കുകയും, സജീവമായ ലിങ്ക് കുറയുകയാണെങ്കിൽ ബാക്കപ്പ് ലിങ്കുകളായി റിസർവ് ചെയ്യുകയും ചെയ്യുന്നു.

ഈ പേജിൽ

  • CentOS-ൽ ടീം ഡെമൺ ഇൻസ്റ്റാൾ ചെയ്യുക
  • CentOS-ൽ NIC ടീമിംഗ് കോൺഫിഗർ ചെയ്യുക
  • ടെസ്റ്റിംഗ് നെറ്റ്uവർക്ക് ടീമിംഗ് റിഡൻഡൻസി
  • ഒരു നെറ്റ്uവർക്ക് ടീമിംഗ് ഇന്റർഫേസ് ഇല്ലാതാക്കുന്നു

കൂടുതൽ ചർച്ചകൾ കൂടാതെ, നമുക്ക് ആരംഭിക്കാം.

റൺടൈമിൽ ലോജിക്കൽ ഇന്റർഫേസായി പ്രവർത്തിക്കുന്ന ഒരു നെറ്റ്uവർക്ക് ടീം സൃഷ്uടിക്കുന്നതിന് ഉത്തരവാദിയായ ഡെമൺ ആണ് ടീം. സ്ഥിരസ്ഥിതിയായി, ഇത് CentOS/RHEL 8 ഉപയോഗിച്ചാണ് ഇൻസ്uറ്റാൾ ചെയ്uതിരിക്കുന്നത്. എന്നാൽ ഒരു കാരണവശാലും ഇത് ഇൻസ്റ്റാൾ ചെയ്തിട്ടില്ലെങ്കിൽ, ഇത് ഇൻസ്റ്റാൾ ചെയ്യാൻ ഇനിപ്പറയുന്ന dnf കമാൻഡ് എക്uസിക്യൂട്ട് ചെയ്യുക.

$ sudo dnf install teamd

ഇൻസ്റ്റാൾ ചെയ്തുകഴിഞ്ഞാൽ, rpm കമാൻഡ് പ്രവർത്തിപ്പിച്ച് ടീംഡ് ഇൻസ്റ്റാൾ ചെയ്തിട്ടുണ്ടോയെന്ന് പരിശോധിക്കുക:

$ rpm -qi teamd

NIC ടീമിംഗ് കോൺഫിഗർ ചെയ്യുന്നതിന്, NetworkManager സേവനത്തിന്റെ മാനേജ്മെന്റിന് ഉപയോഗിക്കാവുന്ന ഹാൻഡി nmcli ടൂൾ ഞങ്ങൾ ഉപയോഗിക്കും. എന്റെ സിസ്റ്റത്തിൽ, ഒരു ലോജിക്കൽ ടീം ഇന്റർഫേസ് സൃഷ്uടിക്കാൻ ഞാൻ ബോണ്ട് ചെയ്യാനോ സംയോജിപ്പിക്കാനോ പോകുന്ന 2 NIC കാർഡുകൾ ഉണ്ട്: enp0s3, enp0s8. നിങ്ങളുടെ കാര്യത്തിൽ ഇത് വ്യത്യസ്തമായിരിക്കാം.

സജീവ നെറ്റ്uവർക്ക് ഇന്റർഫേസുകൾ സ്ഥിരീകരിക്കുന്നതിന് പ്രവർത്തിപ്പിക്കുക:

$ nmcli device status

ഔട്ട്പുട്ട് 2 സജീവ നെറ്റ്വർക്ക് കണക്ഷനുകളുടെ അസ്തിത്വം സ്ഥിരീകരിക്കുന്നു. UUID പോലുള്ള ഇന്റർഫേസുകളെക്കുറിച്ച് കൂടുതൽ വിവരങ്ങൾ ശേഖരിക്കുന്നതിന്, കമാൻഡ് പ്രവർത്തിപ്പിക്കുക:

$ nmcli connection show

ഒരു നെറ്റ്uവർക്ക് ടീമിംഗ് ലിങ്ക് അല്ലെങ്കിൽ ഇന്റർഫേസ് സൃഷ്uടിക്കാൻ, അത് ഞങ്ങളുടെ ലോജിക്കൽ ലിങ്കായിരിക്കും, ഞങ്ങൾ നിലവിലുള്ള നെറ്റ്uവർക്ക് ഇന്റർഫേസുകൾ ഇല്ലാതാക്കാൻ പോകുന്നു. അതിനുശേഷം ഞങ്ങൾ ഇല്ലാതാക്കിയ ഇന്റർഫേസുകൾ ഉപയോഗിച്ച് സ്ലേവ് ഇന്റർഫേസുകൾ സൃഷ്uടിക്കുകയും ടീമിംഗ് ലിങ്കുമായി അവയെ ബന്ധപ്പെടുത്തുകയും ചെയ്യും.

അവയുടെ യുയുഐഡി ഉപയോഗിച്ച് ലിങ്കുകൾ ഇല്ലാതാക്കാൻ താഴെയുള്ള കമാൻഡുകൾ പ്രവർത്തിപ്പിക്കുക:

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

ഈ സമയം നിങ്ങൾ ഇന്റർഫേസുകൾ പരിശോധിക്കുമ്പോൾ, അവ വിച്ഛേദിക്കപ്പെട്ടതും സെർവറിലേക്ക് കണക്ഷൻ നൽകാത്തതും നിങ്ങൾ ശ്രദ്ധിക്കും. അടിസ്ഥാനപരമായി, നിങ്ങളുടെ സെർവർ നെറ്റ്uവർക്കിന്റെ ബാക്കി ഭാഗങ്ങളിൽ നിന്ന് ഒറ്റപ്പെട്ടതായിരിക്കും.

$ nmcli device status

അടുത്തതായി, ഞങ്ങൾ സജീവ-ബാക്കപ്പ് റണ്ണർ മോഡിൽ team0 എന്ന പേരിൽ ഒരു ടീം ഇന്റർഫേസ് സൃഷ്ടിക്കാൻ പോകുന്നു. നേരത്തെ പ്രസ്താവിച്ചതുപോലെ, സജീവമായ ബാക്കപ്പ് റണ്ണർ മോഡ് ഒരു സജീവ ഇന്റർഫേസ് ഉപയോഗിക്കുകയും സജീവമായ ലിങ്ക് തകരാറിലായാൽ മറ്റുള്ളവ ആവർത്തനത്തിനായി കരുതുകയും ചെയ്യുന്നു.

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

team0 ഇന്റർഫേസിലേക്ക് നൽകിയിരിക്കുന്ന ആട്രിബ്യൂട്ടുകൾ കാണുന്നതിന് കമാൻഡ് പ്രവർത്തിപ്പിക്കുക:

$ nmcli connection show team0

തികഞ്ഞത്! ഈ സമയത്ത്, ഞങ്ങൾക്ക് ഒരു ഇന്റർഫേസ് മാത്രമേ ഉള്ളൂ, അത് കാണിച്ചിരിക്കുന്നതുപോലെ team0 ഇന്റർഫേസ് ആണ്.

$ nmcli connection show

അടുത്തതായി, nmcli കമാൻഡ് ഉപയോഗിച്ച് കാണിച്ചിരിക്കുന്നതുപോലെ team0 ഇന്റർഫേസിനായി IP വിലാസം കോൺഫിഗർ ചെയ്യുക. നിങ്ങളുടെ നെറ്റ്uവർക്കിന്റെ സബ്uനെറ്റും IP വിലാസ സ്കീമും അനുസരിച്ച് IP-കൾ അസൈൻ ചെയ്യുന്നത് ഉറപ്പാക്കുക.

$ 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

അതിനുശേഷം, സ്ലേവ് ലിങ്കുകൾ സൃഷ്uടിക്കുകയും സ്ലേവുകളെ ടീം ലിങ്കുമായി ബന്ധപ്പെടുത്തുകയും ചെയ്യുക:

$ 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

ലിങ്കുകളുടെ നില വീണ്ടും പരിശോധിക്കുക, സ്ലേവ് ലിങ്കുകൾ ഇപ്പോൾ സജീവമാണെന്ന് നിങ്ങൾ ശ്രദ്ധിക്കും.

$ nmcli connection show

അടുത്തതായി, ടീം ലിങ്ക് നിർജ്ജീവമാക്കി സജീവമാക്കുക. ഇത് സ്ലേവ് ലിങ്കുകളും ടീം ലിങ്കും തമ്മിലുള്ള ബന്ധം സജീവമാക്കുന്നു.

$ nmcli connection down team0 && nmcli connection up team0

അടുത്തതായി, കാണിച്ചിരിക്കുന്നതുപോലെ ടീം ലിങ്ക് കണക്ഷന്റെ അവസ്ഥ പരിശോധിക്കുക.

$ ip addr show dev team0

നമ്മൾ നേരത്തെ കോൺഫിഗർ ചെയ്uത ശരിയായ ഐപി അഡ്രസ്സിംഗിലാണ് ലിങ്ക് ഉള്ളതെന്ന് നമുക്ക് കാണാൻ കഴിയും.

ടീം ലിങ്കിനെക്കുറിച്ചുള്ള കൂടുതൽ വിശദാംശങ്ങൾ വീണ്ടെടുക്കുന്നതിന്, കമാൻഡ് പ്രവർത്തിപ്പിക്കുക:

$ sudo teamdctl team0 state

ഔട്ട്uപുട്ടിൽ നിന്ന്, രണ്ട് ലിങ്കുകളും (enp0s3, enp0s8) മുകളിലാണെന്നും സജീവമായ ലിങ്ക് enp0s8 ആണെന്നും കാണാം.

ഞങ്ങളുടെ സജീവ-ബാക്കപ്പ് ടീമിംഗ് മോഡ് പരിശോധിക്കുന്നതിന്, ഞങ്ങൾ നിലവിൽ സജീവമായ ലിങ്ക് വിച്ഛേദിക്കും - enp0s3 - മറ്റ് ലിങ്ക് പ്രവർത്തിക്കുന്നുണ്ടോയെന്ന് പരിശോധിക്കുക.

$ nmcli device disconnect enp0s3
$ sudo teamdctl team0 state

നിങ്ങൾ ടീമിംഗ് ഇന്റർഫേസിന്റെ സ്റ്റാറ്റസ് പരിശോധിക്കുമ്പോൾ, enp0s8 എന്ന ലിങ്ക് സെർവറിലേക്ക് കണക്ഷനുകൾ ലഭ്യമാക്കിയതായി നിങ്ങൾ കണ്ടെത്തും. ഞങ്ങളുടെ സജ്ജീകരണം പ്രവർത്തിക്കുന്നുവെന്ന് ഇത് സ്ഥിരീകരിക്കുന്നു!

ടീമിംഗ് ഇന്റർഫേസ്/ലിങ്ക് ഇല്ലാതാക്കി ഡിഫോൾട്ട് നെറ്റ്uവർക്ക് ക്രമീകരണത്തിലേക്ക് മടങ്ങാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെങ്കിൽ, ആദ്യം ടീമിംഗ് ലിങ്ക് താഴെ കൊണ്ടുവരിക:

$ nmcli connection down team0

അടുത്തതായി, അടിമകളെ ഇല്ലാതാക്കുക.

$ nmcli connection delete team0-slave0 team0-slave1

അവസാനമായി, ടീമിംഗ് ഇന്റർഫേസ് ഇല്ലാതാക്കുക.

$ nmcli connection delete team0

ഈ സമയത്ത്, എല്ലാ ഇന്റർഫേസുകളും പ്രവർത്തനരഹിതമാണ്, നിങ്ങളുടെ സെർവറിൽ എത്തിച്ചേരാനാകുന്നില്ല. നിങ്ങളുടെ നെറ്റ്uവർക്ക് ഇന്റർഫേസുകൾ സജീവമാക്കുന്നതിനും കണക്റ്റിവിറ്റി വീണ്ടെടുക്കുന്നതിനും, കമാൻഡുകൾ പ്രവർത്തിപ്പിക്കുക:

$ sudo ifconfig enp0s3 up
$ sudo ifconfig enp0s8 up
$ sudo systemctl restart NetworkManager

NIC ടീമിംഗ് നെറ്റ്uവർക്ക് റിഡൻഡൻസിക്ക് ഒരു മികച്ച പരിഹാരം വാഗ്ദാനം ചെയ്യുന്നു. രണ്ടോ അതിലധികമോ നെറ്റ്uവർക്ക് ഇന്റർഫേസുകൾ ഉപയോഗിച്ച്, ഒരു ലിങ്ക് ആകസ്uമികമായി കുറയുന്ന സാഹചര്യത്തിൽ ഉയർന്ന ലഭ്യത ഉറപ്പാക്കാൻ ഏത് റണ്ണർ മോഡിലും നിങ്ങൾക്ക് ഒരു ടീമിംഗ് ഇന്റർഫേസ് കോൺഫിഗർ ചെയ്യാം. ഈ ഗൈഡ് നിങ്ങൾക്ക് സഹായകരമാണെന്ന് ഞങ്ങൾ പ്രതീക്ഷിക്കുന്നു. ഞങ്ങളെ അടിക്കുക, നിങ്ങളുടെ അനുഭവം എങ്ങനെയായിരുന്നുവെന്ന് ഞങ്ങളെ അറിയിക്കുക.