Home > 정보마당 > 공개SW 활용 성공사례

공개SW 활용 성공사례

2015
SQLite, MySQL, jQuery, JBoss Application Server, D3.js, R 등
중소기업 위한 클라우드 APM 서비스 개발

모바일, 클라우드, 빅데이터 등 새로운 IT트렌드는 더욱 다양해진 서비스와 함께 트랜잭션의 급증을 불러왔고, 기업의 안정적인 IT시스템 운영을 위해 애플리케이션의 성능이나 기능 및 장애에 대한 관리의 중요성은 날이 갈수록 높아지고 있다. 이에 따라 애플리케이션 성능 관리(Application Performance Management, 이하 APM) 솔루션이 재조명받고 있는 가운데 실제 글로벌 APM 시장은 2019년까지 매년 12.86% 성장할 것으로 전망되고 있다.
국내 한 개발업체가 APM 솔루션 및 서비스를 공개SW로 출시해 눈길을 끈다. 솔루션 운영 부담을 최소화할 수 있는 클라우드 형태의 서비스가 제공되는 점도 특징이다.

- 기     관 OSS랩(OSSLab)
- 수행년도 2015년
- 도입배경 서버 운영의 비용 부담을 최소화할 수 있는 중소기업을 위한 APM를 개발
- 솔 루 션 SQLite, MySQL, jQuery, JBoss Application Server, D3.js, R
- 도입효과 : 공개SW화를 통해 사용자의 비용부담 해소, 상시 모니터링 등의 기능을 통해 장애 발생에 효율적으로 대처 가능, 심플하고 편리한 오픈소스 클라우드 APM 서비스 구현

OSS랩 로고

최근 중소기업을 위한 클라우드 APM 서비스를 오픈소스로 공개한 OSS랩은 지난 2013년 4월 설립된, 국내에 아직 드문 공개SW 솔루션 개발 기업이다. 현재 정부의 SW중소포럼 운영지원사업에 참여, 올해 신설된 오픈소스 APM 포럼의 주관사를 맡아 이끌고 있다. 이 사업은 미래부와 한국SW산업협회가 지난 2010년부터 진행하고 있는 사업으로, 매년 10개 내외의 같은 사업 부문 중소SW업체들을 포럼으로 선정해 업체 간 협업 및 해외 진출을 위한 예산을 지원하고 있다


OSS랩은 공개SW인 ‘JBoss 애플리케이션 서버(JBoss-AS)’를 기반으로 하는 WAS(웹 애플리케이션 서버)인 ‘웹세스AS(Webccess-AS)’를 지난 2013년 선보인 바 있으며, 이를 토대로 2014년 하반기부터는 APM 솔루션 ‘웹세스APM(Webccess-APM)’을 개발. 그리고 최근 선보인 APM 솔루션을 이용해 클라우드 APM 서비스인 ‘웹세스닷넷(Webccess.net)’을 비롯해 회사가 개발한 APM 서비스를 모두 www.webccess.org 에 공개했다.



서버 운영자 관점의 APM 구상

OSS랩 안병현 대표는 다년간 서버 운영 관리를 해왔다. 그는 서버 시스템 운영환경이 점차 서버 수는 증가하되 적은 노동력을 투여해 경비를 절감하면서도 안정적인 운영할 수 있는 방향으로 고도화되고 있다고 설명한다. 안 대표는 운영측면에서 어떻게 하면 서버 담당자가 서버의 장애나 상태를 빨리 진단해 이들을 쉽고 편리하게 운영 할지를 고민하던 차에, 서버 운영자 관점에서 꼭 필요한 APM을 만들어 보기로 했다. APM(Application Performance Management)은 애플리케이션의 성능 모니터링과 장애 예측을 통해 성능과 이용성을 관리, 최적의 상태를 보장해 안정적인 시스템 운영을 지원하는 것으로, 부하량과 접속자 파악 및 장애진단 등을 목적으로 하는 성능 모니터링 제품을 일컫는다.


안 대표는 자신의 경험과 현업 담당자들의 의견을 수렴해 실무에 필요한 필수적인 기능을 중심으로 APM을 구성하기로 했다.


