레거시 시스템의 새로운 비즈니스 가치 창출: IT 현대화(Modernization) 방안과 사례

레거시 시스템의 새로운 비즈니스 가치 창출-IT 현대화(Modernization) 방안과 사례

1. IT 현대화 개요

디지털 혁신 시대로 접어들면서 기업들은 빠르게 변하는 시장과 고객 요구에 대응하기 위해 IT 활용도를 높이고 있습니다. 이에 따라 기업 IT 인프라스트럭처(Infrastructure)는 더 신속하고 안정적인 서비스를 제공하기 위한 엔터프라이즈 플랫폼으로 진화하고 있습니다.

IT 환경의 중심축이 시스템을 직접 운영하는 온프레미스(On-Premise)에서 제3자 서비스 프로바이더(Service Provider)로부터 데이터 리소스를 제공받는 클라우드(Cloud)로 이동하면서 신속한 규모 확장이 가능해졌을 뿐 아니라 글로벌 가용성도 보장받게 되었습니다. 클라우드 서비스의 형태는 IaaS(Infrastructure as a Service)를 시작으로 PaaS(Platform as a Service), SaaS(Software as a Service) 등으로 구체화하면서 편리하고 효율적인 자원 사용이 가능해졌습니다. 또한 애플리케이션의 형태도 모놀리식(Monolithic) 아키텍처에서 각 기능이 작은 단위로 세분되어 독립적으로 관리되는 마이크로서비스(Microservices) 아키텍처로 발전하여 고객의 요구에 더욱 빠르게 대응할 수 있게 되었습니다.

