brunch

You can make anything
by writing

C.S.Lewis

by Master Seo Sep 02. 2023

36탄-3. SQL Server를 AWS로 마이그레이션

<1> SQL Server를 AWS로 마이그레이션 하기 전에 고려해야 할 것

<2> AWS로 마이그레이션 할 때 선택 할 수 있는 방안

<3> 데이터베이스 마이그레이션 방법

<4> 마이그레이션 후 고려 할 것들

<5> 호환 Postgre SSQL로 전환하는 방식  



<1> SQL Server를 AWS로 마이그레이션 하기 전에 고려해야 할 것 


1

마이그레이션 대상 파악?

어느 버전인가? EOS 된 버전?   업그레이드 계획은 있는가?

라이선스 상황은?

원본 인프라 구성은?  물리, 가상화, 고가용성

자원을 어느 정도 쓰고 있나?  실제 사용률 기반 사이징

다른 데이터 서비스로의 전환도 검토 중인가?  


2

SQL 서버 기능 비교.

지금 어떤 기능을 쓰는가?

기능을 계속 써야 하는 것인가?

자원의 크기와 지원하는 기능 리뷰 필요.

Read replica 기능으로 엔터프라이즈를 써야 하나? 


기능

https://learn.microsoft.com/ko-kr/sql/sql-server/editions-and-components-of-sql-server-2022?view=sql-server-ver16  


3

라이선스?

AWS 라이선스 쓸 것인가? 

본인 소유 라이선스 쓸 것인가? (BYOL)

Software Assurance 유 - EC2 기본 인스턴스 사용가능

Software Assurance 무 - 2019년 10월 1일 이전 구매 = EC2 Dedicated Host에서 사용가능 

Aws의 영업 대표와 확인 필요   



<2> AWS로 마이그레이션 할 때 선택 할 수 있는 방안 


1

Rehost?

SQL SERVER on Amazon EC2  


2

Replcatform?

RDS for SQL SERVER 


3

REFACTOR?

오로라, 다이나모 디비등으로 변경  


4

SQL 서버를 변경하지 않고 이전하는 방법은?

SQL SERVER on Amazon EC2

RDS Custom for SQL SERVER

RDS for SQL SERVER  


5

RDS for SQL SERVER는 RDS라 제약이 있다.

관리형 서비스, 아마존에서 서버 관리한다.

OS접근이 안된다,

서드 파트 제품을 설치 못한다.  


6

RDS Custom for SQL SERVER는 RDS for SQL SERVER의 일부 제약을 해결함.

라이선스도 가지고 있는 라이선스 사용가능

BYOM으로 서비스 가능. 골든이미지로 사용하는 방법이다. 

 

7

SQL SERVER on Amazon EC2  사용 시는 고가용성을 직접 구성해야 함. 

고가용성 제공함.

기존에 MSCS 구성임.

AWS에서는 SAN 대신 FSX 사용.  또는 서드파티 사용도 가능.  


8

비용 최적화 고려 사항

작은 인스턴스 통합?

엔터프라이즈 필요 사항인지 확인 필수

개발이라면 Developer Edition 이용.

워크로드에 맞는 인스턴스 크기, 스토리지 사용 선택    




<3> 데이터베이스 마이그레이션 방법 



데이터 베이스 기능으로 사용하는 방법들 



1

Detach & Attach Database -> EC2

모든 에디션에서 가능

단순

분리 연결 후 새로 연결하는 방식.

작은 사이즈가 많거나 대규모 데이터 

스노볼도 가능  



2

데이터베이스 Export/Import Data -> EC2 , RDS

모든 에디션에서 가능

단순

SQL 서버 내보내기 기능으로 이전하는 방법  



3

백업과 리스토어 (Log Shipping) -> EC2 , RDS

최초 한번 백업

이후 로그 백업

단순 + 일부 복잡  



4

Transcationl Replication -> EC2, RDS

적용 가능 에디션이 따로 있다.

작업 복잡  



5

DMS를 이용한 지속적인 복제(CDC)를 위한 조건 

기존키 존재하는 경우, 존재하지 않는 경우 다르다.   




<4> 마이그레이션 후 고려 할 것들 



1

운영 최적화, 모니터링 필수

비용 및 아키텍처 최적화 필수



2

SQL Server 모니터링 툴?

Cloudwatch Metrics / Endhanced Monitoring

Cloudwatch Logs

Performanced  Monitoring

SQL Server native tools : DMVs , Profiler 등

서드파트 모니터링 툴 : Red Gate 등  




<5> 호환 Postgre SSQL로 전환하는 방식 


1

하나의 데이터베이스 엔진(Aurora)에서 PostgreSQL 방식으로도 SQL Server 방식으로도 이용가능 


2

빠르게 전환 가능한 Babelfish 기능 제공.

Babelfish 호환성 평가툴 

무료

https://github.com/babelfish-for-postgresql/babelfish_compass 

Babelfish compass

현재 쿼리가 어느 정도 그래도 이용할 수 있는지 확인하는 툴이다.  


3

SQL Server 전문 기능을 이용하지 않는다면 오픈소스 데이터베이스로 전환을 검토 가능하다.

SQL 라이선스 고려하지 않아도 된다.   



다음 자료

https://brunch.co.kr/@topasvga/3423




감사합니다.

매거진의 이전글 36탄-2. Ktown4u , 오로라 DB커스텀
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari