반응형
CentOS 6에서 네트워크 인터페이스 카드(NIC) Bonding을 구성하는 방법
CentOS 6 환경에서 네트워크 인터페이스 카드(NIC) Bonding을 구성하여, 네트워크 이중화와 부하 분산을 구현하는 방법입니다.
환경 정보
인터페이스 | MAC 주소 | 용도 | IP 설정 |
eth0 | 08:00:27:5B:BE:D9 | bond0 (DHCP) | 10.0.2.15 (DHCP) |
eth1 | 08:00:27:A6:82:43 | bond1 (Static) | 192.168.56.10 |
eth2 | 08:00:27:E3:E9:D0 | bond0 (DHCP) | |
eth3 | 08:00:27:EA:D7:42 | bond1 (Static) |
1. Bonding 인터페이스 설정
ifcfg-bond0
vim /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
BOOTPROTO=dhcp
ONBOOT=yes
BONDING_OPTS="mode=1 miimon=100"
ifcfg-bond1
vim /etc/sysconfig/network-scripts/ifcfg-bond1
DEVICE=bond1
BOOTPROTO=static
IPADDR=192.168.56.10
NETMASK=255.255.255.0
ONBOOT=yes
BONDING_OPTS="mode=1 miimon=100"
2. 개별 NIC 인터페이스 설정
각 인터페이스를 해당 bond 그룹의 slave로 지정합니다.
eth0 - bond0 구성(DHCP)
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO=dhcp
HWADDR="08:00:27:5B:BE:D9"
NM_CONTROLLED="yes"
ONBOOT="yes"
USERCTL=no
MASTER=bond0
SLAVE=yes
eth1 - bond1 구성(Static)
vim /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE="eth1"
BOOTPROTO=none
HWADDR="08:00:27:A6:82:43"
NM_CONTROLLED="yes"
ONBOOT="yes"
USERCTL=no
MASTER=bond1
SLAVE=yes
eth2 - bond0 구성(DHCP)
vim /etc/sysconfig/network-scripts/ifcfg-eth2
DEVICE="eth2"
BOOTPROTO=dhcp
HWADDR="08:00:27:E3:E9:D0"
NM_CONTROLLED="yes"
ONBOOT="yes"
USERCTL=no
MASTER=bond0
SLAVE=yes
eth3 - bond1 구성(Static)
vim /etc/sysconfig/network-scripts/ifcfg-eth3
DEVICE="eth3"
BOOTPROTO=none
HWADDR="08:00:27:EA:D7:42"
NM_CONTROLLED="yes"
ONBOOT="yes"
USERCTL=no
MASTER=bond1
SLAVE=yes
3. Bonding 모듈 설정
vim /etc/modprobe.conf
alias eth0 tg3
alias eth1 tg3
alias eth2 tg3
alias eth3 tg3
alias bond0 bonding
alias bond1 bonding
vim /etc/modprobe.d/bonding.conf
alias bond0 bonding
alias bond1 bonding
728x90
4. 네트워크 서비스 재시작
service network restart
5. Bonding 상태 확인
Bonding 마스터 확인
cat /sys/class/net/bonding_masters
bond0 bond1
Bonding 모드 확인
cat /sys/class/net/bond0/bonding/mode
balance-rr 0
인터페이스 상태 확인
ifconfig
bond0 Link encap:Ethernet HWaddr 08:00:27:5B:BE:D9
inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe5b:bed9/64 Scope:Link
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
RX packets:78 errors:0 dropped:0 overruns:0 frame:0
TX packets:144 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:40881 (39.9 KiB) TX bytes:14681 (14.3 KiB)
bond1 Link encap:Ethernet HWaddr 08:00:27:A6:82:43
inet addr:192.168.56.10 Bcast:192.168.56.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fea6:8243/64 Scope:Link
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
RX packets:4217 errors:0 dropped:0 overruns:0 frame:0
TX packets:2230 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:391581 (382.4 KiB) TX bytes:362725 (354.2 KiB)
eth0 Link encap:Ethernet HWaddr 08:00:27:5B:BE:D9
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:15 errors:0 dropped:0 overruns:0 frame:0
TX packets:49 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:7531 (7.3 KiB) TX bytes:5347 (5.2 KiB)
eth1 Link encap:Ethernet HWaddr 08:00:27:A6:82:43
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:3379 errors:0 dropped:0 overruns:0 frame:0
TX packets:2209 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:314419 (307.0 KiB) TX bytes:360511 (352.0 KiB)
eth2 Link encap:Ethernet HWaddr 08:00:27:5B:BE:D9
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:63 errors:0 dropped:0 overruns:0 frame:0
TX packets:95 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:33350 (32.5 KiB) TX bytes:9334 (9.1 KiB)
eth3 Link encap:Ethernet HWaddr 08:00:27:A6:82:43
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:839 errors:0 dropped:0 overruns:0 frame:0
TX packets:21 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:77222 (75.4 KiB) TX bytes:2214 (2.1 KiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:1 errors:0 dropped:0 overruns:0 frame:0
TX packets:1 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:76 (76.0 b) TX bytes:76 (76.0 b)
각 bond 인터페이스와 slave NIC 상태, 트래픽, MAC 주소 등을 확인할 수 있습니다.
Bonding Mode 설명
모드 번호 | 이름 | 설명 |
0 | balance-rr | Round-robin 방식. 순차적으로 모든 NIC 사용. 부하 분산과 장애 조치 모두 지원 |
1 | active-backup | 활성-대기 방식. 하나의 NIC만 사용, 장애 시 다른 NIC로 자동 전환. |
2 | balance-xor | MAC 주소 기반 XOR 연산으로 NIC 선택. 부하 분산 지원. |
3 | broadcast | 모든 NIC에 트래픽을 브로드캐스트. 고가용성에 유리하나 비효율적. |
4 | 802.3ad | IEEE 802.3ad(Link Aggregation Control Protocol) 기반. 스위치 LACP 지원 필요. |
5 | balance-tlb | 전송 시 부하 분산, 수신은 하나의 NIC로. 수신 NIC 장애 시 다른 NIC가 MAC 인계. |
6 | balance-alb | 전송 및 수신 부하 분산 모두 지원. ARP 조작으로 수신 부하 분산 구현. |
참고URL
- IBM Documentation : Bonding modes(All products / Linux on IBM Systems)
반응형
'리눅스' 카테고리의 다른 글
[VNC] VNC "xauth: (stdin):1: bad display name" 에러 발생 시 (0) | 2013.09.20 |
---|---|
CentOS 7에서 고정 IP를 설정하는 방법 (0) | 2013.09.17 |
리눅스에서 기본 게이트웨이(Default Gateway)를 추가하는 방법 (0) | 2013.09.16 |
kickstart ks.cfg 파일 (0) | 2013.09.16 |
[리눅스] grep 명령어 (1) | 2013.09.16 |