Infra Tech Update

AWS DMS Serverless, 종합 마이그레이션 사전 평가 기능 사용해보기

AWS DMS Serverless

7 min read
AWS DMS Serverless, 종합 마이그레이션 사전 평가 기능 사용해보기

안녕하세요, 이번 포스팅에서는 AWS DMS Serverless, 종합 마이그레이션 전 평가 기능에 대해 다루려고 합니다. 평소에 클라우드와 DB에 관심이 많으셨던 분들이라면 재밌게 봐주실 수 있을 것 같습니다 😄

1.DMS란? 사전 마이그레이션 평가를 사용해야 하는 이유는?

DMS란?

AWS DMS(Database Migration Service)란, 쉽게 말하면 데이터베이스를 다른 곳으로 옮겨주는 "이사 도우미" 같은 서비스입니다.

예를 들어, 회사가 오래된 데이터베이스를 쓰고 있다가, 더 빠르고 안전한 클라우드로 옮기고 싶을 때, AWS DMS가 데이터를 자동으로 옮겨주고, 옮기는 동안에도 기존 시스템은 계속 작동하게 해주는 거죠. 비유하자면 이삿짐을 옮기는 트럭이 AWS DMS이고, 짐(데이터)을 안전하게 중단 없이 새집으로 옮겨주는 겁니다.

 

사전 마이그레이션 평가를 사용해야 하는 이유는 뭘까요?

이는 DMS 중에 문제가 발생하여 작업 종료시간이 지연되는 것을 방지하기 위해서입니다. 작업을 한참 진행하고 있다가 갑자기 문제가 발생하면, 처음 예상했던 작업 종료 시간보다 더 늦어질 수 있죠. 그런 일이 발생하지 않도록 사전에 마이그레이션이 문제없이 진행될 지 평가를 하는 것입니다.

 

2.실습해봅시다.

시나리오는 다음과 같습니다.

Amazon RDS for Oracle에서 Amazon RDS for SQL Server로 마이그레이션 진행

AWS DMS Serverless로 복제 및 CDC를 진행할 태스크 생성하여, 해당 태스크 실행 전에 마이그레이션 평가를 진행하려고 합니다.

DMS Serverless Task에서 사전 마이그레이션 평가 실행하기

Serverless는 태스크를 생성한 후, “작업 - 시작”을 클릭하면, 마이그레이션 전 평가를 활성화할 수 있는 화면이 나타납니다. (테스트 용이라 모든 평가 항목을 선택하였지만, 상황에 따라 필요한 항목만 선택하여 진행할 수 있습니다.)

사전 마이그레이션 평가 실행

❗태스크를 처음 실행하게되면, 프로비저닝 단계를 거쳐야해서 시간이 다소 소요됩니다.

마이그레이션 전 평가를 실행하니 총 54건의 평가 중 45건 통과, 1건 경고, 5건 Skipped, 그리고 3건이 실패한 것으로 확인됩니다.

실패한 항목 조치

실패한 사전 평가 중 데이터베이스 수준의 보충 로깅 확인을 조치해보겠습니다.

  1. 데이터베이스 수준의 보충 로깅 확인 → 최소 보충 로깅 활성화

위 문서에 안내된 쿼리를 2번까지 실행하여 보충 로깅을 설정하였습니다.

(보충 로깅을 처음 설정한 당시에는 괜찮았는데, 나중에 태스크를 재시작하니 오류가 발생해서,, 3번까지 실행해주는 것을 추천드립니다,,)

조치 후, 다시 태스크를 진행해보니 실패가 2건으로 줄고, 통과가 1건 늘어난 것을 확인할 수 있었습니다.

남은 2개의 실패 건도 조치를 취하고 태스크를 실행해보았습니다.

  1. RDS Oracle의 archivelog 보존을 확인 → Archive 로그의 보존 기간을 24시간 이상으로 설정

  1. 소스 데이터베이스에서 archivelog 모드 활성화 확인→ RDS 인스턴스의 백업 보존 기간을 0이 아닌 다른 숫자로 설정

조치 후 사전 마이그레이션 평가 실행

마이그레이션 사전 평가가 완료되어 태스크가 시작되었습니다.

Full Load가 끝난 후, CDC 진행 중으로 변경되었습니다.

이렇게 사전 마이그레이션 평가를 통해 조치 후 DMS를 진행해보았습니다.

3.이슈 정리 및 회고

사전 마이그레이션 평가 생성 시 프로비저닝 인스턴스와의 차이점

프로비저닝 된 Task와 달리, Serverless 는 task 생성 시에 사전 마이그레이션 평가를 활성화 할 수 없습니다. 또한, Task를 생성하고 나서 마이그레이션 전 평가 생성을 하려고 하면, Serverless 모드에서는 해당 작업으로 마이그레이션 전 평가를 생성할 수 없다고 합니다. 🤔

DMS Serverless 태스크 생성 중 발생한 이슈

IAM:CreateServiceLinkedRole 권한이 없어서 발생한 이슈 (이 이슈는 IAM:CreateServiceLinkedRole 권한이 있는 계정으로 단 한 번이라도 서버리스 복제를 생성했다면 발생하지 않습니다.)

요즘 고객사에서도 데이터 이전 작업이 많다 보니, 평가 기능을 통해 문제가 생기기 전에 미리 확인할 수 있다는 점이 실제로도 꽤 유용하겠다고 느껴 이번 포스팅을 작성하게 되었습니다! 긴 글 읽어주셔서 감사합니다😄


참고문서

Announcing AWS DMS Serverless comprehensive premigration assessments - AWS

AWS DMS Serverless premigration. - AWS Database Migration Service

AWS RDS for Oracle에서 보충 로깅 설정하는 방법

Share This Post

Check out these related posts

Amazon EKS, 커뮤니티 애드온 살펴보기

Amazon S3 콘솔, 모든 버킷 외부 액세스 요약 표시

Database Insights, 메트릭 대시보드 사용자 정의 지원 추가