IPMP는 Solaris에서 기본으로 제공하는 기능으로서 Network Adapter에 대한
Single Point Failure로부터 보호되며 또한 동일한 IP link에 여러개의
Network Adapter가 연결되어 있으면 Throughput도 증가된다.
Feature NAFO IPMP
===================================================================
Failure 감지 Physical Link IP Link
Fail over time 20sec 이상 2~3 sec이내
Active상태 1개만 Active 모두 Active가능
Load Balance No Load Spreading
===================================================================
Feature Trunking IPMP
===================================================================
Inbound Load Spreading Y Y (1)
Uses Single IP address Y N
Uses Single MAC address Y N
Supports hot standby NIC N Y
Supports built-in NICs N (4) Y
Bundled with Solaris N (5) Y (S8 10/00)
Supports Many Link Layers N Y
Outbound Load Spreading Y Y
Auto NIC Failover Y Y
Basis for later
SunCluster NIC failover N Y (3.next)
Supports Solaris <= S8 Y N
(1)Future release will implement IEEE 802.3ad and which will support
auto inbound load balancing for switches which support 802.3ad.
Most switches using trunking implement MAC address hashing for
load balancing so that inbound load from multiple clients will
be evenly split across available ports.
====================================================================
- Failure Detection
Network adapter가 fail되었을때 이를 감지하여 자동적으로 다른 Network
adapter를 통하여 네트워크에 접속할수 있도록 전환해준다. 감지하는 방
법은 각 adapter에 Test IP를 부여하여 이를 이용하여 네트워크상에 있는
target과 ICMP request와 Reply에 의하여 판단한다.
- Outbound Load Spreading
Outbound 되는 패켓에 대하여 여러개의 Network adapter에 분산되어 전달
된다. 그러나 한개 이상의 Client와 통신할때만 이루어진다.
- Repair Detection
Fail된 Network dapter에 대하여 연속적으로 체크를 하며, Repair되었을때
는 자동적으로 Fail back할수 있다.(Failbacks를 enable했을때)
< IPMP를 구성하기위한 요구사항>
- Hardware지원
IPMP는 SPARC, Intel 환경 모두 지원하여, 다른종류의 Network adapter
(즉,le, hme, ge, qfe등)들과도 같은 IPMP group에 구성될수 있다.
주의사항:IPMP구성시 "local-mac-address?"는 true로 해야한다.
- Software
IPMP는 Solaris 8 Updated 2(H/W 10/00)에서부터 지원된다.
< IPMP 테스트 target선정방법>
in.mpathd 해당 network adapter를 검증하기위해서 Target정하는데 있어서
자동적으로 정해지며 이는 임으로 구성할수 없다.
1) netstat -r에서 router를 찾아 target 등록
2) 위에서 router가 없으면 없으면 같은 link상에 있는 임의의 Host들을
Multicast packet을 보내(IPv4=224.0.0.1, IPv6=ff02::1)을 모든 host
들에게 보낸 응답자들중에서 선정한다. 만일 router나 host가 ICMP echo
에대하여 응답이 하나도 없으면 in.mpathd는 target을 찾을때까지 연속
적으로 Multicast을 보낼것이다.
3) 위와 같은 상황에서 router가 없으면 brocast 를 보내기 때문에 해당
네트워크상에 부하를 준다. 이를 회피하는 방법으로 infodoc 41422에
설명된바와 같이 임으로 해당 네크워크상의 호스트를 target으로
선정하여 IPMP를 구성한 host routing table에 등록해준다.
예) host0(10.1.1.1),host1(10.1.1.2) : 네트워크상의 시스템,
host2(10.1.1.3): IPMP를 구성한 시스템
host2># route add host 10.1.1.1 10.1.1.1
host2># route add host 10.1.1.2 10.1.1.2
위와 같이 host2에 routing table에 등록을 해주면 in.mpathd는
등록된 router를 테스트 target시스템으로 등록을한다.
** 만일 동일 네트워크상에 계층적으로 LAN switch가 구성되어져
있다면, 가장 상위에 연결되어있는 시스템을 target으로 정한다면
해당 경로에 있는 switch도 점검이 가능하다.
< NIC의 Failure/Repair감지>
in.mpathd는 이는 위에서 정한 target(host)들에 대하여 ICMP echo request
/replies(PING-PONG)에 의해서 감지한다.
< IPMP Configuration >
Example)
192.9.200.1 v480 loghost ; 실제 시스템 IP
192.9.200.3 v480-test ; ce0 테스트 어드레스
192.9.200.4 v480-second-test ; ce1 테스트 어드레스
[ ] 다음과 같이 IPMP구성
# ifconfig ce0 group v480-group ; v480라는 그룹에 설정
# ifconfig ce1 group v480-group ; v480라는 그룹에 설정
[ ] 로지칼 인터페이스 생성 및 테스트 IP 어드레스 설정 테스트 IP 어
드레스는 각 NIC의 로지칼 인터페이스를 만들어 그에 할당 해 사용
합니다.
# ifconfig ce0 addif v480-test deprecated -failover netmask
+ boradcast + up
(deprecated 파라미터는 애플리케이션에서 사용 못하게 함)
# ifconfig ce1 v480-second-test deprecated -failover netmask +
broadcast + standby up
여기까지 하면 설정 완료 되고, ifconfig 로 설정을 확인
[ ] 다음은 영구적으로 사용하기 위해 파일에 등록
==== /etc/hostname.ce0 ====
v480 netmask + broadcast + group v480-group up
addif v480-test deprecated -failover netmask + boradcast + up
==== /etc/hostname.ce1 ====
v480-second group v480-group deprecated -failover netmask +
boradcast + standby up
'OS > SOLARIS' 카테고리의 다른 글
솔라리스에서 xmanager 접속을 차단하거나, 통제하기 (0) | 2007.11.17 |
---|---|
sun ipmp 관련 정보 사이트들 (0) | 2007.08.28 |
IPMP Link-based Failure Detection with Solaris [TM] 10 Operating System (OS) and higher (0) | 2007.08.28 |
Tape 디바이스 명령어 (0) | 2007.08.22 |
솔라리스에서 NFS 마운트시 vfstab 설정법 (0) | 2007.08.22 |