본문으로 바로가기

1. HACMP 개념 알기

category STUDY/Power HA 2019. 7. 22. 18:50

1. 기본개념  

HACMP의 개념은 흔히 high availability, 또는 fault resilient라고 하는 것으로서, 두 대 이상의 system을 하나의 “cluster”로 묶어서,  각 system 이 감시하고 있다가 한 대에 장애가 발생하면, 다른 system이 장애가 발생한 system의 자원을 “takeover(인수)”하는 것이다. 

 

즉, 장애 발생 시에는 자원을 분명히 system service의 중단이 일어나게 되며, 이 중단 시간을 최소화하는 것이 HACMP의 기능인 것이다.  대개의 경우, 중단 시간은 30초에서 300초에 이르게 된다.

이와 비교되는 개념으로는 fault tolerant system이 있다.  
이는 system box 단위의 중복 설치보다는 하나의 system box  내부에서 hardware 부품 단계에서 중복 설계를 함으로써 
일부 부품에 장애가 발생하더라도 system down이 전혀 일어나지 않도록 되어있는 개념이다.

 

 

2. 구성요소 

HACMP는 clstmgr(cluster manager), clsmuxpd(cluster SNMP agent), clinfo (cluster information service), cllockd(cluster lock manager) 등의 요소로 구성되어 있다. clstmgr은 clsmuxpd를 통해 다른 node(system)와 keepalove 또는 heartbeat이라 불리는 packet을 교환한다.

 

  •  cluster manager(clstmgr): cluster의 각 node에서 run하면서 기본적으로 cluster의 상태를 monitoring하고 notification하는 프로세서이다.  즉 cluster의 상태가 변화하는 경우 cluster objects(node, network, interface)를 monitor하고 node change가 발생할 때 event script의 실행을 trigger하는 event를 생성해 낸다.
  • cluster SNMP agent(clsmuxpd): cluster 의 각 node에서 run하면서 clinfo를 통하여 client application들에 SNMP support를 제공한다. 
      Clsmuxpd은 management information base(MIB)에 있는 status정보를 maintain한다. 
      사용자는 이 MIB에 있는 cluster information을 access하기 위해서 standard SNMP routines을 사용할 수 있다.
  • cluster information service(clinfo): SNMP monitor 기능을 제공한다. 
    Clinfo daemon은 cluster SMUX peer에게 요청하여 그 cluster들에 그 data에 access 할 수 있는 API를 제공한다.

 

3. HACMP 동작

  • System 전체 장애 발생시: 한 node로 부터 keepalive packet이 전혀 오지 않는 경우, backup node는 그 node가 down 되었다고 판단하여 그 node가 가지고 있던 자원, 
      즉 disk volume group, filesystem, IP address, application등을 takeover해서 자기가 대신 service를 수행한다. 
      이때, client는 잠시 service 중단을 하게 되고, telnet session 등을 맻고 있던 것은 끊어져서 다시 맺어야한다.

 

  • Network adapter 장애 발생시: 대게 node는 1장의 service adapter와 1장 이상의 standby adapter를 가진다. 
    이때, service adapter에 장애가 발생하면 그 IP address는 같은 node 내의 standby adapter로 swapping이 일어난다. 
    이때는 client들은 30초 미만의 hang을 격을 뿐 대부분의 service를 계속 받을 수 있고, telnet 등도 끊어지지 않는다.


  • Network 전체 장애 발생시: network 장애가 발생하는 경우엔 clstrmgr은 일단 network_down event를 발생시킨다. 
    이때 실행 되어야 할 복구 script는 HACMP에서 default로 제공되지 않는다.

 

4. HACMP를 이용하여 보호할 수 있는 자원

  • Disk Volume Group
         ->   Backup node에서 varyon되어 사용 가능해진다.
  • Filesystem (with NFS export/mount)
         ->  Backup node에서 mount되고, NFS export/mount 까지 수행된다.
  • Concurrent Volume Group
         ->  Concurrent Volume Group을 concurrent mode로 varyon된다.
  • IP Address
          ->  Fail된 service IP address를 standby adapter에 config한다.
  • Applications
          ->  위의 복구가 다 수행되면 주어진 script에 따라 application을 restart한다.

 

 

5. HACMP 구성절차 


1. Concurrent VG, normal VG, WLPAR VG 생성
2.  /etc/hosts file editing
3.  Cluster 생성
4. Node 생성
5.  Discover HACMP-related
6. HACMP Network 생성
7. Communication Interface 선택
8. Persistent IP Address 등록
9. Service IP Address 등록
10. Resource Group 등록
11. Synchronization 실행
12. Start/Stop Cluster Service 실행