기상청 종합기상정보시스템(COMIS)은 1995년 1세대를 시작으로 30년간 진화했습니다. 5세대 전환에서 처음으로 IaaS·PaaS 전 구간을 글로벌 표준 순수 오픈소스 기반으로 전환했는데요.
이 글은 그 선택의 배경과 구축 과정을 기록합니다.
✅기상청의 오픈스택 전환 혁신 사례는 2024 OpenInfra Asia에서 발표한 기상청 OpenStack/K8s 구축 사례에서도 확인하실 수 있습니다.
국가 기상 서비스는 국민의 생명과 안전을 직결하는 최우선 공공 서비스이며, 이를 지탱하는 종합기상정보시스템(COMIS)은 1995년 1세대(COMIS-1) 구축 이후 대한민국 ICT 현대화의 상징적 지표로 기능해 왔습니다.
텍스트 중심의 1세대를 시작으로 웹 기반의 2세대, x86 리눅스 전환을 단행한 3세대, 그리고 대규모 하드웨어 인프라를 통합한 4세대(COMIS-4)에 이르기까지 기상청은 정부 내 최고의 ICT 선도 기관으로서 인프라의 양적 성장을 주도했습니다.
그러나 2010년대 후반, 기상청은 기술적 한계를 넘어선 ‘인프라 잔혹사‘라 불릴 만큼의 심각한 위기에 직면했습니다.
한국형 수치예보모델(KIM)의 본격 가동으로 데이터 생산량이 3배 증가하고, 천리안 2A호 위성 발사에 따른 산출 데이터가 100배 폭증하면서 일일 데이터 처리량은 2.2TB, 처리 파일 수는 360만 개에 도달했습니다.
당시 본청 데이터센터의 기반 설비는 UPS 전력 사용률 96.7%, 상면 공간 포화율 80%를 초과하며 물리적 임계치에 도달했습니다. 특히 MQ 기반의 ‘Olive’ 엔진과 소켓 기반의 ‘AFD’ 엔진을 중심으로 한 기존 시스템은 폭증하는 데이터 유통 능력을 탄력적으로 지원하기에 구조적 한계가 명확했습니다.
전통적인 하드웨어 증설 방식으로는 서비스 안정성을 담보할 수 없다는 판단 하에, 기상청은 단순한 장비 교체가 아닌 ‘오픈소스 기반 클라우드’로의 근본적인 아키텍처 대전환을 선택했고, 오픈소스컨설팅이 그 설계와 구축을 함께 담당하게 되었습니다.

대규모 국가 인프라의 현대화 과정에서 가장 큰 장애물은 확장 시 발생하는 기하급수적인 비용 구조입니다.
COMIS-5 구축 과정에서 기상청은 초기 설계 대비 200대 이상의 서버를 추가로 증설해야 하는 상황이었으며, 이는 공공 예산의 효율적 집행이라는 측면에서 중대한 전략적 판단을 요구했습니다.
글로벌 벤더의 상용 소프트웨어를 활용할 경우, 서버 대수에 비례하는 천문학적인 라이선스 비용과 종속적인 유지보수료는 예산 제약을 초과하는 ‘인프라 재앙’을 초래할 우려가 컸습니다.
오픈소스컨설팅은 이 문제를 해결하기 위해 오픈인프라 재단의 글로벌 표준 순수 오픈소스 기반 오픈스택(OpenStack) 도입을 제안했습니다.
소프트웨어 도입 비용을 원천적으로 절감하고, 절감된 예산을 실질적인 컴퓨팅 파워 확보에 재투자하는 구조로 전환한 것입니다.
이러한 선택은 단순한 비용 절감을 넘어 ‘자원의 생존’을 위한 결단이었습니다.
하드웨어 종속성에서 벗어나 필요한 만큼 자원을 즉시 오케스트레이션할 수 있는 토대를 마련했고, 기상 재해 시 발생하는 트래픽 급증에도 탄력적으로 대응할 수 있는 자원 할당 능력을 확보했습니다.
글로벌 벤더에 대한 과도한 벤더 락인은 공공 시스템의 장기적 진화에 치명적인 장애물이 됩니다.
벤더 솔루션은 폐쇄적인 디펜던시로 인해 사용자가 특정 기능을 최적화하거나 소스코드를 수정하는 것이 사실상 불가능하며 이는 운영 효율성을 저해하는 핵심 원인이 됩니다.
오픈소스컨설팅은 글로벌 표준 순수 오픈소스 기반 OpenStack 도입을 통해 기상청이 ‘기술 독립성’을 확보할 수 있도록 설계했습니다.
소스코드 수준에서의 자유로운 수정과 최적화가 가능해짐으로써 기상 서비스 특유의 복잡한 운영 환경에 기민하게 대응할 수 있는 유지보수 유연성을 갖추게 됐습니다.
일부에서 우려하는 기술 지원의 부재는 15년 이상 축적된 오픈인프라 재단의 글로벌 커뮤니티 역량으로 충분히 대응할 수 있습니다. 특정 벤더의 R&D 조직보다 훨씬 광범위하고 빠른 글로벌 커뮤니티의 보안 패치 및 버그 수정 메커니즘은 기술적 신뢰성을 한층 강화합니다.
오픈소스컨설팅은 이 구조를 기상청에 적용함으로써 외부 벤더의 로드맵에 휘둘리지 않고, 기상청 스스로 인프라를 주도적으로 운영할 수 있는 지속 가능한 체계를 만들었습니다.

