애플리케이션 마이그레이션이란?
애플리케이션 마이그레이션은 한 컴퓨팅 환경에서 다른 컴퓨팅 환경으로 애플리케이션을 이동하는 프로세스입니다.
IBM Cloud의 그래픽 배너
애플리케이션 마이그레이션이란?

애플리케이션 마이그레이션은 한 컴퓨팅 환경에서 다른 컴퓨팅 환경으로 애플리케이션을 이동하는 프로세스입니다. 예를 들면, 애플리케이션을 한 데이터 센터에서 다른 데이터 센터로, 온프레미스 서버에서 클라우드 제공업체의 환경으로, 또는 퍼블릭 클라우드에서 프라이빗 클라우드 환경으로 이동하는 것을 말합니다.

애플리케이션은 일반적으로 특정 네트워크 아키텍처의 특정 운영 체제에서 실행되도록 구축되었거나 단일 클라우드 플랫폼을 위해 개발되었기 때문에 애플리케이션을 새 환경으로 이동할 경우 여러 가지 문제가 발생할 수 있습니다. 일반적으로 베어메탈 하드웨어에서 실행되는 애플리케이션보다 가상화되었거나 서버 기반인 아키텍처의 애플리케이션을 마이그레이션하는 것이 더 쉽습니다.

전체적인 애플리케이션 마이그레이션 전략을 결정하려면 각 애플리케이션의 의존성과 기술 요구 사항뿐만 아니라 엔터프라이즈의 보안, 규정 준수 및 비용 제약도 고려해야 합니다.

같은 기술 환경 내에 있는 경우에도 애플리케이션의 종류가 다르면 클라우드로 가는 경로가 다를 수 있습니다. 클라우드 컴퓨팅 초기 시기 이래로 개발자들은 이러한 애플리케이션 마이그레이션 패턴을 "R"로 시작되는 이름으로 불렀습니다.

재호스팅(Rehost): 리프트 앤 시프트(lift-and-shift)로도 알려진 이 방법은 큰 변화를 주지 않고 온프레미스 서버의 애플리케이션을 가상 머신으로 이동하는 일반적인 전략입니다. 애플리케이션 재호스팅은 일반적으로 다른 마이그레이션 전략보다 더 간편하며 마이그레이션 비용을 상당히 낮출 수 있습니다. 단점은 애플리케이션을 수정하지 않으므로 애플리케이션은 클라우드 네이티브 컴퓨팅 기능의 이점을 누릴 수 없으며, 이러한 애플리케이션을 클라우드에서 장기간 실행할 경우 비용이 상승할 수 있다는 것입니다.

리팩터링 또는 재설계(Refactor or re-architect): 리팩터링은 애플리케이션이 클라우드 환경에서 더 잘 확장되거나 더 나은 성능을 구현하도록 애플리케이션을 상당히 변경하는 것을 말합니다. 리팩터링을 수행하면 클라우드 네이티브 기능을 더 잘 활용할 수 있도록 애플리케이션의 주요 부분을 다시 코딩해야 할 수 있습니다. 예를 들면 모놀리식 애플리케이션을 마이크로서비스로 재구성하거나 데이터 저장소를 SQL에서 NoSQL로 현대화할 수 있습니다.

플랫폼 재구축(Replatform): 리프트 앤 시프트 방식과 재설계 방식의 중간 지점에 있는 애플리케이션 플랫폼 재구축은 애플리케이션이 클라우드 아키텍처의 이점을 누릴 수 있도록 약간의 변경을 가하는 것입니다. 그 예로는 매니지드 클라우드 네이티브 데이터베이스와 함께 작동하도록 애플리케이션을 업그레이드하거나, 함께 작동할 운영 체제 또는 미들웨어를 변경하거나, 애플리케이션을 컨테이너화하는 것이 있습니다.

