애플리케이션 마이그레이션은 소프트웨어 애플리케이션을 한 컴퓨팅 환경에서 다른 컴퓨팅 환경으로 옮기는 프로세스입니다. 예를 들어 한 데이터 센터에서 다른 데이터 센터로, 온프레미스 서버에서 클라우드 제공업체의 환경으로, 퍼블릭 클라우드에서 프라이빗 클라우드 환경으로 애플리케이션을 마이그레이션할 수 있습니다.
애플리케이션은 일반적으로 특정 네트워크 아키텍처의 특정 운영 체제에서 실행되도록 구축되거나 단일 클라우드 플랫폼용으로 개발되기 때문에 애플리케이션을 새로운 환경으로 이전할 때 몇 가지 문제가 발생할 수 있습니다. 일반적으로 베어 메탈 하드웨어에서 실행되는 애플리케이션을 마이그레이션하는 것보다 가상화된 아키텍처 또는 서비스 기반 아키텍처에서 애플리케이션을 마이그레이션하는 것이 더 쉽습니다.
전반적인 애플리케이션 마이그레이션 전략을 결정하려면 각 개별 애플리케이션의 종속성과 기술 요구사항은 물론 기업의 보안, 규정 준수 및 비용 제약을 고려해야 합니다.
동일한 기술 환경 내에서도 애플리케이션마다 클라우드로 이동하는 경로가 다를 수 있습니다. 클라우드 컴퓨팅 초기부터 개발자들은 이러한 애플리케이션 마이그레이션 패턴을 'R'로 시작하는 이름으로 지칭해 왔습니다.
리호스팅(Rehost): 리프트 앤 시프트(Lift and Shift)라고도 하는 리호스팅은 기업이 애플리케이션을 크게 변경하지 않고 온프레미스 서버에서 클라우드의 가상 머신으로 이동하는 일반적인 전략입니다. 애플리케이션 리호스팅은 일반적으로 다른 마이그레이션 전략보다 빠르며 마이그레이션 비용을 크게 줄일 수 있습니다. 단점은 애플리케이션을 수정하지 않으면 클라우드 네이티브 컴퓨팅 기능의 이점을 누릴 수 없으며, 클라우드에서 애플리케이션을 실행하는 데 드는 장기적인 비용이 더 높아질 수 있다는 것입니다.
리팩토링(Refactor) 또는 재설계(Rearchitect): 리팩토링은 클라우드 환경에서 확장하거나 더 나은 성능을 발휘할 수 있도록 애플리케이션을 상당히 크게 변경하는 것을 말합니다. 여기에는 모놀리식 애플리케이션을 일련의 마이크로서비스로 재구성하거나 데이터 저장소를 SQL에서 NoSQL로 현대화하는 등 클라우드 네이티브 기능을 더 잘 활용할 수 있도록 애플리케이션의 주요 부분을 다시 코딩하는 작업이 포함될 수 있습니다.
리플랫폼(Replatform): 리프트 앤 시프트와 재설계 사이의 중간 지점인 리플랫폼은 애플리케이션이 클라우드 아키텍처의 이점을 더 잘 활용할 수 있도록 애플리케이션을 약간만 변경하는 것을 말합니다. 예를 들어 클라우드 네이티브 관리형 데이터베이스와 함께 작동하도록 애플리케이션을 업그레이드하거나, 함께 작동하는 운영 체제 또는 미들웨어를 변경하거나, 애플리케이션을 컨테이너화하는 것 등이 있습니다.
폐기/교체(Retire/Replace): 때로는 애플리케이션을 폐기하는 것이 가장 합리적인 선택일 수 있습니다. 애플리케이션의 가치가 제한적이거나, 기능이 사용자 환경 내 다른 곳에서 중복되었거나, 애플리케이션을 마이그레이션하는 것보다 새로운 제품(주로 서비스형 소프트웨어(SaaS) 플랫폼)으로 교체하는 것이 더 비용 효율적인 경우 등이 이에 해당됩니다.
기업의 고유한 IT 환경과 비즈니스 요구 사항에 가장 적합한 애플리케이션 마이그레이션 전략을 개발하려면 애플리케이션 포트폴리오의 내용, 보안 및 규정 준수 요구사항의 세부 사항, 현재 사용 중인 클라우드 리소스, 온프레미스 스토리지, 컴퓨팅 및 네트워크 인프라를 정확히 파악하고 있어야 합니다.
성공적인 클라우드 마이그레이션을 위해서는 마이그레이션을 결정하게 된 주요 비즈니스 이유 및 목표를 명확히 파악하고 이에 맞춰 전략을 조정해야 합니다. 클라우드로 마이그레이션하는 이유와 마이그레이션을 통해 달성하고자 하는 목표가 무엇인지 잘 알고 있어야 합니다.
이해관계자들은 애플리케이션 마이그레이션으로 인해 비즈니스에 차질이 생기거나 예상치 못한 비용이 발생할 수 있다고 우려할 수 있습니다. 가장 일반적인 위험은 다음과 같습니다.
포트폴리오의 각 애플리케이션을 리호스팅, 재설계/리플랫폼 또는 폐기하는 것과 관련된 위험과 이점에 대해 신중하고 상세한 평가를 수행하면 애플리케이션 마이그레이션과 관련된 전반적인 위험을 완화하는 데 도움이 될 수 있습니다. 특히, 부서별 비용과 전체 기업 비용을 비교하고 애플리케이션을 온프레미스에 유지 시 필요한 하드웨어의 총 소유 비용(TCO)을 평가하는 것이 중요합니다.
이전에는 클라우드 제공업체가 제공하는 유연성, 확장성 또는 예측 가능한 종량제 비용 구조 때문에 애플리케이션을 클라우드로 이전하고자 하는 기업이 많았습니다.
그러나 오늘날 기업들은 혁신을 이룰 수 있는 환경도 원하고 있습니다. 클라우드 기술을 통해 다음을 실현할 수 있습니다.
대부분의 경우 컨테이너화와 같은 클라우드 친화적 기술을 사용하면 대체될 수 있는 가상 머신보다 더 나은 사용자 경험을 제공할 수 있습니다.
일반적으로 애플리케이션 마이그레이션 계획 프로세스는 세 단계로 나눌 수 있습니다. 각 단계에서는 일부 온프레미스 워크로드를 유지하는 것을 포함하여 모든 잠재적 옵션의 비용을 비교 검토하는 것이 중요합니다.
애플리케이션 식별 및 평가: 이 초기 탐색 단계에서는 포트폴리오에 있는 모든 애플리케이션의 포괄적인 카탈로그를 확보하는 것부터 시작합니다. 그런 다음 애플리케이션의 중요도가 비즈니스 크리티컬인지 아닌지, 애플리케이션의 가치가 전략적인지 비전략적인지, 각 애플리케이션을 클라우드로 마이그레이션하여 얻을 수 있는 이점이 무엇인지에 따라 분류합니다. 다음과 같은 관점에서 각 애플리케이션의 가치를 파악하기 위해 노력해야 합니다.
그런 다음 마이그레이션을 고려 중인 각 애플리케이션에 대해 클라우드 적합성 평가를 수행해야 합니다. 이 과정에서 그대로 사용할 수 있는 애플리케이션은 무엇인지, 클라우드용으로 전환하기 위해 상당한 변경이 필요한 애플리케이션은 무엇인지 결정합니다.
또한 애플리케이션 종속성 검색 도구를 사용하여 특정 워크로드를 현재 환경 외부로 마이그레이션하는 것이 타당한지 판단할 수도 있습니다.
총 소유 비용(TCO) 평가: 클라우드 마이그레이션 프로젝트의 총 비용을 결정하는 것은 복잡한 작업일 수 있습니다. 애플리케이션과 인프라를 온프레미스에 유지하는 시나리오와 클라우드로 이전할 때의 시나리오를 가정하여 비교하세요. 두 시나리오 모두에서 온프레미스로 유지할 하드웨어의 구매, 운영, 유지보수 비용과 소프트웨어 라이선스 비용을 계산해 보세요.
두 시나리오에서 클라우드 제공업체로부터 받게 될 월별 청구서와 마이그레이션 자체에 드는 비용(예: 새 인프라를 테스트하는 비용, 업데이트된 소프트웨어를 사용하도록 직원을 교육하는 비용 등)을 비교하세요. 온프레미스에 남아 있는 레거시 애플리케이션의 유지보수 비용도 고려해야 합니다.
전반적인 위험 및 프로젝트 기간 평가: 마이그레이션 계획의 마지막 단계로, 프로젝트의 일정을 정하고 발생할 수 있는 위험이나 걸림돌을 파악합니다.
일반적으로 애플리케이션이 오래될수록 클라우드로 마이그레이션하는 것이 더 어려워지며, 결과적으로 그 가치도 떨어질 수 있습니다. 오래된 소프트웨어는 유지 관리 비용이 많이 들고, 더 이상 패치가 적용되지 않는 경우 보안 문제가 발생할 수 있으며, 최신 컴퓨팅 환경에서 성능이 저하되는 경향이 있는 등 여러 가지 면에서 문제가 있습니다. 마이그레이션을 결정하기 전에 레거시 애플리케이션에 대한 평가를 특히 철저하게 진행해야 합니다.
조직은 애플리케이션의 실행 가능성과 마이그레이션 우선순위를 평가할 때 다음과 같은 문제를 고려해야 합니다.
복잡성: 애플리케이션의 개발 주체가 어디입니까? 사내 개발인 경우, 해당 개발자가 여전히 조직에 근무하고 있습니까? 애플리케이션의 설명서를 쉽게 구할 수 있습니까? 애플리케이션이 얼마나 오래되었습니까? 사용 기간은 얼마나 됩니까? 조직 내 다른 애플리케이션이나 워크플로 중 이 애플리케이션에 어떠한 방식으로든 의존하고 있는 것은 몇 개입니까?
중요도: 매일 얼마나 많은 사용자가 이 애플리케이션에 의존하고 있습니까? 주 단위로는 몇 명입니까? 비즈니스 운영이 중단되기 전에 견딜 수 있는 다운타임은 어느 정도입니까? 애플리케이션이 프로덕션, 개발, 테스트 또는 이 세 가지 모두에 사용됩니까? 애플리케이션은 사내 IT 팀에서 관리합니까, 아니면 외부 공급업체에서 관리합니까? 업타임/다운타임 요구 사항이 있는 다른 애플리케이션 중 이 애플리케이션과 동기화해야 하는 애플리케이션이 있습니까?
규정 준수: 애플리케이션이 준수해야 하는 규제 요건은 무엇입니까?
가용성: 이 애플리케이션이 준수해야 하는 표준 가동 시간은 무엇입니까? 예를 들어, 99.99% 가동 시간을 규정하는 서비스 수준 계약(SLA)이 적용됩니까?
테스트
애플리케이션 마이그레이션 과정에서 데이터나 기능이 손실되지 않도록 하려면 마이그레이션 중에 테스트를 수행하여 모든 데이터가 있는지, 데이터의 무결성이 유지되고 있는지, 데이터가 올바른 저장 위치에 있는지 확인해야 합니다.
또한 마이그레이션이 완료된 후에는 후속 테스트를 수행하여 애플리케이션 성능을 벤치마킹하고 보안 제어가 제대로 유지되는지 확인하는 것도 중요합니다.
가상 머신은 새로운 물리적 하드웨어 환경에서 쉽게 실행할 수 있기 때문에 가상화는 많은 클라우드 마이그레이션 전략의 기본 구성 요소입니다. 심지어 가상 머신에서 실행 중인 라이브 애플리케이션을 사용자 경험에 지장을 주지 않으면서 물리적 호스트 머신 간에 이동하는 것도 가능합니다. 가상화된 컴퓨팅 환경의 유연성과 다목적성은 애플리케이션 마이그레이션 프로세스를 획기적으로 간소화합니다.
현재 사용 가능한 여러 복제 및 마이그레이션 솔루션을 통해 고객은 베어 메탈 서버, 클라우드의 가상 서버, 심지어 하이퍼바이저 간에 가상 머신을 마이그레이션할 수 있습니다.
기업이 성공적인 클라우드 마이그레이션 전략을 수립하고, 계획하고, 실행하는 데 도움이 되는 다양한 서비스를 이용할 수 있습니다.
마이그레이션 청사진: 공급업체는 포괄적인 청사진 서비스를 제공하여 마이그레이션 전략과 목표를 명확히 하고, 애플리케이션과 환경에 대한 정보를 수집하며, 사용자의 요구사항과 비즈니스 요구사항을 파악하고, 마이그레이션을 위한 세부적인 실행 계획을 수립할 수 있도록 도와줍니다.
마이그레이션 배포: 관리형 배포 옵션을 선택하면 공급업체가 마이그레이션 전략과 계획을 수립하는 데 도움을 줄 뿐만 아니라 마이그레이션 자체와 관련 테스트 및 문제 해결도 관리합니다. 이는 일반적으로 턴키 서비스로 제공되며 완전한 엔드투엔드 지원이 포함됩니다.
관리형 클라우드 서비스: 관리형 클라우드 서비스에는 일반적으로 클라우드 기반 IT 환경의 모니터링과 유지보수가 포함됩니다. 관리형 클라우드 서비스 제공업체는 클라우드 보안 관리부터 고객을 대신하여 벤더로부터 서비스형 제품을 조달하는 것까지 다양한 기능을 대신 책임집니다. 애플리케이션 마이그레이션은 패키지 서비스 오퍼링에 포함되거나 단품으로 추가될 수 있습니다.
애플리케이션 현대화: 애플리케이션 현대화 서비스에는 컨테이너 또는 가상화된 환경에서 실행되도록 레거시 애플리케이션을 수정하여 클라우드에서 사용할 수 있도록 준비하는 맞춤형 개발 제품이 포함됩니다.
IBM의 최신 보고서를 통해 클라우드 마이그레이션에 대한 필수 인사이트를 확인하세요. 모든 기술 리더가 알아야 할 10가지 주요 사실을 알아보세요.
서비스형 인프라(IaaS), 서비스형 플랫폼(PaaS), 서비스형 소프트웨어(SaaS)의 주요 차이점을 알아보세요. 각 클라우드 모델이 다양한 수준의 제어, 확장성 및 관리 기능을 제공하여 여러 가지 비즈니스 요구를 충족하는 방법을 살펴보세요
최소한의 중단과 최적화된 성능을 보장하면서 플랫폼 또는 환경 전반에 걸쳐 애플리케이션을 마이그레이션하는 과정에 관해 알아보세요. 레거시 및 최신 애플리케이션의 마이그레이션 전략, 사용 사례 및 단계를 알아보세요.
리프트 앤 시프트 전략을 통해 애플리케이션을 클라우드로 빠르게 전환하여 기존 인프라를 유지하면서 클라우드의 이점을 누리는 방법을 알아보세요. 많은 기업에서 이 접근 방식을 선호하는 이유, VMware 워크로드 및 사용 사례를 살펴보세요.
VMware vSphere 워크로드를 자동 마이그레이션을 제공하는 셀프 서비스 마이그레이션 툴인 RackWare Management Module(RMM)을 통해 IBM Cloud로 마이그레이션하세요.
IBM Turbonomic을 통해 클라우드 마이그레이션 프로젝트를 효율적으로 계획하고 가속화하세요. 애플리케이션 워크로드에 대해 실행 가능한 인사이트를 확보하고 성능을 최적화하며 비용을 절감하는 동시에 원활한 클라우드 전환을 보장합니다.
클라우드에서 네트워크 프로비저닝 및 오케스트레이션을 자동화하여 마이그레이션을 간소화하고 민첩성을 향상하며 원활한 운영을 보장하세요.
IBM Instana Observability는 마이크로서비스 환경에 대한 애플리케이션 검색, 모니터링, 추적 및 근본 원인 분석을 자동화합니다.
IBM Turbonomic은 AI를 사용하여 멀티클라우드 환경의 성능, 비용, 규정 준수를 최적화하는 애플리케이션 자원 관리 소프트웨어입니다. SaaS 또는 자체 호스팅으로 사용할 수 있습니다.