공개 클러스터를 위한 완전 소유형 툴킷 openPC
초록
openPC는 클러스터를 여러 독립 블록으로 나누어 각 블록을 사용자에게 완전한 소유권을 부여하는 오픈소스 툴킷이다. 보안, 자원 할당, 이기종 미들웨어 호환, 웹 기반 관리·모니터링 등을 통합적으로 제공하며, 인도네시아 LIPI Public Cluster에 성공적으로 적용되었다.
상세 분석
openPC는 전통적인 공용 클러스터와 달리 “완전 소유”라는 독특한 정책을 구현한다. 이를 위해 먼저 물리적 노드를 블록 단위로 논리적 구분하고, 각 블록에 전용 가상 네트워크와 인증 토큰을 할당한다. 보안 모듈은 SSH 키 기반 2단계 인증과 IP‑화이트리스트, 그리고 블록별 방화벽 규칙을 자동 생성함으로써 사용자가 자신의 블록 외부에 접근하거나 다른 사용자의 자원을 침해하는 것을 원천 차단한다.
자원 할당 측면에서는 중앙 스케줄러와 블록‑레벨 로컬 스케줄러가 2계층 구조를 이루어, 전체 클러스터의 부하를 균등하게 분산시키면서도 각 블록 내부에서는 사용자가 자유롭게 작업을 스케줄링할 수 있다. 이는 기존 PBS, Slurm 등과의 인터페이스를 추상화한 “Adapter Layer”를 통해 구현되며, 미들웨어 호환성을 크게 향상시킨다.
또한 openPC는 웹 기반 통합 관리 콘솔을 제공한다. 사용자는 브라우저만으로 노드 상태, 전력 소비, 온도, 작업 큐 등을 실시간 모니터링하고, 필요 시 하드웨어 전원 제어나 BIOS 설정을 원격으로 수행할 수 있다. 이 UI는 RESTful API와 WebSocket을 결합해 비동기식 데이터 전송을 최적화했으며, 사용자 친화적인 대시보드와 로그 분석 툴을 내장한다.
하드웨어 모니터링 시스템은 IPMI와 SNMP를 병행 사용해 온도, 전압, 팬 속도 등을 수집하고, 이상 징후가 감지되면 자동으로 알림을 전송한다. 이러한 자동화는 클러스터 가용성을 높이고 관리자의 운영 부담을 크게 감소시킨다.
성능 평가에서는 LIPI Public Cluster에 64코어, 256GB 메모리 규모의 블록 4개를 배치해, 각 블록이 독립적으로 LINPACK와 HPCG 벤치마크를 수행하도록 했다. 결과는 블록 간 간섭이 거의 없으며, 전체 시스템 효율이 92%에 달함을 보여준다. 특히, 블록 내부에서 사용자가 직접 스케줄러를 조정할 수 있어 워크로드 특성에 맞는 최적화가 가능했다.
종합적으로 openPC는 보안, 자원 관리, 이기종 미들웨어 호환, 사용자 친화적 인터페이스, 하드웨어 모니터링을 하나의 패키지로 제공함으로써, 교육·연구·산업용 공개 클러스터 구축에 필요한 대부분의 기술적 난제를 해결한다.
댓글 및 학술 토론
Loading comments...
의견 남기기