폐기/교체(Retire/replace): 경우에 따라 애플리이션을 사용 중단하는 것이 가장 합리적인 선택인 경우가 있습니다. 그 이유는 애플리케이션의 가치가 제한적이거나, 그 기능이 환경 내의 다른 곳에서 중복되게 존재하거나, 새 오퍼링(SaaS(Software-as-a-Service) 플랫폼인 경우가 많음)으로 교체하는 것이 애플리케이션을 마이그레이션하는 것보다 더 비용 효율적이기 때문일 수 있습니다.

애플리케이션 마이그레이션 전략

엔터프라이즈의 고유한 IT 환경과 비즈니스 요구 사항에 가장 적합한 애플리케이션 마이그레이션 전략을 개발하려면, 애플리케이션 포트폴리오의 구성 요소, 구체적인 보안 및 규정 준수 요구사항, 현재 사용 중인 클라우드 리소스, 그리고 온프레미스 스토리지, 컴퓨팅, 네트워크 인프라의 특징을 정확하게 이해해야 합니다.

또한, 클라우드 마이그레이션을 성공적으로 수행하려면, 마이그레이션의 동기가 되는 주요 비즈니스 요인을 분명히 이해하고 이러한 요인을 고려하여 전략을 수립해야 합니다. 클라우드로 마이그레이션하려는 이유와 이러한 이동을 통해 성취하려는 목표 또한 분명히 인식하고 있어야 합니다.

아래 동영상에서 Andrea Crawford가 클라우드 마이그레이션에 대해 자세히 설명합니다.

애플리케이션 마이그레이션 리스크

이해 관계자는 애플리케이션 마이그레이션으로 인해 비즈니스 운영 중단이나 예상치 못한 비용이 발생할 것을 두려워할 수 있습니다. 가장 흔히 발생하는 리스크의 예는 다음과 같습니다.

  • 예상치 못한 기술적 문제: 예를 들면, 애플리케이션에 너무 많은 종속성이 있어서 리팩터링 또는 플랫폼 재구축이 원래 생각했던 것보다 훨씬 더 복잡하고 시간을 많이 사용할 수 있습니다.

  • 예상치 못한 비용: 적절한 계획을 수립하지 않으면 새로운 라이센스 비용이나 새로운 툴을 직원이 신속하게 사용하기 위한 교육에 드는 비용 등 예산을 책정하지 않았던 비용이 발생할 수 있습니다.

  • 예상치 못한 다운타임: 애플리케이션에 큰 변화를 주면 애플리케이션 및 이와 연결되거나 이에 의존하는 시스템에 충돌이나 문제를 일으켜 계획되지 않은 다운타임이 발생할 수 있습니다.

  • 문화적 문제 또는 변경 관리의 어려움: 조직마다 앱을 다른 방식으로 사용하므로 이러한 차이로 인해 마이그레이션 프로젝트의 속도를 저하시키는 마찰이 발생할 수 있습니다.

포트폴리오의 각 애플리케이션을 재호스팅, 재설계/플랫폼 재구축 또는 폐기할 경우 발생하는 리스크와 이점을 신중하고 상세하게 평가하면 애플리케이션 마이그레이션으로 인한 전반적 리스크를 완화할 수 있습니다. 특히, 부서 수준 비용을 엔터프라즈 전체의 비용과 비교하고 애플리케이션을 온프레미스에 둘 경우 유지 관리가 필요한 하드웨어의 총소유비용(total cost of ownership, TCO)을 평가하는 것이 중요합니다.

애플리케이션 마이그레이션 사용 사례의 변화

지난 몇 년 동안 기업들은 클라우드 제공업체가 제공하는 유연성, 확장성 또는 예측 가능한 사용량 기반 비용 구조를 원했기 때문에 애플리케이션을 클라우드로 이동하려고 하는 경우가 많았습니다.

