Bonding
- 서버가 외부로 나가기 위한 네트워크 장치.
- 모드는 0~6번까지 있는데, 보통 0을 사용한다.
- 실무에서는 대역폭을 확장하기 위함보다는 장애 대비용으로 사용한다.
- 보통 Switch, Cable, NIC Port 등의 장애를 대비하여 이중화구성을 한다.
1. 장점
- 대역폭 확장
- 장애 대비
2. 모드
- 모드는 0~6번까지 있는데, 대부분 1번만 사용한다.
2.1 bonding 0번 ( Round-Robin )
- 장애 대비와 Traffic 분산을 위해 설정한다.
2.2 bonding 1번 ( Active-Backup )
- 여러 개의 Slave Interface를 구성할 수 있고, 여러개중 오직 하나만 전송이 가능하다.
- 스위치에 추가 설정이 필요없으며, 주력으로 사용하는 인터페이스를 설정할 수 있다.
※ 네트워크 인터페이스 설정
# vim /etc/sysconfig/network-scripts/ifcfg-eth0
( vim /etc/sysconfig/network-scripts/ifcfg-eth0 의 화면 )
위의 설정 말고도
- USERCTL : 일반 사용자 계정이 해당 장치 제어 여부
- HWADDR : 하드웨어 주소. 즉 맥 주소
등등이 있다.
Bonding으로 서버 구축해보기
[ 본딩 준비 단계 ]
1. VMware에서 'Network Adapter' 추가.
2. NiC 추가 확인
# ifconfig -a
3. 설정 파일 생성
# vi /etc/sysconfig/network-scripts/ifcfg-eth0 슬레이브 인터페이스
ifcfg-eth0의 화면
# vi /etc/sysconfig/network-scripts/ifcfg-eth1 슬레이브 인터페이스
ifcfg-eth1의 화면
# vi /etc/sysconfig/network-scripts/ifcfg-bond0 마스터 인터페이스
ifcfg-bond0의 화면
여기서, miimon은, MII Link(NIC포트)를 얼마나 자주 감시할 것인가를 0.001초 단위로 설정한다.
즉, MII는 NIC 카드가 활성화 되어 있는지를 확인하는데 사용하는 것이다.
특히, HA(고가용성), Fault-tolerent 기능을 사용할 때 MII가 필요하다.
[ 본딩 적용 과정 ]
1. /etc/modprobe.d/bonding.conf 파일 생성
# vim /etc/modprobe.d/bonding.conf
2. 본딩 적용
# modprobe bond0 커널에 본딩 모듈 추가
3. 네트워크 재시작
# service network restart
4. 설정 확인
# cat /proc/net/bonding/bond0 파일내용 확인
1) 본딩을 한 eth 포트가 정상적으로 출력되었는가?
2) Bonding모드가 Active-Backup으로 잘 되었는가?
3) 현재 Active 상태인 인터페이스를 확인
ex) Currently Active Slave : eth0
4) 모니터링 및 통신 상태 확인
ex) MII Status : up
[ 본딩 확인 과정 ]
1. Sever-A 세션 2개
1번 Sever-A
# watch -d -n 0.1 "cat /proc/net/bonding/bond0"
2번 Sever-A
# ping 8.8.8.8
|| 정상 작동
|| eth0을 종료시켰을 때.
- eth0이 종료되자, bond0은 eth1로 통신을 바꿨다.
- 핑도 정상적으로 계속 나가고 있다.
|| eth1을 종료시켰을 때.
- eth1이 종료되자, bond0은 eth0로 통신을 바꿨다.
- 핑도 정상적으로 계속 나가고 있다.
[ 실습 결과 ]
성공!
bonding이 정상적으로 잘 구현되었다!
'OS > Cent OS' 카테고리의 다른 글
이론+실습] DNS -1 (0) | 2017.02.18 |
---|---|
Telnet (0) | 2017.02.18 |
IP 확인을 위한 Ping 과 ifconfig (0) | 2017.02.12 |
RPM & YUM (0) | 2017.02.11 |
chkconfig 과 service (0) | 2017.02.05 |
리눅스의 부팅 과정 (0) | 2017.02.05 |
댓글