AWS SCT를 이용한 DB 스키마 변환작업 실습

2019-10-06

.

Data_Engineering_TIL_(20191004)

[study program]

‘19.10. 4.(금) AWS 201 세미나 핸즈온

URL : https://aws.amazon.com/ko/events/seminars/201-seminar

[Overview]

AWS Schema Conversion Tool(SCT)를 이용하여 원본 및 대상 엔드포인트를 생성하고 원본의 스키마를 대상에 적용하는 과정 수행

원본 데이터베이스는 사전에 미리 구현된 Oracle 18c Express Edition 이 설치된 EC2 인스턴스에 총 16개의 테이블이 포함된 DMS_SAMPLE 스키마 이용한다. 원본 및 대상 데이터베이스의 접속을 위한 클라이언트(DBeaver)와 AWS SCT 가 미리 설치된 EC2 인스턴스 이용한다. 대상 데이터베이스는 사용자가 없는 Amazon Aurora PostgreSQL Compatible 클러스터를 사용한다.

  1. 실습과정 요약

STEP 1) 실습할 리소스 생성

CloudFormation 템플릿을 이용 VPC 와 원본 데이터베이스 및 변환 작업을 위한 EC2 인스턴스 2 개 생성

STEP 2) Oracle 18c Express Edition 환경설정

STEP 3) Amazon Aurora PostgreSQL Compatible 클러스터 생성

STEP 4) SCT(Schema Conversion Tool) 프로젝트 생성

원본 데이터베이스에서 대상 데이터베이스로의 스키마 변환

  1. 구현할 아키텍처

00

[실습상세]

STEP 1) 실습할 리소스 생성

  • CloudFormation 템플릿을 이용 VPC 와 원본 데이터베이스 및 변환작업을 위한 EC2 인스턴스 2개 생성

  • CloudFormation 은 간단한 텍스트 파일을 사용하여 자동화되고 안전한 방식으로 AWS 리전과 계정에 걸쳐 애플리케이션에 필요한 모든 리소스를 모델링 및 프로비저닝할 수 있는 Infrastructure as a Code 의 핵심 요소다. CloudFormation 을 통해 실습에 필요한 VPC 와 EC2 를 서울리전에 생성한다.

** 실습에 사용할 미리구현된 CloudFormation 템플릿

0-2

아래 그림과 같이 클라우드 포메이션을 이용하여 클라우드 스텍을 생성해준다.

1

** 클라우드 스텍 생성 후 생성된 인스턴스 화면

6

STEP 2) Oracle 18c Express Edition 환경설정

아래 그림과 같이 AWS201 Client 인스턴스 접속 후 AWS201 DBMS 인스턴스와 연결설정을 해준다.

8

공교롭게도 바로 위에 그림처럼 커넥션애러가 발생하는데 이는 오라클 리스너가 설정이 안되어 있어서 그렇다. 그래서 우리는 오라클 리스너를 아래 그림과 같이 설정해준다.

** 참고사항

오라클 리스너는 네트워크를 이용하여 클라이언트에서 오라클 서버로 연결하기 위한 오라클 네트워크 관리자이다. 네트워크를 통한 연결은 모두 리스너가 담당하며 리스너와 연결되기 위해서는 클라이언트에 오라클 NET8(오라클 클라이언트)이 설치되어 있고 이를 통해 오라클 서비스명이라는 것을 만들어 접속을 해야한다.

오라클 서버에서 리스너를 시작시켜줘야 클라이언트들이 접속을 할 수 있다.

lsnrctl 명령어로 리스너를 관리 할 수 있다.

14

위와 같이 완료하였으면 다시 DBeaver로 conncetion edit 설정을 재시도하고 테스트 컨넥션을 클릭해보면 아래 그림과 같이 성공메세지를 확인할 수 있다. 그리고 DB로 접속하여 아래 그림과 같이 테이블을 확인해보자.

19

STEP 3) Amazon Aurora PostgreSQL Compatible 클러스터 생성

아래 그림과 같이 클러스터를 생성해준다.

22

STEP 4) SCT(Schema Conversion Tool) 프로젝트 생성

아래 그림과 같이 원본 데이터베이스에서 대상 데이터베이스로의 스키마 변환을 수행할 것이다.

이번실습에서는 다루지는 않지만 스키마 변환을 수행하고 나면 그 이후에 DMS 서비스 등을 이용하여 원본에서 대상 데이터베이스로의 실제 데이터 복제작업을 수행할 수 있을것이다.

27

위의 작업들을 수행하면 아래 그림과 같은 결과 화면을 볼 수 있다.

33

아래 그림과 같이 원본 데이터베이스에서 “DMS_SAMPLE” 스키마를 선택한 후 오른쪽 마우스를 클릭하여 [Create report] 메뉴를 선택한다.

그러면 아래 그림과 같이 아래와 같이 변환 평가작업의 진행사항평가작업 완료보고서를 확인할 수 있다.

34

그러면 아래 그림과 같이 자동 변환 가능한 개체들을 선택하여 스키마 변환을 진행한다.

37

DBeaver 에서 Database > New Database Connection 에서 PostgreSQL을 선택하고 Host 및 인증정보에 endpoint 등 정보를 입력하여 접속하고 변환된 스키마 정보를 확인한다.

40