애플리케이션 현대화

menu icon

애플리케이션 현대화

애플리케이션 현대화의 정의, 일반적인 장점과 과제, 그리고 이를 시작하는 방법을 살펴봅니다.

애플리케이션 현대화란?

애플리케이션 현대화는 기존 레거시 애플리케이션을 가져와서 이의 플랫폼 인프라, 내부 아키텍처 및/또는 기능을 현대화하는 프로세스입니다. 오늘날 애플리케이션 현대화에 관한 많은 논의들은 일반적으로 폭포수 개발 프로세스를 사용하여 업데이트 및 유지보수되는 모놀리식, 온프레미스 애플리케이션에, 그리고 해당 애플리케이션을 클라우드 아키텍처 및 릴리스 패턴, 즉 마이크로서비스 DevOps에 어떻게 적용할 수 있을지에 집중하고 있습니다.

애플리케이션 현대화의 이점은 일반적으로 신규 기능 전달 속도의 향상, 기타 서비스가 API를 통해 이용하는 기존 애플리케이션의 기능 노출, 그리고 장기적 데이터 센터 및 IT 전략은 물론 애플리케이션 규모와 성능의 목적을 위해 온프레미스의 애플리케이션을 클라우드로 리플랫폼하는 것으로 요약될 수 있습니다.

애플리케이션 현대화의 문제는 일반적으로 비용과 복잡성으로 귀결됩니다. ROI를 고려하지 않고 온프레미스 환경의 애플리케이션을 클라우드로 이동하는 것은 그저 이동을 위한 애플리케이션 이동에 불과합니다. 반대로, 기타 애플리케이션은 리플랫폼이나 재구성을 통해 실질적인 유용성을 얻을 수 있지만, 이는 기존 시스템과 인프라에 과도하게 결합됨으로써 현대화의 복잡성이 장점보다는 단점을 부각시킬 수 있습니다.

대부분의 경우와 마찬가지로, 애플리케이션 현대화에서 성공의 열쇠는 결국 전략과 애플리케이션 현대화 프로젝트의 선정으로 귀결됩니다. 여기서 클라우드, 속도, 성능, 규모, 신기능 디바이스 등의 장점은 주어진 애플리케이션에 고객 경험과 ROI 향상을 위한 명확한 경로를 제공하는 것입니다.

애플리케이션 현대화 여정에서 IBM의 지원 방안을 살펴봅니다.

레거시 애플리케이션을 현대화하는 이유는 무엇일까요?

레거시 애플리케이션 역시 종종 모놀리식 애플리케이션입니다. 모놀리식 애플리케이션에는 이의 현대화를 요구하게 만드는 두 가지 특성이 있습니다. 즉, 이는 업데이트가 어려울 뿐 아니라 확장도 어렵고 비용이 많이 듭니다.

모놀리식 앱은 아키텍처 상의 이유로 업데이트가 어렵습니다. 모든 애플리케이션의 컴포넌트가 함께 제공되기 때문에, 복잡성과 통합 문제의 오버헤드를 감안할 때 기능을 추가하는 일은 어렵고 비용이 많이 듭니다.

유사한 이유로 인해, 확장하는 데도 어려움이 있으며 비용이 많이 듭니다. 앱의 1개 컴포넌트에서 로드 및 성능 문제가 발생한 경우, 단지 가장 처리량이 많은 이 1개의 컴포넌트를 처리하기 위해 전체 앱을 확장해야 할 수 있습니다. 이러한 접근 방식은 상당히 비용이 많이 드는 컴퓨팅을 수반합니다.

애플리케이션을 다수의 마이크로서비스 아키텍처로 현대화함으로써 컴포넌트는 더 작아지고 느슨하게 결합되며, 서로 간에 독립적으로 배치 및 스케일링될 수 있습니다. 고유한 일련의 문제들이 발생하지만, 이러한 접근 방법에서 현대화의 핵심 가치의 많은 부분을 찾을 수 있습니다.

다음 동영상에서는 마이크로서비스 아키텍처에 대해 자세히 설명합니다.

마이크로서비스의 정의(06:37)

애플리케이션 평가를 통한 애플리케이션 현대화 시작

애플리케이션 현대화 프로젝트의 가장 중요한 시작 방법은 애플리케이션 평가에 있습니다. 자신이 보유한 인벤토리의 조사는 거의 항상 이와 같은 변환과 관련하여 시작을 위한 가장 확실한 방법 중 하나입니다.

일단 목록을 보유하면, 현대화된 경우 잠재적 증가 값과 용이함/어려움의 xy축에 대해 모든 해당 애플리케이션의 플로팅을 시작할 수 있습니다. 또한 애플리케이션이 고객 경험과 기업의 미래에 대해 얼마나 중요한지로서 "잠재적 가치"를 생각할 수 있습니다.

높은 가치와 낮은 노력의 이 그리드의 오른쪽 상단 사분면에 속하는 애플리케이션은 애플리케이션 현대화 프로젝트를 시작할 수 있는 가장 확실하고 논란의 여지가 가장 적은 후보가 됩니다.

가장 까다로운 의사결정은 이동이 어려운 높은 가치의 앱으로 내려옵니다. 이러한 경우, 이는 또한 첫날에 모 아니면 도 전략일 필요가 없습니다. 애플리케이션 현대화에 대한 접근법이 있으며, 이러한 경우에 이는 여전히 올바른 방향으로 포트폴리오를 이동하면서도 위험과 비용을 줄일 수 있습니다.