그러나 요즘 기업들은 혁신을 가능하게 하는 환경도 추구합니다. 기업이 원하는 혁신이 딥 러닝 알고리즘을 지원하는 데 필요한 고성능 프로세서를 이용하는 것이든, 개발 팀이 빠른 속도로 변경 사항을 적용하여 고객의 디지털 경험을 신속하게 향상하도록 지원하는 컨테이너화된 애플리케이션을 이용하는 것이든, 클라우드 기술을 사용하면 새로운 아이디어로 실험하고, 테스트를 수행하고 "빨리 실패"하는 것이 가능해집니다. 많은 경우, 컨테이너화와 같은 클라우드 친화적 기술을 사용하면 이 기술이 대체할 수 있는 가상 머신을 사용할 때보다 최종 사용자에게 더 나은 경험을 제공할 수 있습니다.

애플리케이션 마이그레이션 단계

일반적으로 말해, 애플리케이션 마이그레이션 계획 프로세스는 세 단계로 나눌 수 있습니다. 각 단계에서 모든 잠재적 옵션(일부 온프레미스 워크로드를 그대로 두는 것 포함)의 비용을 가늠해 보는 것이 중요합니다.

애플리케이션 파악 및 평가. 이 초기 탐색 단계에서는 포트폴리오의 모든 애플리케이션이 포함된 포괄적인 카탈로그가 있는지 먼저 확인해야 합니다. 그 다음, 애플리케이션이 비즈니스에 꼭 필요한지 또는 그렇지 않은지, 애플케이션에 전략적 가치가 있는지 또는 그렇지 않은지, 각 애플리케이션을 클라우드로 마이그레이션하여 얻을 수 있는 것은 무엇인지에 따라 애플리케이션을 분류합니다. 다음과 같은 특징에 따라 각 애플리케이션의 가치를 이해하려고 노력해야 합니다.

  • 비즈니스에 미치는 영향

  • 필수적 비즈니스 요구 사항을 충족할 수 있는 능력

  • 데이터의 적시성과 중요성

  • 크기, 복잡성 및 관리 능력

  • 유지보수 및 개발 비용

  • 클라우드로 마이그레이션하여 증가되는 가치

그 다음, 마이그레이션을 고려 중인 각 애플리케이션에 대해 클라우드 적합성 평가를 수행합니다. 이 프로세스에서는 있는 그대로 이동할 수 있는 애플리케이션과 클라우드에서 사용하려면 상당한 변화를 주어야 하는 애플리케이션을 결정합니다.

또한, 현재 환경 밖으로 특정 워크로드를 마이그레이션하는 것이 가능하지 결정하기 위해 애플리케이션 종속성 확인 툴을 사용할 수 있습니다.

총소유비용(TCO) 평가. 클라우드 마이그레이션 프로젝트의 총 비용을 결정하는 일은 복잡할 수 있습니다. 애플리케이션과 인프라를 온프레미스에 두는 경우와 클라우드로 이동하는 경우에 대한 "만약의" 시나리오를 비교해야 합니다. 즉, 각 시나리오에서 온프레미스에 둘 하드웨어의 구입, 운영, 유지보수 비용, 그리고 소프트웨어 라이센스 비용을 계산해야 합니다.

또한 각 시나리오에서 클라우드 제공업체로부터 받게 될 월간 청구서와 마이그레이션 자체의 비용(새 인프라를 테스트하고 직원이 업데이트된 소프트웨어를 사용할 수 있도록 교육하는 데 드는 비용 포함)을 비교해야 합니다. 반드시 온프레미스에 남아 있는 레거시 애플리케이션의 유지보수 비용도 고려해야 합니다.

전반적인 리스크와 프로젝트 소요 시간 평가. 마이그레이션 계획의 마지막 단계에서는 프로젝트 일정을 수립하고, 직면할 수 있는 리스크 또는 장애물을 찾아냅니다.

레거시 애플리케이션 마이그레이션

일반적으로 말해, 애플리케이션이 오래된 것일수록 클라우드로 마이그레이션하기가 더 어렵습니다(따라서, 마이그레션할 만한 가치가 떨어집니다). 구식 소프트웨어는 여러 가지 측면에서 문제가 됩니다. 유지보수하는 데 비용이 많이 들고, 패치를 적용하지 않으면 보안 우려를 야기할 수 있으며, 최신 컴퓨팅 환경에서는 성능이 저하되는 경향이 있습니다. 레거시 애플리케이션을 마이그레이션하기로 결정하기 전에 특히 철저히 평가하십시오.

