소프트웨어 비용 최적화를 위한 오픈소스 도입, 어떻게 할까?
상태바
소프트웨어 비용 최적화를 위한 오픈소스 도입, 어떻게 할까?
  • 정회상 전무
  • 승인 2019.06.12 04:26
  • 조회수 999
  • 댓글 0
이 콘텐츠를 공유합니다

디지털 경제가 가속화될수록 기업 및 기관의 IT활용도는 높아질 수 밖에 없다. IT활용도가 높아지는 만큼 IT투자 및 IT비용도 빠르게 증가한다. 필자는 IT전략 컨설턴트로서 조직의 IT투자 방향을 수립하는 컨설팅을 수행하고 있다. 대다수의 조직은 소프트웨어 및 하드웨어 비용은 어쩔 수 없이 집행해야만 하는 것으로 생각한다. 벤더와 협상을 통해 비용을 절감하는 방식으로 노력하는 것이 현실이다. 최근에 놀라운 변화를 경험하고 있다. 오픈소스 기반의 접근으로 IT비용을 대폭 절감하면서도 차질없이 핵심 서비스를 제공하는 것이 가능하다. 최근 컨설팅을 수행한 회사의 사례를 살펴보고자 한다.

 

두 회사의 소프트웨어 비용 제로 사례

A회사는 IT관련 직원이 약 20여명정도의 규모이며, 일년에 사용하는 IT예산은 약 40~50억 정도(인건비 제외)이다. A회사는 금번에 시스템을 모두 클라우드로 이관하고 A회사에 물리적으로 존재하는 전산실이라는 개념을 아예 없애기로 결정했다. 금융 컨설턴트의 경험으로 이 정도의 규모를 자체적으로 구축한다면(기존 일반적 방식대로) 약 200억원 정도가 소요될 것이라고 판단되었지만, 클라우드로 이관하면서 SW비용은 완전한 제로를 목표로 진행하고 있다. DBMS는 PostgreSQL로 프레임워크는 전자정부 프레임워크를 기본 뼈대로 클라우드 환경 구축을 목표로 현재 진행 중이다.


B회사는 국내 대표적인 핀테크 기업이다. 하루 트랜잭션 처리량은 약 5000 TPS(Transaction per second)를 상회하는 수준이다. DBMS는 MySQL을 사용하고 있다. Spring 프레임워크를 기반으로 마이크로 서비스 아키텍처(MSA, Micro Service Architecture)로 구성되어 서비스를 제공하고 있다. B회사는 처음부터 오픈소스 소프트웨어를 사용하여 애플리케이션을 구축함으로써, 소프트웨어 관련 투자는 전혀 발생하지 않았다. 하드웨어는 X86장비로 이루어져서 다른 조직과 비교하여 매우 낮은 수준에서 투자가 이루어졌다. 이러한 환경에서도 수백만 명에 이르는 고객의 온라인 거래를 무리없이 처리하고 있다.

 

이제 세상은 정말 바뀌었다

5년전만 하더라도 DB는 Oracle, 프레임워크는 상용 소프트웨어 기반으로 구축하는 것이 정석이고 당연하다고 생각했다. 그러나, 최근 이러한 상황은 정말 매우 빨리 변하고 있다. 오픈 소스와 클라우드 서비스를 활용하여 대규모 초기 투자를 하지 않고도, 개발자와 아키텍트(Architect)만 있다면 엔터프라이즈 규모의 시스템 구축이 가능해졌고, 실제로 그러한 사례가 이미 많이 존재하고 있다.


첫째, 오픈소스의 활용도와 기술 성숙 수준이 이제 상용 소프트웨어 거의 근접하고 있다.

거의 모든 Java 프로젝트의 개발 프레임워크는 이클립스(eclipse, Java를 기반으로 한 통합 개발 환경) 기반으로 그 위에 여러 기능들을 첨가하여 개발에 사용한다. 이클립스도 또한 무료로 사용할 수 있는 프리웨어이다. 웹서버로 가장 많이 사용하는 Apache도 Apache재단의 오픈소스 소프트웨어이다. 집단지성의 힘이 발휘되어 이제는 상용 소프트웨어보다 훨씬 좋은 성능과 안정성을 보장하고 있다.

 