우선 서버의 상태를 정확히 파악할 수 있도록 시스템 리소스 모니터링을 가능하게 하는 것이다. 이는 CPU, 메모리, Disk I/O, File System에 대한 정보를 실시간으로 수집하고 통계를 계산함으로써 단순화된 데이터 형태로 표현하게끔 한다.


또 ▲웹서버 혹은 WAS에 대한 최소한의 설정을 하면 Java GC Count, Heap Memory, Session Count, Application Count 등의 데이터 수집 ▲아파치 웹서버나 WAS의 엑세스 로그를 분석해 통계 정보 제공 ▲데이터베이스의 모니터링을 위해서는 트랜잭션, Active Session(DB Connectino), Table Space 사용량 등 데이터의 수집/분석 기능과 이를 사용자가 편리하게 사용할 수 있도록 클라우드 서비스로 개발한다는 목표를 세웠다.



공개SW로 태어난 클라우드 APM 서비스

OSS랩의 공개SW APM 솔루션인 ‘웹세스APM’은 ▲IT시스템의 상태를 지속적으로 파악하고 분석한 데이터를 보여주는 ‘모니터링 도구’ ▲애플리케이션 개발결과물의 콜 트리(Call Tree) 분석과 운영 상태에서의 클래스 간 CPU 사용량 파악, SQL 실시간 수집 등의 역할을 수행하는 ‘프로파일러’ ▲수집된 모든 데이터를 기반으로 고객 시스템의 미래 상태를 분석·예측하는 ‘애널리틱 엔진’ 등으로 구성된다. 기 출시된 모니터링 툴에 이어 오는 8월에 프로파일러를 추가, 연내에는 애널리틱 엔진의 초기 버전을 선보일 계획이다.


운영진이나 개발진 모두 시스템, WAS, DB 등의 상태를 상시 모니터링할 수 있고, 액세스 로그와 SQL-뷰를 통해서 장애 발생 추이를 살펴보거나 장애 발생 시 원인을 쉽게 파악해 볼 수 있는 기능으로 구현되었다.

Webccess-APM은 APM을 구성하는 Agent/Server/WebApp 모듈을 포함하고 있는 공개SW로써 Webccess.net 서비스를 구성하기 위한 기본 공개SW이며 Webccess-AS라는 공개SW 형태의 WAS위에서 실행되고 있다.

안 대표는 Agent에서 수집되는 데이터를 처리하는데 있어 액세스로그와 같은 대량의 Raw 데이터들을 MySQL에 넣기에는 용량에 대한 부담이 커서 사용자별, 기간별 파일로 구분해 저장할 수 있는 SQLite가 적합하다고 한다. SQLite는 파일 기반의 DB엔진으로 가벼운 모듈이지만 빠른 데이터 입출력 속도를 가지고 있으며, 다양한 SQL 처리에 있어서도 서버 운영에 충분한 성능을 보여주고 있다. 반면 MySQL에서는 사용자 정보, 일자별 통계 처리한 결과를 저장하여 사용자들의 데이터 조회 요구에 빠르게 대응할 수 있도록 구성되어 있다.


또 웹서비스는 JSP를 기본으로 jQuery로 개발되어 있으며, 시각화 측면에서 많은 고민과 시행착오가 있었다고. 초기 서비스 버전은 jqPlot이라는 자바스크립트 프레임워크를 사용하다가 최근에는 화려한 기능과 편리한 사용법, 다양한 예제들이 풍부하게 제공되는 ‘D3.js’를 적용해 더욱 강력한 데이터 분석 기능을 지원하게 되었다. 모바일 환경과 PC 환경의 다양한 브라우저과 호환이 가능해 웹표준 지원에 중요한 역할을 했다.


클라우드 서비스 구조는 사용자들이 APM 서버 설치 및 운영에 따른 많은 부담에서 벗어나 간단하게 에이전트만을 설치하면 서비스를 사용할 수 있도록 단순하고 편리한 방법을 채택했다. 마치 각 사용자들이 자기만의 서버를 운영하는 것처럼 환경을 구성을 용이하게 한 것이다. 사용자별로 사용 용량을 파악할 수 있는 기능 또는 선택적으로 사용할 수 있도록 구성이 가능하다. 향후 고객이 원하는 경우 독립 인스턴트를 제공할 수 있는 준비를 진행 중에 있다고 한다.


