본문 바로가기

리눅스

CentOS 7에서 bonding과 teaming 차이점 및 구성 방법

반응형

CentOS 7에서 bonding과 teaming(teaming) 차이점 및 구성 방법

CentOS 7에서 bonding과 teaming은 네트워크 인터페이스를 묶어서 높은 가용성과 대역폭을 제공하는 두 가지 다른 방법입니다.

1. Bonding

  • bonding은 여러 네트워크 인터페이스를 하나의 가상 인터페이스로 묶는 것을 말합니다.
  • 하나 이상의 물리적 네트워크 인터페이스를 사용하여 연결을 구성하고, 해당 연결이 가용성 및 대역폭 증가를 제공하는 논리적인 단일 인터페이스로 작동합니다.
  • bonding 모드에는 다양한 옵션이 있으며, 예를 들어, active-backup, balance-rr, 802.3ad(LACP), balance-xor 등의 모드를 사용할 수 있습니다.
  • bonding은 주로 서버 로드 밸런싱과 고 가용성 구성을 위해 사용됩니다.

2. Teaming

  • teaming은 bonding과 유사하지만, 더 유연하고 고급 기능을 제공하는 논리적 네트워크 인터페이스 관리 방법입니다.
  • teaming은 여러 네트워크 인터페이스를 하나의 물리적 또는 가상 팀 인터페이스로 묶어 통합합니다.
  • bonding과 달리 다양한 로드 밸런싱 알고리즘, MAC 주소 동적 변경, 패킷 분산 등 고급 기능을 지원합니다.
  • teaming은 네트워크 가용성을 향상시키고 대역폭을 분산시키는데 사용되며, 복잡한 네트워크 환경에서 효율적인 네트워크 링크 관리를 제공합니다.

요약하면, bonding은 물리적 네트워크 인터페이스를 묶어서 하나의 가상 인터페이스로 작동하는 반면, teaming은 bonding에 비해 더 많은 고급 기능과 유연성을 제공하며 물리적 또는 가상 인터페이스를 통합하여 사용합니다. 선택은 사용 목적과 요구 사항에 따라 달라집니다.

728x90

 

bonding과 teaming을 구성하는 방법

1. Bonding 구성

  • bonding 모듈 로드:
modprobe bonding
  • bonding 인터페이스 설정 파일(/etc/sysconfig/network-scripts/ifcfg-bondX) 생성:
DEVICE=bondX
TYPE=Bond
BONDING_OPTS="mode=<mode> miimon=<interval> <additional_options>"
BOOTPROTO=none
ONBOOT=yes
NM_CONTROLLED=no
  • <mode>: 사용할 bonding 모드(예: active-backup, balance-rr, 802.3ad 등)
  • <interval>: 주기적으로 네트워크 상태를 확인하는 간격
  • 실제 물리적 인터페이스 설정 파일(/etc/sysconfig/network-scripts/ifcfg-ethX) 생성:
DEVICE=ethX
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=bondX
SLAVE=yes
NM_CONTROLLED=no
  • 네트워크 서비스 재시작:
systemctl restart network

2. Teaming 구성

  • teamd 패키지 설치:
yum install teamd
  • team 인터페이스 설정 파일(/etc/sysconfig/network-scripts/ifcfg-teamX) 생성:
DEVICE=teamX
DEVICETYPE=Team
TEAM_CONFIG='{"runner": {"name": "<runner>"}, "link_watch": {"name": "ethtool"}}'
BOOTPROTO=none
ONBOOT=yes
NM_CONTROLLED=no
  • <runner>: 사용할 team runner(예: activebackup, roundrobin, lacp 등)
  • 실제 물리적 인터페이스 설정 파일(/etc/sysconfig/network-scripts/ifcfg-ethX) 생성:
DEVICE=ethX
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=teamX
SLAVE=yes
NM_CONTROLLED=no
  • teamd 서비스 재시작:
systemctl restart teamd

 

위의 구성은 bonding과 teaming을 각각 설정하는 방법을 보여줍니다. 필요에 따라 bonding 또는 teaming의 모드, 러너, 추가 옵션을 조정하여 설정을 변경할 수 있습니다.

 

참고: bondX 및 teamX는 각각 bonding 및 teaming 인터페이스의 이름을 나타냅니다. X는 임의의 숫자 또는 문자일 수 있습니다. 실제 인터페이스 이름 및 설정은 환경에 따라 다를 수 있으므로 적절하게 수정해야 합니다.

 

참고URL

- A Comparison of Features in Bonding and Team : https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-comparison_of_network_teaming_to_bonding
- CentOS / RHEL 7 : How to create an Network Bonding (NIC teaming) using nmcli : https://www.thegeekdiary.com/centos-rhel-7-how-to-create-an-interface-bonding-nic-teaming-using-nmcli/
-Configure Aggregated Network Links on RHEL 7: Bonding and Teaming : https://www.lisenet.com/2016/configure-aggregated-network-links-on-rhel-7-bonding-and-teaming/
- RHEL 7에 티밍(teaming) 설정하는 방법 : http://klero.tistory.com/entry/RHEL-7%EC%97%90-%ED%8B%B0%EB%B0%8Dteaming-%EC%84%A4%EC%A0%95%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95

 

728x90
반응형