둘째, 비용(Cost)이 거의 들지 않는 다는 것은 CxO입장에서는 포기하기 어려운 매력덩어리이다. 

DBMS의 세계적 최강자는 모두 알고 있듯이 오라클이다. 도입 비용도 매우 높지만, 유지보수료도 연 22%에 달하는 등 5년이 지나면 취득 원가에 맞먹는 비용을 지불하는 셈이 된다. IT에 익숙하지 않는 CxO들이 항상 푸념조로 필자에게 공통적으로 던지는 메시지가 있다. “IT는 뭐하나 구축하려면 왜 이렇게 돈이 많이 드는지 모르겠다”이다. 예를 들어, 2,000억원 규모의 시스템 구축 프로젝트에서 500억원이 소프트웨어 비용으로 추정된 경우에 이 비용을 거의 들지 않게 할 수 있다면, 어느 CxO가 이를 포기할 것인가?

 

셋째, 클라우드와 오픈소스의 결합으로 완전히 IT개발 생태계가 천지개벽을 하고 있다.

예전에는 오픈소스는 개발에 미친 일부 개발자들의 장난감 정도로 생각했던 것이 사실이다. 이제는, 오픈소스와 클라우드가 만나면서 회사의 서버룸이 필요없게 되는 상황까지 진행되고 있다.

 

금융회사의 계정계시스템에도 적용할 수 있을까?

부분의 고객들은 불가능하다고 생각할 수 있다. 물론 국내에는 아직 사례가 없다. 한다고 해도 Private Cloud에 상용 소프트웨어를 사용하는 방식이다. 기술적으로는 필요한 모든 기능은 오픈소스로 나와 있다. 보수적인 투자 성향을 가질 수 밖에 없는 기존 금융회사는 전면적으로 채택하기 어려운 구조이다. 하지만, 비용효율에 민감한 핀테크 기업들은 오픈 소스 기반으로 소프트웨어 아키텍처를 구성하고, 자신의 서비스를 무리없이 제공하고 있다. 기술 측면에서는 가능한 수준이다.
 

금융회사에 사용하고 있는 상용 소프트웨어들도 내부를 들여다보면 오픈소스를 사용하고 있는 경우가 많다. 오픈소스는 개발자 생태계를 통해 끊임없이 그리고 빠르게 진화하는 특성이 있다. 아무리 거대한 소프트웨어 회사라고 하더라도 자체 보유한 소프트웨어 엔지니어들 만으로는 따라잡을 수가 없다. 지금은 대부분의 상용 소프트웨어 회사들도 오픈소스 생태계를 주시하고 때로는 인수 합병 등을 통해서 오픈소스 트렌드에 맞추어가는 경향을 보여주고 있다.


핀테크 기업들이 보여주는 오픈소스 적용 성공 사례는 기존 금융회사들에게도 교훈이 되고 있다. 당장은 비핵심 업무 중심으로 클라우드와 오픈소스 도입을 시도하고 있다. 수년 이상의 시간이 소요될 것이지만, 금융회사들의 코어 시스템에도 적용될 것이다. 큰 폭의 비용 절감도 매력적이지만, 오픈소스 기반 소프트웨어 아키텍처가 아니면 뛰어난 IT인재들을 확보하기가 점점 더 어렵게 될 것이다. 오픈소스 적용을 통해 얻을 수 있는 또 하나의 이익은 기술 발전 추세에 바로 대응할 수 있다는 점이다. 이는 더 나은 서비스 개발로 이어질 수 있다.

투이톡_오픈소스_1.jpg
[표 1] 소프트웨어 구분 별 오픈소스

 

데이터웨어하우스는 소프트웨어 비용 제로로 구축할 수 있다

오픈소스 도입은 엔터프라이즈 데이터웨어하우스 구축부터 시작하는 것이 좋은 방안이다. 필요한 대부분의 소프트웨어 컴포넌트들은 이미 나와있고 또한 검증된 상태이다. 실제로 오픈소스 기반으로 엔터프라이즈 데이터웨어하우스를 구축하여 운영하는 사례도 있다.