애플리케이션 현대화의 패턴

API를 통한 애플리케이션 기능의 노출 및 플랫폼, 애플리케이션 아키텍처의 조합에 집중하는 애플리케이션 현대화에 대해 잘 알려진 몇 가지 접근 방법이 있습니다.

모노리스에서 마이크로서비스로

애플리케이션 현대화의 가장 일반적인 패턴에는 모놀리식 애플리케이션을 작고 느슨하게 결합된 마이크로 서비스의 콜렉션으로 세분화하고 리팩토링하는 것이 포함됩니다.

모놀리스 대 마이크로서비스 아키텍처

위의 마이크로서비스 아키텍처의 예제에서, 소매 애플리케이션은 단일한 n-티어 애플리케이션에서 앱 내의 모든 개별 서비스의 마이크로서비스의 콜렉션으로 세분화되었으며, 각각에는 데이터베이스와 데이터 모델이 있습니다.

이 영역에서 하나의 접근 방법은 "스트랭글러 패턴"으로 알려져 있습니다. 한 번에 모놀리스를 세분화하는 대신에, 스트랭글러 패턴은 애플리케이션을 조금씩 분리시키며 가장 손쉽고 가장 가치 있는 파트를 우선적으로 풀아웃하는 것입니다. 이러한 접근 방법이 진행됨에 따라, 결국 모노리스에는 아무 것도 남지 않습니다.

클라우드 마이그레이션

종종 마이크로서비스에 대한 리팩토링의 일부인, 애플리케이션의 리플랫폼 또는 재호스팅은 거의 항상 현대화 프로세스의 일부입니다. 상당한 재작성을 수행하지 않고도 단순한 애플리케이션의 들어서 옮기기(lift-and-shift)가 가능하지만, 종종 컨테이너와 Kubernetes를 활용하여 클라우드 모델을 보다 잘 활용하기 위한 애플리케이션의 재구성에서 가치를 찾는 경우가 더 자주 있습니다.

클라우드 마이그레이션에 대해 자세히 알아보려면 "클라우드 마이그레이션: 핵심 안내서"를 살펴보고 다음 동영상을 확인하세요.

클라우드 마이그레이션의 정의(04:46)

API를 통한 기능 노출

마지막으로, 현대화를 위한 또 다른 접근 방식은 애플리케이션을 현재 위치에 그대로 남겨두되 API를 통해 해당 기능이나 데이터를 안전하게 노출시키는 것을 포함할 수 있습니다. 마이그레이션보다 통합에 더 많은 비중은 둔 이러한 접근 방식은 신규 클라우드 네이티브 애플리케이션이 기존 시스템과 데이터의 기능을 간편하게 활용할 수 있도록 해줍니다.

애플리케이션 현대화의 핵심 기술

대부분의 기업들이 검토 중인 현대화 프로세스를 앞당길 수 있는 광범위한 기술 포트폴리오가 존재합니다.

프라이빗, 하이브리드 및 멀티클라우드

퍼블릭 클라우드가 현대화 전략의 중요 부분이긴 하지만, 프라이빗, 하이브리드 및 멀티클라우드 전략 또한 보안, 대기 시간 및 아키텍처 상의 이유로 인해 매우 중요합니다.

여러 가지의 이유로 인해 기업이 데이터 센터에서 퍼블릭 클라우드로 바로 이동할 준비가 안되어 있을 수 있으며, 기타 클라우드 모델은 특정 워크로드가 고유 특성을 기반으로 존재해야 하는 경우와 연관된 모든 아키텍처와 정책 복잡도의 해결에 도움이 될 수 있습니다.

컨테이너 및 Kubernetes

컨테이너Kubernetes는 클라우드에서 다용도 컴퓨팅의 형태로 VM에 대한 챌린저로서는 물론, 하이브리드 클라우드와 애플리케이션 현대화 전략의 핵심 조력자로서 알려져 왔습니다.

컨테이너화를 이용하면 데스크탑, 클라우드 또는 온프레미스 환경에서 일관되게 실행할 수 있도록 애플리케이션을 일관적인 경량의 방식으로 패키징할 수 있습니다. 이러한 유형의 유연성은 클라우드에서의 발전 방향을 설계 중인 기업들에게 실질적인 도움이 됩니다.

컨테이너화 설명(08:08)

애플리케이션 현대화 및 IBM Cloud

애플리케이션 현대화는 특히 비즈니스와 IT 운영 전체에서 자동화의 필요성이 커짐으로 인해 단지 기업 발전의 일부분에 불과합니다. 자동화 확대를 추구하는 움직임은 소규모의 측정 가능한 성공적인 프로젝트로 시작해야 하며, 이후에 이를 기업의 다른 파트에서 및 다른 프로세스에 대해 스케일링 및 최적화할 수 있습니다.

IBM과의 공동 작업을 통해, 사용자는 모든 프로세스의 지능화를 강화하여 혁신의 가속화를 지원할 수 있도록 사전 빌드된 워크플로우를 포함한 IBM Cloud Pak for Automation의 AI 기반 자동화 기능에 액세스할 수 있습니다.

또한 제품과 서비스의 IBM Cloud 포트폴리오는 기업들이 비즈니스 프로세스와 레거시 애플리케이션 영역을 클라우드로 가져올 수 있게 지원할 수 있도록 설계되었습니다.

다음 단계로 진행:

IBM Cloud 계정으로 지금 시작하세요.