현재 분석 엔진은 수집된 데이터를 분석하기 위해 R을 사용해 시스템을 구성 중에 있인데, Webccess.net 서비스에서 수집되는 다양한 데이터를 기반으로 예측 분석을 진행하고 있다. 수집되는 데이터에 따라 R에서 연동하는 다양한 빅데이터 분석 도구들로 확장할 수 있는 기술적인 준비들도 함께 진행 중이다. 또한, 분석 데이터를 패턴화해서 빠른 처리 속도를 지원할 수 있는 새로운 도구들에 대해서도 연구 작업이 동반된다.



▲ Webccess.net 공개SW 구성도



중소기업의 안정적인 IT개발·운영을 위해

웹세스 APM을 기반으로 UI·UX 부분을 보강, HTML5기반 웹서비스로 구현한 것이 ‘웹세스닷넷’이다. APM 서버, APM 웹서비스, APM 에이전트로 구성됐으며, 시스템 리소스, 웹서버, WAS, DB 서버 등을 모니터링 가능하다. 또한 각 서버들에서 수집된 데이터들의 분석을 통한 실시간 차트와 각종 데이터가 대시보드를 통해 제공된다. ‘웹세스닷넷’ 홈페이지를 통한 원클릭 설치와 간편한 사용법을 제공한다.


안 대표의 설명에 따르면 ‘웹세스닷넷’은 운영경험이 없거나 부족한 중소기업 개발·운영자들도 쉽게 사용 가능한 UI·UX 를 제공하는 것이 특징이다. 이로써 상태 정보에 대한 모니터링과 개발된 애플리케이션에 대한 분석을 통해 개발·유지보수 기업들과 객관적인 데이터로 실질적인 품질에 대해 논의하게 돼 운영진들의 서비스 장악력이 향상된다고 한다. 또한, 수집된 데이터를 기반으로 기업이 필요로 하는 분야를 파악해 투자의 효율성을 높일 수 있으며, 글로벌 시장 진출 시 해외 서버에 대한 정보를 국내에서도 객관적으로 살펴보고 원인 분석이 가능하다.


‘웹세스닷넷’ 애플리케이션 대시보드
▲ ‘웹세스닷넷’ 애플리케이션 대시보드


‘웹세스닷넷’ 시스템 리소스 대시보드
▲ ‘웹세스닷넷’ 시스템 리소스 대시보드


아울러, 개발 단계에서도 누구나 쉽게 서비스를 사용해 개발 도구로 활용할 수 있다. 개발자들을 위한 스레드 상태, 액세스 로그, SQL 쿼리 등의 동적 수집 및 연계 분석 기능도 곧 추가될 예정이다. 이를 통해 애플리케이션 개발 단계에서의 시행착오를 줄여주면서 개발과 운영이 유기적으로 이뤄지는 데브옵스(DevOps) 환경을 조성해준다는 설명이다. 필요 시 사내에 온프레미스로 구축 가능하며, 공개SW 형태로 개발됐기에 벤더종속성 탈피는 물론 직접 자사에 맞춰 수정도 가능하다.



‘웹세스닷넷’은 앞으로도 IT개발·운영진이 필요로 하는 정보를 일목요연하게 보여주는 방향에 초점을 두고 개발해나가며 사용자 기반을 확보하는데 주력할 계획이다. 특히 연내 선보일 분석엔진으로 예측 분석을 가능케 해 누구나 품질 개선에 기여가 가능하도록 할 방침이다.


이밖에도, 서강대학교 LINC사업단 소속인 OSS랩은 서강대학교와의 산학협력 및 다양한 기업들과의 협업을 통해 ‘웹세스닷넷’의 분석 엔진을 발전시켜 빅데이터 분석 플랫폼의 실증적인 모델까지 구축해 나갈 것이라고 한다. 오픈소스 APM 포럼 회원사들과의 협업을 통해 이를 지속적으로 발전시켜나가며 중소기업들의 안정적인 IT시스템 운영 환경 확보를 지원한다고 밝혔다.


