[리눅스] 네트워크 인터페이스 bonding 설정

리눅스 운영 체제에서 네트워크 인터페이스 본딩(bonding)은 고가용성 및 부하 분산을 위해 두 개 이상의 네트워크 인터페이스를 결합하는 프로세스입니다. 본딩된 인터페이스는 하나의 가상 인터페이스로 간주되어, 고장 허용성을 향상시키고 대역폭을 확장하는 데 도움이 됩니다.

본딩 모드

리눅스에서 사용 가능한 세 가지 본딩 모드는 다음과 같습니다.

본딩 구성

본딩된 네트워크 인터페이스를 설정하기 위해서는 다음과 같은 단계를 따릅니다.

  1. /etc/sysconfig/network-scripts/ 디렉토리 내에 ifcfg-bond0와 같이 본딩 인터페이스의 설정 파일을 생성합니다.

    DEVICE=bond0
    NAME=bond0
    TYPE=Bond
    BONDING_OPTS="mode=1 miimon=100"
    BOOTPROTO=none
    ONBOOT=yes
    IPADDR=192.168.1.10
    NETMASK=255.255.255.0
    
  2. /etc/sysconfig/network-scripts/ 디렉토리 내에 본딩 인터페이스를 구성하기 위한 실제 네트워크 인터페이스 설정 파일을 생성합니다. 예를 들어, ifcfg-eth0, ifcfg-eth1 등입니다.

    DEVICE=eth0
    TYPE=Ethernet
    BOOTPROTO=none
    ONBOOT=yes
    MASTER=bond0
    SLAVE=yes
    
    DEVICE=eth1
    TYPE=Ethernet
    BOOTPROTO=none
    ONBOOT=yes
    MASTER=bond0
    SLAVE=yes
    
  3. 네트워크 설정을 다시 로드하거나, 네트워크 서비스를 다시 시작하여 설정을 적용합니다.

    systemctl restart network
    

마치며

이렇게 하면 두 개 이상의 네트워크 인터페이스를 본딩하여 네트워크 고가용성과 부하 분산을 구현할 수 있습니다. 각 모드의 장단점을 고려하여 적절한 본딩 모드를 선택하여 시스템의 네트워크 성능을 향상시킬 수 있습니다.

참고: Red Hat Enterprise Linux Documentation