[클라우드] 6R 마이그레이션 전략

Retain, Retire, Rehost, Replatform, Refactor, Rearchitect
어디에서는 또 Retain, Retire, Rehost, Refactor, Rebuilding, Replacing이라고 한다.

검색하면 나오는 이야기가 다 다르다.

Retain과 Retire, Rehost까지는 공통적으로 정의가 일치하는 것 같다.
특히 Lift and Shift라는 표현은 Rehost를 아주 잘 설명한다.
Retain과 Retire 두 개념은 클라우드를 이용하지 않는 전략이라고 보면 된다.

신세계 아이앤씨의 경우 이 두가지 경우를 제외하고 어플리케이션 마이그레이션 전략을 Rehost, Refactoring, Rebuilding, Replacing 로 구분하고 있다.

문제는 각각을 어떻게 정의하는지는 모르겠다. 그나마 Rehost의 경우에는 차이가 없다.

Rehost : Lift and Shift 즉 들어서 옮기는 것인데 기존 환경 그대로 클라우드에 옮기는 것이다.
Replatform: Lift, Tinker and Shift- > 핵심 아키텍처는 그대로 두고 특정 부분을 cloud에 최적화
EX) DB를 RDS로 옮기거나 앱을 Beanstalk로 옮기는 것
Refactoring: Modernize, Cloud Native -> 클라우드 환경에 최적화 하여 어플리케이션 재작성. – 클라우드 환경에 최적화하여 성능, 확장성, 민첩성 있는 애플리케이션으로 업그레이드
EX) 모놀리틱 – > 컨테이너, 서버리스를 사용
Retire: 유용하지 않은 애플리케이션을 제거함으로써 이전, 관리 보완할 아키텍처를 줄인다.
Retain/Revisit: 최근에 업그레이드 되었거나 기술문제, 재정문제등의 이유로 마이그레이션 준비가 되지 않은 경우 현 상태를 유지한다.
Repurchase: SaaS를 기반으로 현재의 워크플로우를 옮기는 것.

참고: 클라우드 마이그레이션 – BESPINGLOBAL
IT 이야기 :: [Tips] AWS 클라우드 마이그레이션 방안 – 6R (tistory.com)
“The 6 R’s”: 6 Application Migration Strategies – AWS Migration Whitepaper (amazon.com)