[인터뷰]


“공개SW 개발에 참여하라”

안병현 OSS랩 대표


안병현 OSS랩 대표
▲ 안병현 OSS랩 대표

‘웹세스닷넷’을 오픈소스로 공개한 이유는

과거 모바일 벤처에서 근무할 당시 모바일 싱크(Mobile Sync) 솔루션을 개발하고 대형 통신사에 납품해 오랫동안 운영한 경험이 있다. 이때 IDC 운영진들의 잦은 교체와 폭증하는 솔루션 구축으로 인해 IDC 담당 엔지니어는 관리만 할 뿐 성능측정이나 장애원인 분석 등에 관여하지 못하는 경우가 많았다. 명확한 상태 정보가 없어 원인 분석에 오랜 시간이 걸리는 경우도 많아 솔루션 운영 기업도 어렵고, 원인 분석에 전적으로 협력업체에 의지해야 하는 IDC 담당자들도 어려움이 있었다. 때문에 직접 솔루션과 관계없는 장애에도 모든 솔루션 기업들이 방문 대기해야 하는 비효율이 너무도 많았다. 이와 관련해 대전 통합전산센터에서도 APM을 활용하는 프로젝트가 여전히 20% 미만인 것으로 알고 있다.


이러한 비효율을 최소화하기 위해서 쉽고 누구나 알아볼 수 있는 UI·UX를 기반으로 원인 분석 결과를 효율적으로 제시함으로써 운영 담당자나 유지보수 업체가 모두 빠른 대응할 수 있도록 지원하고자 하는 마음에서 서비스를 만들었다. 이왕이면 더 많이 고생하는 중소기업들에게 실질적인 지원이 될 수 있도록 무료로 클라우드 APM 서비스를 공개하게 됐다.



공개SW를 개발하며 느낀 점이 있다면.

국내에서 공개SW 활용은 비교적 활성화되고 있지만, 공개SW 개발은 여전히 더딘 것 같다. 이에 대한 이유로는 국내 기업들이 당장의 이윤을 위해 공개SW 프로젝트의 개발을 기다려주지 않는 측면이 있고, 개발자들 참여할 수 있는 여건상 어려움도 있으리라 본다. 공개SW를 만들거나 기여하지 못한다면 앞으로는 공개SW를 제대로 활용하기도 어려워질 수 있다. 그 핵심내용을 모르고, 발전방향에 대한 영향력도 행사할 수 없기 때문이다. 후발주자인 우리나라 입장에서는 그만큼 기업의 투자가 원활해야 성장이 가능하지만 아직 사회 전반적으로 그 가치에 대한 인정이 부족한 것 같다.


대표적인 글로벌 공개SW 기업인 레드햇은 연매출 2조원을 바라보고 있다. 이제 우리나라에서도 이 같은 기업이 나올 수 있도록 지금부터 차근차근 노력할 때다. 시장에서 사용되면서 개선되는 선순환 구조를 위해서는 먼저 공개SW로 만들어야 한다고 본다. 국내 여러 IT중소기업들도 고유의 솔루션들을 갖고 있는데, 이들을 공개함으로써 다양한 형태의 융합과 개선 아이디어 확보, 다양한 환경에서의 테스팅 등이 이뤄질 수 있으리라 생각한다. 정책적으로도 공개SW 초기 개발에 대한 지원이 대폭 강화돼야 하며, 적어도 기술지원에 대해서는 비용을 지불해야 한다는 사회인식의 확대가 절실하다.


한 명의 개발자 입장에서 말하자면, 21년을 개발해왔는데 그간 개발한 결과물 중 현재 남아있는 것이 거의 없어서 안타깝다. 회사를 옮기거나, 회사가 문을 닫았거나 등의 여러 가지 이유로 그렇게 됐다. 공개SW는 많은 사람들이 참여해 개발하는 것이므로 이러한 부담이 적은 편이다. 매번 남이 해놓은 것을 쓸게 아니라, 공개SW 개발에 다 함께 참여해 작든 크든 직접 개발해보며 이에 대해 이야기를 나눌 수 있는 환경이 조성되기를 바란다.




- 공개SW 역량프라자
맨 위로
맨 위로