Linix Network Bonding Part 1 – mode 0: Round-Robin
Round-Robin 방식은 여러 대의 서버로 구성된 네트워크에서 각 서버로 요청을 분산하는 방식입니다.
이 방식은 각 서버가 일정한 시간 동안 요청을 처리한 후 다음 서버로 넘어가는 방식으로 동작
포스팅 목차
Round-Robin 특징
1.균등한 부하 분산 : 모든 서버가 동일한 시간 동안 요청을 처리하므로, 각 서버에 부하가 균등하게 분산됩니다.
2.빠른 응답 시간 : 요청이 서버 간에 빠르게 전달되므로, 사용자에게 빠른 응답 시간을 제공할 수 있습니다.
3.자원 활용 효율성 : 모든 서버가 항상 동작하므로, 자원 활용 효율성이 높습니다.
4.단점 : 서버의 수가 증가할수록 네트워크 트래픽이 증가할 수 있고 서버 간의 통신이 필요하므로, 네트워크 대역폭이 많이 필요합니다.
Configure the network
네트워크는 ens160, ens256 기존에 미리 고정 IP를 설정했습니다.
설정 방법은 아래 글을 확인해주세요.
1. 본딩을 위한 새로운 연결을 생성 및 본딩 연결의 이름을 ‘bond0’로 설정
# nmcli con add type bond con-name bond0 ifname bond0 mode balance-rr miimon 100 updelay 200 downdelay 200
nmcli con add 명령어는 네트워크 연결을 추가하는 명령어
- type: 네트워크 연결의 종류를 지정, bond(본딩)를 사용합니다.
- con-name: 네트워크 연결의 이름을 지정, bond0을 사용합니다.
- ifname: 네트워크 인터페이스의 이름을 지정, bond0을 사용합니다.
- mode: 본딩 모드를 지정, balance-rr(라운드 로빈)을 사용합니다.
- miimon: 본딩 모니터링 인터벌을 지정, 100ms를 사용합니다.
- updelay: 본딩 업타임 지연 시간을 지정, 200ms를 사용합니다.
- downdelay: 본딩 다운타임 지연 시간을 지정, 200ms를 사용합니다.
bond0이라는 이름의 본딩 인터페이스를 추가하고, 본딩 모드를 라운드 로빈으로 설정하며, 본딩 모니터링 인터벌과 지연 시간을 지정
2.이더넷 인터페이스를 본딩 연결에 추가
# nmcli con add type ethernet con-name bond0-slave1 ifname ens160 master bond0
# nmcli con add type ethernet con-name bond0-slave2 ifname ens256 master bond0
‘ens160’라는 이름의 이더넷 인터페이스를 ‘bond0’라는 본딩에 추가하고, 이 연결의 이름을 ‘bond0-slave1’로 지정
ens256도 동일하게 설정
3. IP, GW 설정
# nmcli con mod bond0 ipv4.method manual ipv4.addresses "192.168.75.237/24" ipv4.gateway "192.168.75.1"
# nmcli con mod bond0 ipv4.addresses "192.168.75.40/24"
# nmcli con up bond0
‘bond0’라는 연결의 IPv4 설정을 수동으로 변경하고, IPv4 주소를 “192.168.75.237”로, 네트워크 마스크를 “/24(255.255.255.0)”로, 게이트웨이를 “192.168.75.1”로 설정
설정 완료 후 본딩 확인
명령어 입력 시 하단과 같이 네트워크 본딩 확인이 되면 설정 끝
하나의 인터페이스 다운 후 확인 가능.