A Kernel-Level Group Communication System for Highly Available Linux Cluster

리눅스 클러스터의 고가용성 보장을 위한 커널 수준 그룹 통신 시스템

  • 이상균 (삼성전자(주) DVS사업부 시스템 프로그래머) ;
  • 박성용 (서강대학교 컴퓨터학과)
  • Published : 2003.10.01

Abstract

With the increase of interests in cluster, there have been a number of research efforts to address the high availability issues on cluster. However, there are no kernel-level group communication systems to support the development of kernel-level application programs and it is not easy to use traditional user-level group communication systems for the kernel-level applications. This paper presents the design and implementation issues of KCGCS(Kernel-level Cluster Group Communication System), which is a kernel-level group communication module for linux cluster. Unlike traditional user-level group communication systems, the KCGCS uses light-weight heartbeat messages and a ring-based heartbeat mechanism, which allows users to implement scalable failure detection mechanisms. Moreover, the KCGCS improves the reliability by using distributed coordinators to maintain membership information.

클러스터에 대한 관심이 증가함에 따라 클러스터의 고가용성(high availability)을 보장하기 위한 그룹 통신 시스템의 연구가 활발하다. 하지만 클러스터를 이용한 커널 수준 응용 프로그램 개발에 활용할 수 있는 커널 수준의 그룹 통신 시스템은 전무하며, 기존에 개발되어 있는 사용자 수준 그룹 통신시스템을 그대로 커널 수준에서 사용하는 것은 무리가 있다. 본 논문에서는 클러스터의 고 가용성 보장을 위하여 리눅스 커널 상에서 구현된 그룹 통신 시스템인 KCGCS(Kernel-level Cluster Group Communication System)를 설계하고 구현하였다. KCGCS는 기존 사용자 수준의 시스템들과는 달리 경량(light weight)의 핫빗(heartbeat) 메시지와 링(ring) 구조의 핫빗 메커니즘을 사용하여 확장성 있는 장애 상황 발견 메커니즘을 구현하였다. 또한 멤버쉽 관리 측면에서 KCGCS는 중앙 집중된 기존의 방법과는 달리 분산된 코디네이터를 사용하여 신뢰성을 향상시켰다.

Keywords

References

  1. K. Birman, B. Constable, M. Hayden, J. Hickey, C. Kreitz, R. Renesse, O. Rodeh, W. Vegels, 'The Horus and Ensemble Projects: Accomplishment and Limitations,' 2000
  2. R. Renesse, K. Birman, S. Maffeis, 'Horus: A Flexible Group Communication System,' 1996
  3. 'Ensemble Tutorial,' http//www.cs.cornell.edu/Info/Projects/Ensemble/doc/tut/
  4. O. Rodeh, 'The Design and Implementation of Lansis/E,' 1997
  5. S. Ranganathan, A. D. George, R. W. Todd, M. C. Chidester, 'Gossip-Style Failure Detection and Distributed Consensus for Scalable Heterogeneous Clusters,' 2001 https://doi.org/10.1023/A:1011494323443
  6. R. Renesse, Y. Minsky, M. Hayden, 'Gossip-Style Failure Detection Service,' 1998
  7. K. Berman and R. V. Renesse, Reliable Distributed Computing with the Isis Toolkit, IEEE Computer Society Press, 1994
  8. Y. Amir, D. Dolev, S. Kramer, and D. Mallti, 'Transis: A Communication Sub-System for High Availability,' FTCS Conference, July 1992 https://doi.org/10.1109/FTCS.1992.243613
  9. L. E. Moser, P. M. Melliar-Smith, D. A. Agarwal, R. K. Budhia, C. A. Lingley-Papadopoulos, 'Totem; A Fault-Tolerant Multicast Group Communication system,' Communications of the ACM No4. Vol39, pp.54-63, 1996 https://doi.org/10.1145/227210.227226
  10. 박동식, 이상균, 박성용, 권오영, 박형우, '리눅스 클러스터를 위한 효율적인 커널 통신 시스템의 설계 및 구현', 한국 정보과학회 컴퓨터 시스템 연구회 추계 학술 발표회 논문집, pp.41-47, 2002