웹사이트 검색

CentOS 8/RHEL 8에서 NIC 팀 구성 또는 본딩을 만드는 방법


NIC 팀 구성은 중복성과 고가용성을 제공하기 위해 두 개 이상의 네트워크 링크를 단일 논리 링크로 집계하거나 결합하는 것입니다. 논리적 인터페이스/링크를 팀 인터페이스라고 합니다. 활성 물리적 링크가 중단되는 경우 백업 또는 예약된 링크 중 하나가 자동으로 시작되어 서버에 대한 중단 없는 연결을 보장합니다.

팀 구성 용어

본격적으로 알아보기 전에 다음 용어를 숙지하는 것이 중요합니다.

  • Teamdlibteam 라이브러리를 사용하여 Linux 커널을 통해 팀 장치와 통신하는 nic 팀 구성 데몬입니다.
  • Teamdctl – 사용자가 teamd의 인스턴스를 제어할 수 있는 유틸리티입니다. 포트 상태를 확인 및 변경할 수 있을 뿐만 아니라 백업 상태와 활성 상태 간 전환도 가능합니다.
  • 실행자JSON으로 작성된 코드 단위이며 다양한 NIC 팀 구성 개념을 구현하는 데 사용됩니다. 실행기 모드의 예로는 라운드 로빈, 로드 밸런싱, 브로드캐스트 및 활성 백업이 있습니다.

이 가이드에서는 활성 백업 모드를 사용하여 NIC 팀 구성을 구성합니다. 이는 하나의 링크가 활성 상태로 유지되고 나머지 링크는 대기 상태로 유지되며 활성 링크가 중단될 경우 백업 링크로 예약됩니다.

이 페이지에서

  • CentOS에 팀 데몬 설치
  • CentOS에서 NIC 팀 구성
  • 네트워크 팀 구성 중복성 테스트
  • 네트워크 팀 구성 인터페이스 삭제

더 이상 고민하지 말고 시작해 보겠습니다.

1단계: CentOS에 팀 구성 데몬 설치

Teamd는 런타임 중에 논리적 인터페이스 역할을 할 네트워크 팀을 생성하는 데몬입니다. 기본적으로 CentOS/RHEL 8과 함께 설치됩니다. 하지만 어떤 이유로든 설치되지 않은 경우 다음 dnf 명령을 실행하여 설치하세요.

sudo dnf install teamd

설치가 완료되면 rpm 명령을 실행하여 teamd가 설치되었는지 확인하세요.

rpm -qi teamd

2단계: CentOS에서 NIC 팀 구성

NIC 팀 구성을 위해 NetworkManager 서비스 관리에 사용할 수 있는 편리한 nmcli 도구를 사용합니다. 내 시스템에는 논리적 팀 인터페이스(enp0s3enp0s8)를 만들기 위해 결합하거나 결합할 2개의 NIC 카드가 있습니다. 귀하의 경우에는 다를 수 있습니다.

활성 네트워크 인터페이스를 확인하려면 다음을 실행하세요.

nmcli device status

출력에서는 2개의 활성 네트워크 연결이 있음을 확인합니다. UUID와 같은 인터페이스에 대한 자세한 정보를 수집하려면 다음 명령을 실행하세요.

nmcli connection show

논리적 링크가 될 네트워크 팀 구성 링크 또는 인터페이스를 생성하기 위해 기존 네트워크 인터페이스를 삭제하겠습니다. 그런 다음 삭제된 인터페이스를 사용하여 슬레이브 인터페이스를 생성한 다음 이를 팀 구성 링크와 연결합니다.

해당 UUID를 사용하여 아래 명령을 실행하여 링크를 삭제합니다.

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

이번에는 인터페이스를 확인하면 연결이 끊어지고 서버에 연결되지 않는 것을 알 수 있습니다. 기본적으로 서버는 나머지 네트워크와 격리됩니다.

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 주소를 구성합니다. 네트워크의 서브넷 및 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

그런 다음 슬레이브 링크를 생성하고 슬레이브를 팀 링크에 연결합니다.

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

링크가 이전에 구성한 올바른 IP 주소로 연결되어 있음을 확인할 수 있습니다.

팀 링크에 대한 추가 세부정보를 검색하려면 다음 명령어를 실행하세요.

sudo teamdctl team0 state

출력에서 두 링크(enp0s3enp0s8)가 모두 작동 중이고 활성 링크가 enp0s8임을 확인할 수 있습니다.

3단계: 네트워크 팀 중복성 테스트

활성 백업 팀 구성 모드를 테스트하기 위해 현재 활성 링크(enp0s3)의 연결을 끊고 다른 링크가 시작되는지 확인합니다.

nmcli device disconnect enp0s3
sudo teamdctl team0 state

팀 구성 인터페이스의 상태를 확인하면 enp0s8 링크가 시작되어 서버에 대한 연결을 제공하고 있음을 알 수 있습니다. 이는 설정이 작동하고 있음을 확인합니다!

4단계: 네트워크 팀 구성 인터페이스 삭제

팀 구성 인터페이스/링크를 삭제하고 기본 네트워크 설정으로 되돌리려면 먼저 팀 구성 링크를 해제하세요.

nmcli connection down team0

다음으로 슬레이브를 삭제합니다.

nmcli connection delete team0-slave0 team0-slave1

마지막으로 팀 구성 인터페이스를 삭제합니다.

nmcli connection delete team0

이 시점에서는 모든 인터페이스가 다운되어 서버에 연결할 수 없습니다. 네트워크 인터페이스를 활성화하고 연결을 다시 얻으려면 다음 명령을 실행하세요.

sudo ifconfig enp0s3 up
sudo ifconfig enp0s8 up
sudo systemctl restart NetworkManager
결론

NIC 팀 구성은 네트워크 중복성을 위한 탁월한 솔루션을 제공합니다. 2개 이상의 네트워크 인터페이스를 사용하면 모든 실행기 모드에서 팀 구성 인터페이스를 구성하여 링크 하나가 실수로 중단되는 경우 고가용성을 보장할 수 있습니다. 이 가이드가 도움이 되었기를 바랍니다. 우리에게 연락하여 귀하의 경험이 어땠는지 알려주세요.