Time To Value: Months And Years, Weeks And Months, Days And Weeks / Development Process: Water Fall, Agile, DevOps / Application Architecture: Monolithic, N-Tier, MicroService / Deployment & Packaging: Physical Server, Virtual Server, Containter / Application Infrastructure: Data Center, Hosted, Cloud [그림 1] 애플리케이션 개발과 배포의 발전
(출처: https://www.redhat.com/cms/managed-files/co-modernization-whitepaper-inc0460201-122016kata-v1-en.pdf)

IT 현대화(System Modernization)는 기업의 노후화된 IT 자원을 최신 버전으로 업그레이드하거나 새로운 시스템을 도입하는 것을 말합니다. 앞서 설명한 인프라 환경의 변화에 비추어 보면 온프레미스 기반에서 운영하던 모놀리식 애플리케이션을 클라우드 환경의 마이크로서비스 아키텍처로 대체하는 것에 해당합니다. 소프트웨어뿐 아니라 HW, 네트워크 등 IT 전 영역을 포괄합니다. 레거시 시스템을 폐기하고 신규 시스템을 도입하는 것만을 의미하는 건 아니며 최신 기술로 레거시 시스템을 보완하는 것도 IT 현대화에 해당합니다.

최근 디지털 트랜스포메이션이 주목받으면서 IT 현대화에 대한 관심이 높아지고 있습니다. 이로 인해 레거시 시스템은 도태되고 있지만, 그 안에 누적된 비즈니스 가치와 데이터는 여전히 기업의 중요한 자산입니다. 바람직한 IT 현대화는 이 같은 기업의 중요 자산을 좀 더 저렴한 비용으로 신속하게 서비스할 수 있도록 해야 합니다. 즉 레거시 시스템의 기능과 데이터를 바탕으로 플랫폼 인프라, 아키텍처, 기능 구조에 최신 기술을 적용해 새로운 프로세스와 서비스를 제공하는 것이 핵심입니다.

본 아티클은 애플리케이션을 중심으로 IT 현대화의 주요 기술과 사례를 살펴봅니다.

2. IT 현대화 기술

최신 정보 기술은 과거와 비교할 수 없을 정도로 스펙트럼이 넓어져 애플리케이션 기능, 개발 방법론뿐 아니라 하드웨어와 네트워크 등 물리적 환경에 이르기까지 광범위하게 작용합니다. IT 현대화에 잘 알려진 최신 기술로는 마이크로서비스 아키텍처, 서버리스(Serverless) 아키텍처, 데브옵스(DevOps) 등이 있습니다.

System Modernization을 통해 Legacy System을 Modern System으로 현대화합니다. System Modernization은 Cloud Native, Serverless, DevOps, Container, MicroService로 구성합니다. [그림 2] 주요 IT 현대화 기술
(출처: https://www.optisolbusiness.com/insight/legacy-application-modernization-with-microsoft-azure)

마이크로서비스 아키텍처 - 시스템 내 기능간 의존성 감소

애플리케이션을 현대화하는 일반적인 패턴은 모놀리식 아키텍처를 느슨하게 결합된 작은 마이크로서비스 집합으로 분해하는 것입니다.

Monolithic Architecture와 MicroService Architecture입니다. [그림 3] 모놀리식 아키텍처 vs 마이크로서비스 아키텍처

기존의 모놀리식 아키텍처는 하나의 애플리케이션에 모든 기능이 들어가는 개발 방식입니다. 개발과 배포가 하나의 패키지로 관리되는 장점이 있지만 서비스 규모가 커져 기능이 추가될수록 개발과 배포에 어려움이 발생합니다.

반면 마이크로서비스 아키텍처는 애플리케이션을 작은 서비스 단위 집합으로 구성하고 각 서비스가 느슨하게 연결되도록 설계합니다. 작은 기능 단위로 나누어진 서비스끼리 네트워크 API 통신을 하며 상호의존성이 낮습니다. 따라서 서비스 단위로 탄력적이고 선택적인 확장은 물론 독립적인 배포가 가능해집니다. 이는 곧 시장 변화와 고객 요구에 업무 시스템이 기민하게 대응함을 의미하고 보다 높은 비즈니스 성과를 창출하도록 돕습니다.

서버리스 기반 운영 모델 - 운영 환경의 간소화

마이크로서비스 아키텍처와 서버리스 아키텍처는 밀접한 관계가 있습니다. 모놀리식 아키텍처는 확장의 기본 단위가 전체 서비스인 반면, 마이크로서비스 아키텍처는 하나의 큰 서비스가 아닌 하위의 작은 서비스 단위로 확장이 이루어집니다. 서버리스 아키텍처에서는 각각의 기능(Function)이 최소 실행 단위이며 확장 단위가 됩니다.

이와 같은 디자인 패턴은 클라우드 서비스 제공 형태와 밀접하게 관련되어 있습니다. 모놀리식 아키텍처가 서버 가상화 수준인 IaaS나 PaaS에 적합하다면 마이크로서비스 아키텍처는 SaaS, 서버리스에 더 적절합니다. 마이크로서비스가 효과적으로 운영되는 서버리스 환경은 기업에 운영 관리 간소화와 비용 절감, 유연한 확장성과 가용성을 보장합니다. 서버리스 기반의 운영 모델 도입으로 불필요한 관리를 없애고 비즈니스 로직에 집중할 수 있게 됩니다.

Serverless 방식은 Traditional 방식에 비해 Scale에 따른 Cost를 절감할 수 있습니다. [그림 4] 규모 확장에 따른 서비리스의 비용 절감

데브옵스 자동화 배포 방식 - 서비스 제공의 가속화

데브옵스는 소프트웨어의 개발(Development)과 운영(Operations)을 통합하여 보다 신속하고 안정적으로 고품질의 제품을 제공하는 방법론입니다. 데브옵스에서 빠르고 지속적으로 제품을 통합, 출시하기 위해서는 제품의 구성 단위가 축소되어야 합니다. 따라서 마이크로서비스 아키텍처로 설계된 애플리케이션이 적합합니다.

데브옵스는 마이크로서비스 아키텍처를 통해 나누어진 서비스의 개발 및 배포를 자동화할 뿐 아니라 빠르고 안정적으로 제공할 수 있도록 해 신속하고 효율적인 소프트웨어 프로세스를 갖출 수 있도록 합니다. 데브옵스가 잘 운영되면 고품질의 서비스를 시장에 보다 빨리 배포할 수 있는 민첩성을 높일 수 있습니다.

Dev는 plan, code, build, test로 구성하고, Ops는 release, deploy, operate, monitor로 구성합니다. [그림 5] 데브옵스 순환 구조

앞서 설명한 기술 외에도 가상머신(Virtual Machine)보다 동작의 오버헤드가 적고 사용자 환경 구성이 자유로운 컨테이너(Container) 기술도 주요 IT 현대화 트렌드 중 하나입니다. 이 같은 최신 기술들은 새로운 서비스를 빠르고 안정적으로 제공하는 것을 지향합니다. 그리고 각 기술이 함께 사용될 때 더 나은 효과를 발휘하게 됩니다.

3. IT 현대화 방안과 사례

그렇다면 레거시 시스템 현대화는 어디서부터 어떻게 시작해야 할까요? 단순히 시스템을 최신의 것으로 바꾼다는 개념으로는 소요시간과 비용을 예상하기 어렵습니다. 레거시 시스템을 분석하고 비즈니스 요구사항을 파악한 다음, IT 현대화를 통해 얻을 수 있는 수익과 비용 혹은 복잡성과 종속성 탈피 등의 가치를 설정하고 실행해야 합니다. 다음은 IT 현대화를 위한 몇 가지 접근 방법입니다.

Rehost 방식

리프트 앤 시프트(Lift and shift) 모델이라 불리는 방식으로 온프레미스로 운영하던 애플리케이션을 클라우드 환경으로 옮기는 것을 의미합니다. 소스코드를 그대로 유지하면서 클라우드 리소스를 사용할 수 있는 방법으로서 주로 IaaS로 이동합니다. 애플리케이션의 구조적인 변경이 없기 때문에 마이크로서비스와 클라우드 네이티브(Cloud Native) 같은 기능은 사용할 수 없습니다. 가장 기본적인 형태의 온프레미스 애플리케이션 현대화 방안으로 상대적으로 적은 비용과 낮은 위험 부담으로 실행 가능하고, 기존 운영 환경 대비 비용이 적게 들고 가용성이 증가한다는 장점이 있습니다.

Refactor 방식

레거시 시스템의 기능만으로 고객 요구사항에 대응하기 힘들 경우 기능을 추가하거나 성능을 개선하는 방법입니다. 소스코드의 부분 수정부터 마이크로서비스 전환을 위한 기능별 구조적인 변화까지 모두 해당합니다. 포괄적으로는 레거시 시스템의 재사용을 의미하기도 하는데 일례로 레거시 시스템을 API화하여 클라우드 환경이나 타 시스템과 연동하는 경우가 있습니다. 애플리케이션 아키텍처를 마이크로서비스로 바꾸는 구조적인 변화와 더불어 기능의 서버리스화, 컨테이너화와 같은 사례를 포함합니다.

Replace 방식

말 그대로 새로운 시스템으로 교체하는 방법으로 요구사항에 맞게 시스템의 기능과 구성 요소를 새로 작성하거나 새 제품으로 바꾸는 것을 말합니다. 기존 시스템으로 제공할 수 없는 기능과 더 많은 요구사항을 해결하기 위해 사용할 수 있는 방법입니다. 하지만 이는 매우 과감한 변화로 큰 비용과 위험 부담을 수반합니다. 따라서 레거시 시스템의 유지 보수나 다른 방안의 적용으로 발생하는 비용이 더 클 경우에 고려하는 것이 좋습니다.

각 기업마다 필요한 요구사항과 레거시 시스템의 구조에 맞는 최신화 작업을 통해 비즈니스 가치를 높이는 것이 바람직한 IT 현대화 방향입니다. 다음은 각 기업 상황에 적합한 현대화를 수행한 사례입니다.

운영비 절감 사례

미디어 기업 A사는 영상을 업로드하고 시청자들이 이를 볼 수 있도록 하는 동영상 서비스를 회사 내부의 가상머신을 기반으로 하는 프라이빗 클라우드(Private Cloud)에서 운영 중이었습니다. 그러나 트래픽 증감에 따른 탄력적인 운영이 불가능했고 사용량 대비 지출이 큰 네트워크 비용과 서버 유지 비용이 발생하고 있었습니다. 이에 프라이빗 클라우드를 포기하기로 결정하고 클라우드 서비스 제공업체의 서버리스로 이전하였습니다. 그 결과 트래픽에 따른 탄력적인 확장이 가능해져 원활한 서비스를 제공할 수 있게 됨은 물론 기존 대비 40%의 운영 비용을 절감할 수 있었습니다.

통신 서비스기업 B사는 레거시 시스템에 마이크로서비스를 도입하고 서버리스로 이전한 결과, IoT 플랫폼 개발과 구축 관리 비용을 80% 절약했습니다.

자동차 제조기업 C사는 온프레미스 환경에서 클라우드 환경으로 이전하여 기존 대비 60%의 운영 비용을 절감하였습니다.

서비스 속도 향상 사례

항공회사 D사는 레거시 시스템을 서버리스로 이전하여 성수기 하루 1,000만 건 이상의 요청을 원활하게 처리할 수 있게 되었습니다.

교육기업 E사는 기존 데이터 센터에서 클라우드 환경으로 전환한 결과, 소스코드 배포, 빅데이터 저장 및 아키텍처 구축 소요시간이 14배 이상 빨라졌습니다.

4. 시사점

레거시 시스템의 현대화는 앞서 제시한 몇 가지 접근 방법 외에도 고려해야 할 점이 많습니다. 현대화에 소요되는 시간과 비용을 예상하는 것은 쉽지 않지만, 비즈니스 우선순위를 정해 즉시 적용하고 이전할 수 있는 서비스 단위부터 시작하여 단계적인 전환이 필요합니다.

최근 들어 클라우드 벤더들은 기업의 레거시 시스템 현대화를 위해 다양한 서비스를 제공하고 있습니다. 그 중 눈여겨 볼 서비스로 하이브리드 클라우드(Hybrid Cloud)가 있습니다. 이는 프라이빗 환경의 레거시 시스템과 클라우드 환경의 신규 시스템을 통합하는 개념입니다. 하이브리드 클라우드 모델을 통해 중요 데이터는 프라이빗 환경에 두고 보호하면서 클라우드 서비스의 이점을 모두 취할 수 있습니다. 즉 기존 시스템 환경의 급격한 변화를 줄이고 보다 쉽고 빠른 IT 현대화가 가능해졌음을 의미합니다.

Hybrid Cloud는 Traditional Infrastructure, Private Cloud, Public Cloud를 연결합니다. [그림 6] 하이브리드 클라우드
(출처: https://vmvirtualmachine.com/hybrid-cloud-services-market-2019-technology-advancement-and-future-scope-amazon-web-services-microsoft-worldwide-market/)

끊임없는 변화와 혁신이 요구되는 경영 환경에서 시장우위를 점하기 위해서는 발 빠른 진화가 필요합니다. 과거의 인프라와 기술, 개발과 배포 방식에 머물러 있는 노후화된 레거시 시스템은 더 민첩하고 대응력이 뛰어난 경쟁자에게 뒤처짐을 의미합니다. 속도가 경쟁력인 시대, 비즈니스 민첩성을 높이는 IT 현대화를 추진해 나가야 할 것입니다.



# References
[1] https://en.wikipedia.org/wiki/Software_modernization
[2] https://aws.amazon.com/ko/events/application/modern-app-development/
[3] https://www.ibm.com/cloud/learn/application-modernization
[4] https://www.redhat.com/cms/managed-files/co-modernization-whitepaper-inc0460201-122016kata-v1-en.pdf



▶  해당 콘텐츠는 저작권법에 의하여 보호받는 저작물로 기고자에게 저작권이 있습니다.
▶  해당 콘텐츠는 사전 동의 없이 2차 가공 및 영리적인 이용을 금하고 있습니다.


공유하기 열기
김지명
김지명 클라우드 전문가

에스코어㈜ 소프트웨어사업부 오픈소스SW그룹

오픈소스 소프트웨어의 기술 서비스를 담당하고 있습니다.