다음 이전 차례

13. 이더넷 채널 본딩:

채널 본딩에 관한 내용은 http://www.beowulf.org/software/software.html

요구사항: 시스템당 두개의 이더넷 NIC 각 채널당 두개의 허브 또는 각 채널당 두개의 스위치 또는 버추얼 LAN으로 분리될 수 있는 스위치

수행과정: (리눅스 커널 2.0.36)

1. ifenslave.c 프로그램을 다음 사이트에서 받는다. ( http://beowulf.gsfc.nasa.gov/software/bonding/html) 35라인에 주석처리 "#include " 그리고 "gcc -Wall -Wstrict-prototypes -O ifenslave.c -o ifenslave" 를 실행한다.

2.커널패치를 한다.( ftp://ftp.plogic.com에서 얻은 linux-2.0.36-channel-bonding.path를 커널 패치한다.)그리고 xconfig를 실행시키고 Beowulf Channel Bonding을 가능케 한다.

3. 커널을 재형성하고 컴파일한다. 각 채널은 각기 다른 스위치 또는 허브(또는 분리된 스위치)에 있 어야 하며 두번째 네트웍 인터페이스는 IP 주소를 부여할 필요가 없다. 하지만 그 인터페이스를 분리된 네트웍으로 사용할 것이다. (채널 본딩없이) 이는 몇가지 응용에 이점이 있다.

채널 본딩을 위해 각 시스템이 root로 로그인하여 다음과 같은 명령을 실행한다.

./ifenslave -v eth0 eth1

이는 eth1과 eth0을 연결시켜 준다. 물론 eth0는 이미 시스템에서 받아들여져 있고 클러스터 네트웍으로 사용하고 있다. eth1은 단지 시스템 시작시 OS(Linux)에 의해서 감지된다.

여러분은 반드시 호스트 노드전에 모든 노드들을 슬레이브화함으로 써 이러한 작동을 시킬 수 있다. 각 노드는 다음 과정을 수행한다.

a. 창을 연다. b. 노드2에 로그인 한다. c. root계정으로 위 명령을 수행한다. d. 다른 창을 열어 노드1에 대해서 위의 명령을 수행한다.

그러면 여러분 클러스터는 채널본딩이 된 것이다. netperf나 비슷한 벤치마크를 해봄으로써 이러한 것을 시험해 볼 수 있다.

채널본딩의 멈춤은 쉬운 문제가 아니다. 우리는 이를 잘 살펴보아야 하며 채널본딩이 자동적으로 형성되고 멈추는 명령행을 입력해야한다. 하나의 채널 퍼포먼스를 저장하기 위한 가장 안전한 방법은 각 시스 템을 다시 시작하는 것이거나 네트웍 메니저(제어판의 일부)을 이용 각 인터페이스를 재시작하고 멈추게 할 수 있다.

기억할 점: 채널 본딩이 된 노드들과 그렇지 않은 노드간의 통신은 가능하지만 매우 느리다. 따라서 전체 클러스트가 채널 본딩을 해야 만한다.


다음 이전 차례