Amazon Web Services 한국 블로그
Amazon Aurora, MySQL 백업에서 클러스터 구축 기능 제공
AWS 클라우드를 활용하는 고객들이 더 빠르게 관계형 데이터베이스에 저장되어있는 대량 데이터를 마이그레이션하는 방법에 대해 궁금해 합니다. 오늘 이와 관련된 Amazon Aurora의 중요한 새로운 기능을 출시했습니다. 이미 사내 환경과 Amazon EC2 인스턴스에서 MySQL을 사용하는 경우, 기존 데이터베이스를 백업하고 스냅샷 백업을 Amazon S3에 업로드하고, 스냅샷 백업을 사용하여 Amazon Aurora 클러스터를 만들 수 되었습니다. 기존 Amazon Aurora의 MySQL 데이터베이스에서 복제 할 수있는 기능과 함께 사용하면 MySQL에서 Amazon Aurora에 응용 프로그램을 중지시키지 않고 쉽게 마이그레이션 할 수 있습니다.
본 신규 기능을 이용하여 대용량의 데이터(2TB 이상)를 MySQL 데이터베이스에서 Amazon Aurora에 원본 데이터베이스에 성능 영향을 최소화하면서 효율적으로 전환할 수 있습니다. 사전 테스트에서는 mysqldump utility를 이용한 경우와 비교하여 20 배 빠르게 처리 할 수 있었습니다. InnoDB와 MyISAM 형식의 테이블이 모두 포함되어 있어도 전환은 가능하지만, 마이그레이션 전에 MyISAM에서 InnoDB로 변환 하는 것을 권장합니다.
마이그레이션 방법에 대해 간략하게 설명해 보겠습니다.
- 원본 데이터베이스 준비 – 원본 데이터베이스에서 바이너리 로그 활성화를 합니다. 마이그레이션 동안 바이너리 로그가 남아있는 것처럼 설정을 해주십시오.
- 원본 데이터베이스 백업 – Percona Xtrabackup를 이용하여 원본 데이터베이스에서 “핫(Hot)”백업을 만듭니다. 이 도구는 데이터베이스 테이블이나 트랜잭션을 잠그지 않고도, 압축 백업을 만들 수 있습니다. 하나의 백업 파일이나 여러 개의 작은 백업 파일을 만들 수 있으며, Amazon Aurora는 어떤 형식으로도 이용하실 수 있습니다.
- S3 업로드 – S3로 백업 파일을 업로드합니다. 5TB 미만의 백업의 경우는 AWS Management Console 및 AWS Command Line Interface (CLI)를 이용하여 업로드합니다. 큰 백업 데이터의 경우 AWS Import/Export Snowball을 이용하는 것을 검토할 필요가 있습니다.
- IAM Role – Amazon Relational Database Service (RDS)에 업로드 된 백업 데이터와 S3 버킷에 접근하기 위해 IAM role을 만듭니다. 본 IAM role은 반드시 RDS가 ListBucket과 GetBucketLocation 작업을 버킷에 실행할 수 있으며 GetObject을 백업 데이터에 적용합니다. (자세한 샘플 정책 기술 문서 에서 확인하실 수 있습니다).
- 클러스터 생성 – 새로운 Amazon Aurora 클러스터를 업로드 한 백업 데이터에서 만듭니다. RDS 콘솔에서 Restore Aurora DB Cluster from S3를 클릭하고 원본 데이터베이스 버전을 선택합니다. 그리고 S3 버킷을 선택하고 IAM Role을 선택한 후, Next Step을 클릭합니다. 클러스터 작성 페이지 (DB Details 및 Configure Advanced Settings)의 나머지 항목을 입력합니다. Amazon Aurora는 백업 파일을 알파벳 순으로 처리합니다.
- MySQL 스키마 전환– 사용자 권한과 MySQL INFORMATION_SCHEMA 설정을 마이그레이션합니다.
- 관련 항목 전환 – 트리거(trigger), 함수(function)과 스토어드 프로시저(stored procedure)를 원본 데이터베이스에서 Amazon Aurora 클러스터로 마이그레이션합니다.
- 복제 설정 – 원본 데이터베이스와 Amazon Aurora간에 복제를 구성합니다.
- 데이터베이스 변경 – 모든 클라이언트 응용 프로그램의 연결을 Amazon Aurora 클러스터로 변경합니다.
- 복제 정지 – Amazon Aurora 클러스터에 복제를 중지합니다.
정식 서비스 환경에서는 데이터베이스 마이그레이션 전에 사전 테스트 작업을 하기를 권장합니다.
정식 출시
이 새로운 기능은 오늘부터 Asia Pacific (Mumbai) 리전을 제외한 모든 리전에서 사용할 수 있습니다. 자세한 정보는 Amazon Aurora User Guide 내에 Migrating Data from an External MySQL Database to an Amazon Aurora DB Cluster 를 참조하십시오.
– Jeff;
이 글은 Amazon Aurora Update – Create Cluster from MySQL Backup의 한국어 번역입니다.