마이그레이션 후보 평가

조직은 애플리케이션의 생존 가능성과 마이그레이션 우선 순위를 평가할 때 다음과 같은 문제를 고려합니다.

복잡성: 애플리케이션이 어디서 개발되었습니까? 사내에서 개발되었다면 개발자가 여전히 회사에 근무하고 있습니까? 애플리케이션에 관한 문서를 바로 확인할 수 있습니까? 애플리케이션이 얼마나 오래됐습니까? 얼마 동안 사용되었습니까? 이 애플리케이션에 어떤 방식으로든 종속된, 조직 내의 다른 애플리케이션 또는 워크플로우는 몇 개입니까?

중요도: 이 애플리케이션을 매일 사용하는 사용자는 몇 명입니까? 매주 사용하는 사용자는요? 비즈니스 운영이 중단되기 전에 얼마 동안의 다운타임을 견딜 수 있습니까? 해당 애플리케이션은 프로덕션, 개발 또는 테스트에 사용됩니까, 또는 이 세 단계에서 모두 사용됩니까? 이 애플리케이션은 사내 IT 팀이 관리합니까, 또는 외부 공급업체가 관리합니까? 이 애플리케이션과 동기화되어야 하는 가동 시간/다운타임 요구 사항이 있는 다른 애플리케이션이 있습니까?

규정 준수: 이 애플리케이션은 어떤 규제 요구 사항을 준수해야 합니까?

가용성: 어떤 가동 시간 표준을 이 애플리케이션은 준수해야 합니까? 예를 들면, 이 애플리케이션이 99.99%의 가동 시간을 명시한 서비스 수준 계약(service level agreement, SLA)에 구속됩니까?

테스트

애플리케이션 마이그레이션 프로세스 동안 데이터 또는 기능이 손실되지 않도록 하려면 마이그레이션 동안 테스트를 수행하여 모든 데이터가 있는지, 데이터 무결성이 유지되고 있는지, 데이터가 현재 올바른 스토리지 위치에 있는지 확인해야 합니다.

또한, 마이그레이션이 끝난 후에는 후속 테스트를 반드시 수행하여 애플리케이션 성능을 벤치마크하고 보안 조치가 시행되는지 확인해야 합니다.

 

하이퍼바이저 간 애플리케이션 마이그레이션

가상화는 많은 클라우드 마이그레이션 전략의 기본적 구성 요소입니다. 가상 머신은 새로운 물리적 하드웨어 환경에서 즉시 실행할 수 있기 때문입니다. 심지어 최종 사용자의 경험에 지장을 주지 않고 물리적 호스트 머신 간에 가상 머신에서 실행되고 있는 라이브 애플리케이션을 이동하는 것도 가능합니다. 가상화된 컴퓨팅 환경의 유연성과 다기능성 덕분에 애플리케이션 마이그레이션 프로세스를 대폭 간소화할 수 있습니다.

하이퍼바이저의 유형과 마이그레이션 운영

현재 여러 가지 복제 및 마이그레이션 솔루션이 고객이 베어 메탈 서버, 클라우드의 가상 서버 그리고 심지어 하이퍼바이저 간에 가상 머신을 마이그레이션할 수 있도록 지원합니다.

  • VMWare 애플리케이션 마이그레이션: 운영 중단 또는 다운타임을 유발하거나 애플리케이션 재구성을 요구하지 않고 온프레미스 VMware 인스턴스에서 실행되는 가상 머신을 프라이빗 클라우드에서 실행되는 VMware vCenter Server로 리프트 앤 시프트 방식으로 이동할 수 있습니다.

  • Red Hat 애플리케이션 마이그레이션: Red Hat은 맞춤 구성 가능하고 확장 가능한 소프트웨어 솔루션인 애플리케이션 마이그레이션 툴킷을 제공하며, 이 툴킷은 IT 환경을 분석하여 애플리케이션의 상호의존성을 파악합니다. 이 툴킷은 대시보드 방식의 분석 보고 기능을 제공하여 마이그레이션 도중 문제에 직면할 가능성이 큰 애플리케이션을 알려줍니다.