투이톡_오픈소스_2.jpg  
[그림 1] 오픈소스 기 반의 엔터프라이즈 데이터웨어하우스 아키텍처 예시

[그림 1]은 Hadoop Ecosystem의 구성 형태와 요소 SW를 나타낸 그림이다. 우리나라 기업들의 엔터프라이즈 데이터웨어하우스에 구현되어 있는 대부분의 기능을 구현해낼 수 있다. 이를 클라우드로 옮겨서 구현한다면, 소프트웨어 도입비용 제로로 구축할 수 있다. 또한, 다른 기능이 필요하다면 오픈소스 소프트웨어를 추가하면 된다.

 

오픈소스 기반의 Enterprise 시스템 구축을 위해 고려해야 할 사항


첫째, CxO급의 강력한 의지와 기업 문화의 변화가 있어야 가능하다

기업 및 관의 시스템을 오픈소스와 클라우드로 변경하는 것은 많은 시행착오와 리스크가 존재할 수 밖에 없다. 이러한 시행착오에도 불구하고 이를 전폭적으로 지원하는 스폰서쉽이 없다면, 절대로 추진될 수 없다. CxO는 이러한 시도를 장려하고 성공할 경우 인센티브를 제공하는 등의 스폰서쉽을 발휘해야 한다.

 

둘째, IT조직원의 역량이 무엇보다도 매우 중요하다

오픈소스 기반의 Enterprise급 시스템을 구축 및 운영하기 위해서는 해당 조직원의 역량이 향상되어야 한다. 즉, 대부분의 IT조직원은 관리에 집중하고, 대부분 개발은 아웃소싱으로 이루어진 구성이라면, 변화는 쉽지 않다. 장기적으로 IT조직원의 역량이 향상되어야 구축 후에도 시스템을 정상적으로 관리하고 진화할 수 있기 때문이다.


셋째, 컴플라이언스 및 전문가 시스템 등은 아직도 상용SW가 더 효과적이다

오픈소스가 항상 좋다는 것은 아니다. 오픈소스는 비용대비 효과가 매우 크다는 것이다. 그러나 현실적으로 기업 및 기관이 운영하는 모든 시스템이 적합한 것은 아니다. 컴플라이언스나 일부 전문가 시스템은 비즈니스 로직이 패키지화되어 구현되어 있기 때문에 상용 소프트웨어어가 바람직한 선택일 수 있다.

 

넷째, 한꺼번에 이룰 수 없으며, 단계적으로 추진해야 한다

모든 시스템을 동시에 바꾸기에는 최근 비즈니스의 환경이 매우 IT의존적이다. 따라서 장애가 발생되면 어떠한 업무도 수행하기가 쉽지 않다. 따라서 조직이 이와 같은 목표를 설정하였다면 단계적인 접근이 필요하다. PoC(Proof of Concept), 단위시스템, 핵심시스템 등으로 관리의 범위를 넗혀가는 것이 중요하다.

 

다섯 번째, 오픈 소스가 불안한가? 전문 유지보수 업체를 찾아라

MySQL, PostgreSQL등의 오픈 DBMS의 사용을 주저하는 이유는, 전문 유지보수 업체가 존재하지 않아, 발생할지도 모르는 에러와 장애에 대응하기 어렵다는 점을 꼽고 있다. 최근 DBMS와 OS를 중심으로 오픈소스 전문 유지보수 업체가 등장했으며, 실제로 많은 업체가 서비스를 제공하고 있다. 유지보수료와 기술지원 비용은 예상하는 것보다 저렴하다.

마지막으로 확인할 것은 컴플라이언스이다. 대표적으로 개인정보 보호 관련 규제가 있다. 기술의 진보에 따라 IT시스템도 진화하여야 한다. 그러나 디지털 경제에 적합하지 않은 규제들로 인해서 우리나라 IT시스템의 혁신이 쉽지 않은 것이 사실이다. 우버앱을 한번만 깔면 독일이든, 프랑스이든, 미국이든 어디서나 내가 서있는 바로 앞에 차를 부를 수 있다. 아직 우리나라에서는 불가능하다. 오픈소스기반으로 엔터프라이즈 시스템 구축도 같은 상황으로 보인다.

- 끝 -

댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.