현대적 클라우드 아키텍처의 정수는 IaaS(인프라)와 PaaS(플랫폼)의 유기적 결합에 있습니다.
오픈소스컨설팅은 기상청의 오픈스택 기반의 SDDC(소프트웨어 정의 데이터 센터) 환경 위에 쿠버네티스 존을 구축하여 가상화와 컨테이너 환경을 통합 관리하는 고도의 전략을 구사했습니다.
이를 위해 오픈소스컨설팅의 Playce Cloud를 중심축으로 IaaS부터 PaaS까지 전 계층을 벤더 종속 없는 단일 스택으로 통합했습니다.
이 과정에서 가장 주목할 만한 기술적 성과는 오픈스택의 ‘아이로닉’ 서비스 활용입니다. 고도의 연산 성능이 요구되는 기상 수치 모델링은 일반적인 VM 환경에서 성능 저하가 발생할 수 있습니다.
기상청은 아이로닉을 통해 물리 서버 배포를 자동화함으로써 ‘물리 자원의 클라우드화’를 실현했습니다.
또한, 오픈소스컨설팅은 서울 본청과 오창 센터, 위성센터를 잇는 고속 링 구조의 네트워크 아키텍처를 설계하고 20Gbps 본딩 구성을 통해 데이터 전송 병목을 제거했습니다.
이를 통해 서울-오창-진천을 잇는 Active-Active-Active 가상 데이터센터를 구현했으며, 지리적 한계를 극복하고 중단 없는 서비스를 보장하는 기술적 토대를 마련했습니다.
초 단위로 쏟아지는 방대한 기상 데이터를 처리하기 위해 스토리지 아키텍처는 성능과 신뢰성을 동시에 만족해야 합니다. 기상청은 기존 상용 HCI 솔루션의 대안으로 오픈소스 분산 스토리지인 Ceph을 선택했습니다.
Ceph은 하드웨어 벤더에 종속되지 않으면서도 3중 복제 아키텍처와 크러시 알고리즘을 통해 상용 제품을 압도하는 고가용성을 제공합니다.
특히 서울 본청과 오창 센터 사이의 123km라는 물리적 거리는 실시간 데이터 동기화의 큰 도전 과제였습니다.
오픈소스컨설팅은 GSLB(Global Server Load Balancing)와 Ceph RDB(Rados Block Device) 이동 기술을 레버리지하여 원격지 간 데이터 매핑을 수 초 이내에 완료하는 무중단 체계를 구축했습니다.
특정 스토리지 노드 장애 시에도 데이터 유실 없이 서비스가 지속되도록 설계한 Ceph 기반 스토리지는 ‘Olive’와 ‘AFD’ 엔진이 처리하는 일일 360만 개의 파일을 안정적으로 수용하는 구조로 지금도 운영되고 있습니다.
2018년부터 2022년까지 5년에 걸쳐 기상청이 오픈소스컨설팅과 함께 추진한 이 사업은 국내 공공기관이 국가 핵심 인프라를 글로벌 표준 순수 오픈소스 기반으로 전환한 사례로 주목받았습니다.
기상청 공식 백서에 따르면, 구축을 통해 향후 10년간 약 886억 원의 경제적 편익이 발생할 것으로 예상됩니다.
이 뿐만이 아닙니다. 전 국민이 매일 조회하는 날씨누리 서비스, 태풍과 폭염 특보가 실시간으로 올라오는 시스템, 장애 한 건이 국민 생활에 직결되는 인프라가 플레이스 클라우드(Playce Cloud)로 구축한 글로벌 표준 순수 오픈소스 기반 위에서 지금 이 순간에도 안정적으로 운영 중입니다.
벤더 제품이 아닌 오픈소스여도 운영과 유지보수에 문제가 없다는 것을 국가 기상 인프라가 직접 증명하고 있습니다.
오픈소스컨설팅과 함께한 기상청은 구축 이후에도 멈추지 않습니다. OpenStack의 주기적 업그레이드 프로세스를 도입해 시스템이 구축 시점에 머물지 않고 최신 기술을 지속 수용할 수 있는 로드맵을 함께 확보했습니다.
이 사례가 증명하는 것은 단순히 “오픈소스도 된다”가 아닙니다. 벤더 로드맵에 종속되지 않고 고객의 요구사항에 맞춰 직접 설계하고 운영할 수 있다는 것, 그리고 그렇게 확보한 기술 주권이 비용 절감보다 훨씬 큰 자산이 된다는 것입니다.
벤더 종속에서 벗어나고 싶다면, 지금이 결단할 시점입니다. 기상청의 선택은 이미 검증됐습니다. 여러분의 인프라 전환을 저희 오픈소스컨설팅이 함께합니다.
오픈소스컨설팅은 Playce Cloud(Playce OpenStack + Playce Kube)를 기반으로 공공·금융·엔터프라이즈 클라우드 전환을 지원합니다. OpenStack·Kubernetes 기반 프라이빗 클라우드 구축에 대해 문의하세요.