본문 바로가기
OS/Cent OS

VMware에서 Bonding으로 서버 구축하기

by 티옌.liy 2017. 2. 12.


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

댓글