클라우드 마이그레이션 서비스

엔터프라이즈가 성공적인 클라우드 마이그레이션 전략과 계획을 수립하고 이를 실행하도록 돕는 서비스가 많습니다.

마이그레이션 블루프린트: 포괄적인 블루프린트 서비스 오퍼링의 경우 공급업체가 마이그레이션 전략과 목표를 분명하게 설정하고, 애플리케이션 및 환경에 대한 정보를 수집하고, 사용자의 요구 사항과 비즈니스 요구 사항을 파악하고, 마이그레이션을 위한 상세한 행동 계획을 수립하도록 도와줄 것입니다.

마이그레이션 배포: 매니지드 배포 옵션을 선택하면, 공급업체가 마이그레이션 전략 및 계획 수립을 도와줄 뿐만 아니라 마이그레이션과 관련 테스트 및 문제 해결까지도 관리할 것입니다. 이 옵션은 일반적으로 종합적인 엔드투엔드 지원을 포함하는 턴키 서비스 오퍼링입니다.

관리형 클라우드 서비스: 매니지드 클라우드 서비스에는 일반적으로 클라우드 IT 환경에 대한 모니터링과 유지보수가 포함됩니다. 매니지드 클라우드 서비스 제공업체는 클라우드 보안 관리부터 고객을 대신하여 공급업체로부터 서비스형 오퍼링을 조달하는 일까지 여러 기능에 대해 책임을 질 것입니다. 애플리케이션 마이그레이션은 패키지형 서비스 오퍼링에 포함되거나 개별 항목 선택 방식으로 추가될 수 있습니다.

애플리케이션 현대화: 애플리케이션 현대화 서비스에는 레거시 애플리케이션이 컨테이너 또는 가상화된 환경에서 실행될 수 있도록 수정함으로써 클라우드에서 레거시 애플리케이션을 사용할 수 있도록 준비시키는 맞춤형 개발 오퍼링이 포함됩니다.

관련 솔루션
클라우드 마이그레이션 서비스

IBM 클라우드 마이그레이션 서비스는 비즈니스의 클라우드 마이그레이션을 처리하도록 지원하므로 다른 모든 작업에 집중할 수 있습니다.

클라우드 마이그레이션 서비스 알아보기
리소스 클라우드 컴퓨팅이란?

클라우드 컴퓨팅은 IT 인프라를 유틸리티 방식 서비스로 변환하므로 고객은 이러한 인프라를 온프레미스에서 설치하여 관리하지 않고도 인터넷을 통해 컴퓨팅 리소스와 애플리케이션에 '연결'할 수 있습니다.

클라우드 마이그레이션이란?

클라우드 마이그레이션은 기업의 데이터, 애플리케이션 및 워크로드를 클라우드 인프라로 이전하는 프로세스입니다.

애플리케이션 현대화란?

오늘날 애플리케이션 현대화는 주로 모놀리식 레거시 애플리케이션을 마이크로서비스 아키텍처 기반의 클라우드 애플리케이션으로 변환하는 것을 말합니다.

다음 단계

IBM Cloud Migration Services는 디지털 혁신을 위해 워크로드를 클라우드로 마이그레이션하도록 돕습니다. IBM은 대량 마이그레이션, 이미지 마이그레이션, 애플리케이션 마이그레이션, 데이터 재호스팅, 데이터 마이그레이션, 스토리지 마이그레이션을 포함하여 재호스팅 패턴을 지원합니다. 각 단계에 자동화가 기본적으로 구현된 IBM의 선언적이고 지속적인 마이그레이션 접근법은 마이그레이션 여정의 매 단계에서 고객을 돕습니다.

자세히 알아보고 시작하기