시스존 문의사항

Re:안녕하세요. SGE 운영할때, Checkpoint 관련 문의드립니다..

작성자
서진우 서진우
작성일
2017-11-14 16:22
조회
8959
안녕하세요. 길게 질문해 주셨는데..죄송합니다. ^^;;; checkpoint 는 제가 많이 다루어본 분야가 아니네요.
초창기 check point 를 적용해 보기 위해 시간을 투자 했던 적이 있었는데..
당시 결과에 개인적으로는 실망이 큰 기능이여서 더이상 깊게 들어가진 않았던 기억이....

간단히 설명드리면 SGE 의 check point 방식에는 크게 application 레벨과 OS (kernel)레벨에서 수행하는 방식
으로 나누어집니다.

application 레벨은 특정 application 에서 일정 iteration 별로 결과를 dump 를 하고, 중간 dump된 결과를 통해
restart 하는 기능을 제공할 경우 해당 application 의 restart operation 명령을 수행하는 간단한 스크립트 정도
작성해서 특정 이벤트 발생 시 해당 명령이 자동으로 동작하도록 하는 방식입니다.
(현재 루트님께서 테스트하는 방식이 여기에 해당합니다.)

다만, 이 방식의 경우 application 마다 restart 를 시키는 환경들이 다 다르기 때문에, (안되는 것도 많고요.)
일일이 checkpointer 를 수행시키는 기능이나 scripts 를 만들어야 하더군요.
결국 당시 제가 원했던 check point 방식이 아닌지나 OS 차원에서 수행하는 방법을 사용하게 되었습니다.

OS 레벨 방식은 간단히 설명드리면 현재 시스템의 전체 메모리를 file로 덤프하여 정상화 되었을때 재시작하는
방식인데..당시 제가 실행시키는 작업이 대부분 MPI 병렬 계산 작업이여서 특정 노드에 장애가 나면 작업을
병렬 수행하는 모든 서버의 상태를 panding 시킨 후 메모리를 full dump 하고, 해당 노드를 복구한 후 전체 노드를
같은 시점에서 재시작해야 하는 지라...거의 현실적으로 불가능한 restart 방식이였습니다.

클러스터 시스템의 메모리를 full dump 시키니 멀쩡했던 서버도 과부하로 퉁제 불능에 가까운 상태가 되더군요.
아무튼..

결국 일반적인 응용 개발 환경에서 check pointer는 효용성이 낮다고 판단하고, 해당 기능은 skip 한 상황입니다.
요즘 버전에서는 발전이 있는지 저도 한번 확인을 해봐야 할 부분인듯 합니다.

루트님께서는 스케줄러의 많은 기능이 필요하신가봐요? ㅎㅎ