© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
TechData Co., Ltd
김석원 수석
Solution Architect Team manager
아마존 웹 서비스 상에서 MS SQL 100% 활용하기
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Trusted IT Utilization Partner
The Cloud Utilization Service
Provided by
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AGENDA
 1. Microsoft SQL Server on AWS의 장점
 2. AWS RDS for Microsoft SQL Server 활용법
 3. Microsoft SQL Server on EC2 고가용성 확보 방안
 4. Microsoft SQL to AWS Migration 방법론
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Microsoft SQL Server on AWS의 장점
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS 에서 SQL Server를 시작하는 이유
Database Backups
SQL Software Patches
SQL Software Installs
OS Patches
OS Installation
Server Maintenance
Rack and stack
Power, HVAC, net
Schema Design
Query Optimization
Query Construction
Scaling
High Availability
Database Backups
SQL Software Patches
SQL Software Installs
OS Patches
OS Installation
Server Maintenance
Rack and stack
Power, HVAC, net
Schema Design
Query Optimization
Query Construction
Scaling
High Availability
Database Backups
SQL Software Patches
SQL Software Installs
OS Patches
OS Installation
Server Maintenance
Rack and stack
Power, HVAC, net
Schema Design
Query Optimization
Query Construction
Scaling
High Availability
Traditional DC SQL Server on EC2 RDS for SQL Server
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
RDS 와 EC2에서 SQL Server 지원 범위
RDS for SQL Server SQL Server on EC2
지원 버전 :
지원 에디션 :
고 가용성 :
암호화 :
인증 방식 :
DB 백업 :
관리 :
라이선스 :
2008R2, 2012, 2014, 2016, 2017 2005, 2008, 2008R2, 2012, 2014, 2016, 2017
Express, Web, Standard, Enterprise
Multi-AZ (Mirroring) Always On AG, Clustering, Mirroring, Log shiping
Encrypted Storage using AWS KMS (all editions); TDE Support(Enterprise only)
Windows & SQL Server Authentication
Managed automated backups Maintenance plans & 3rd party tools
Automatic software patching Self-Managed(OS, SQL)
License Included, Bring Your Own License(BYOL) * License Included, Bring Your Own License(BYOL)
* 미 지원
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
RDS 와 EC2에서 SQL Server 선택은 ?
RDS for SQL Server
 AWS에서 RDS 우선 고려
 제한된 리소스에서 비즈니스 집중
필요
 SQL 성능 튜닝 및 최적화 집중
 쉽고 빠른 구성 / 확장 가능
 편리한 스냅샷 / 자동 백업 제공
 데이터베이스 운영 경험 불필요
 단, 제약사항 확인 필수
SQL Server on EC2
 DB 관리자가 모두 통제
 sysadmin 역할 기능 구현
 다양한 데이터베이스 인스턴스
요구
 다양한 운영체제 필요
 다양한 백업 방식 활용
 다양한 이중화 방식 고려
 단, OS, SQL 서비스에 대한 관리
필요
SQL on EC2
RDS for SQL
선택
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS RDS for Microsoft SQL Server 활용법
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 제공 하는 기능
 RDS DB 인스턴스 당 최대 30개 데이터베이스 생성 가능
 모니터링 및 매트릭(CPU, 메모리, 스토리지 용량 등) 제공 – CloudWatch 무료 제공
 CloudWatch 경보 알림 – 매트릭에 알람 설정 기능 제공
 자동 소프트웨어 패치 – 패치여부 및 시기 설정 가능
 스토리지 20GB 부터 최대 16TB 까지 프로비저닝
 백업 자동화 – 보존기간 최대 35일까지, 최소 5분 데이터 복원 가능
 인스턴스 스냅샷 – 언제든지 새로운 DB 인스턴스 복제 생성 가능
 Multi-AZ를 통한 고 가용성 배포 – 자동 Failover 가능
 SQL 백업 파일을 사용하여 복원 / 백업 기능
 제약사항
 SSIS, SSAS 설치 불가
 유지관리계획 기능 / Database Mail 미 지원 (Amazon SES 서비스 권장)
 sysadmin 권한제한으로 일부 기능 미 지원 (시스템 보안 안정성 확보)
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 설치 및 구성
 DB 인스턴스 시작
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 설치 및 구성
 표준 시간대(선택 사항)
 한국 시간 기준의 DB 데이터 생성시 필수 선택 ( 변경 불가)
 퍼블릭 액세스 가능성
 VPC 외부에서 RDS SQL Server를 접속하여 관리할 때는 필수 [예]를 선택
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 설치 및 구성
 가용 영역
 DB 접속을 하는 Application 서비스가 많이 배치된 가용 영역 선택 권장
 DB 파라미터 그룹
 sp_configure 옵션 UI 제공, RDS 인스턴스 생성 전 DB 파라미터 그룹 생성 권장
 RDS 인스턴스마다 각각 그룹 생성 권장
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 설치 및 구성
 SSMS 접속 오류 발생
 회사에서 SSMS(SQL Server Management Studio) Tool 로 접속 할 때 오류가 발생하면
 VPC 옵션 : DNS 확인 & DNS 호스트이름 옵션 활성화
 Internet Gateway 생성 후 VPC 연결
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 유지관리
 마스터 사용자 이름 권한 최소화
 보안 최소 구성 (보안 강화 정책)
 sysadmin 서버 역할 제약(설정 불가)
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 유지관리
 방법.1 RDS 콘솔 UI 제공  방법.2 T-SQL 로 확인
 SQL Errorlog 확인 하는 방법
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 유지관리
 모니터링 및 매트릭 제공 – CloudWatch 무료제공
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 유지관리
 CloudWatch 경보 생성 - 알람 설정
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
 TempDB 최적화
 SQL Server tempdb 경합이 자주 발생하면 SQL 성능 저하
 파일크기, 최대크기, 파일증가 크기, 데이터파일 추가 등 튜닝 고려
 DB 인스턴스 재 시작 필요
Amazon RDS for SQL Server 유지관리
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 유지관리
 스토리지 용량 관리
 SQL 데이터 파일 증가 모니터링
 RDS 스토리지 용량 부족시 서비스 중지 발생
 Tempdb mdf, ldf 파일 증가 모니터링 및 축소(장애 요소)
 DBCC shrinkfile 명령 지원 안함
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
 Native Backup / Restore 지원
 백업/복원 사전 설정 구성
 Step.1 S3 bucket to store your backup files
 Step.2 IAM role to access the bucket
 Step.3 The SQLSERVER_BACKUP_RESTORE option added to an option group on your DB instance.
Amazon RDS for SQL Server 유지관리
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 유지관리
 Native Backup Database
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 유지관리
 Native Restore Database
 주의! DB 인스턴스에 동일한 데이터베이스를 복원 시 오류
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 유지관리
 자동 백업 및 스냅샷
 전체 DB 인스턴스 단위의 백업/복원 기능
 자동 백업 주기 : 기본 30분 마다, 보존기간 7일 (최대 35일 설정 가능)
 수동 백업 : 스냅샷 기능 제공
 Production RDS 인스턴스 장애시 복원 활용
 Non-Production RDS 인스턴스 생성 활용
 Point-in-Time 복원 (5분이내)
 RDS 인스턴스 삭제 전 최종 스냅샷 백업 여부 확인
 리전 간의 스냅샷 복사 가능
 AWS 계정간의 스냅샷 복사 가능
 복원단계에서 SQL Server edition 변경 가능
 주의 : 복원은 새로운 DB 인스턴스로 생성 가능
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 유지관리
 자동 백업 및 스냅샷 – Point-in-time 복구
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 유지관리
 스냅샷 만들기
 대상 인스턴스 선택 후 스냅샷 만들기
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 유지관리
 스냅샷 복원
 대상 스냅샷 선택 후 새로운 RDS 인스턴스로 생성
 인스턴스 사양 변경 (인스턴스 타입, 스토리지 유형, 프로비저닝된 IOPS)
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 고가용성
 Multi-AZ 배포 구성
 SQL Server 데이터베이스 미러링 기능 활용
 실시간 동기식 데이터 복제 : 성능 저하 고려
 자동 장애조치(failover)
 데이터베이스 복구모델 : Full
 보조 복제본의 가용영역은 자동 배포
 로그인 사용자 및 권한 자동 복제. 단, SQL Server Job Agent 수동 생성
 장애조치(Failover)로 역할 변경 후 동일한 Endpoint DNS 접속 가능
 Multi-AZ 설정 배포
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 고가용성
 Multi-AZ 아키텍처
Availability Zone ‘A’ Availability Zone ‘C’
Public subnet Public subnet
SQL EC2
RDS Multi-AZ
SQL EC2
Auto Scaling group
Sync
MS SQL
RDS Endpoint DNS
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Amazon RDS for SQL Server 고가용성
Availability Zone ‘A’ Availability Zone ‘C’
Public subnet Public subnet
SQL EC2
RDS Multi-AZ
SQL EC2
Auto Scaling group
Sync
MS SQL
RDS Endpoint DNS
 Multi-AZ 아키텍처
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Microsoft SQL Server on EC2 고가용성 확보 방안
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
SQL Server on EC2 설치
 SQL Server on EC2 설치 방법
 방법.1 EC2 Windows Server Amazon Machine Image(AMI) 생성 후 SQL Server 수동 설치
 방법.2 EC2 SQL Server Amazon Machine Image(AMI) 생성 자동 설치
 주의사항 : 엔진 서비스 외 다른 기능도 설치 되어 있음 (SSAS)
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
SQL Server on EC2 고가용성
Corporate Data center
SQL Always On AG
Primary
Replica
Windows Cluster
Secondary
Replica
Secondary
Replica
Read/Write Read Only
API
Failover
Sync
ASync
 SQL Server on EC2 고가용성 기능
 Log Shipping : Secondary Server에 트랜잭션 로그 파일 복원 방식
 Database Mirroring : Mirror Server에 데이터베이스별 데이터 동기(비동기), Mirror Server DB 접속 불가
 Always On Failover Cluster Instances : 3rd-Party, Storage Spaces Direct(Windows) 구현 가능
 Always On Availability Groups : Secondary Replica에 데이터베이스 그룹별 데이터 동기(비동기), Read Only
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
SQL Server Always On AG on EC2 구성
 가용성 그룹 아키텍처 - 가용성 확보를 위한 2개의 가용영역(Multi-AZ)으로 구성
Availability Zone ‘A’ Availability Zone ‘C’
Private subnet
10.10.1.0/24
Private subnet
10.10.2.0/24
SQL Svr EC2
10.10.1.13 SQL Always On AG
SQL Svr EC2
10.10.2.13
Auto Scaling group
Active Directory Active Directory
Windows Cluster (10.10.1.12, 10.10.2.12)
AG Listener
10.10.1.15
10.10.2.15
AppApp
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
SQL Server Always On AG on EC2 구성
 구성 Point – IP 매핑
 Cluster CNO & SQL Listener VCO Virtual IP 매핑 단계
 각 복제본 EC2 옵션 - IP주소 관리에서 “새 IP 할당“ 으로 각각 Virtual IP를 추가
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
SQL Server Always On AG on EC2 구성
 구성 Point – Cluster vIP
 Default – Node Server IP 로 자동 할당
 Cluster Core Resources vIP Subnet 별 재 할당
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
SQL Server Always On AG on EC2 구성
 구성 Point – AG Listener(수신기) 등록
 SQL Server AG Listener DNS Name 과 각 Subnet별 vIP 등록
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
SQL Server Always On AG on EC2 구성
 구성 Point - Multi-Subnet 이슈
 DNS Server에 AGListener 호스트 DNS이름으로 2개 IP 생성
 이슈 : AGListener DNS 연결이 안되는 오류 발생 - MultiSubnetFailover 옵션 필요성
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
SQL Server Always On AG on EC2 구성
Driver / Option Multi-Subnet Failover Read-Only Routing
SQL Native Client 11.0 ODBC Yes Yes
SQL Native Client 11.0 OLEDB No Yes
ADO.NET with .NET Framework 4.0
with connectivity patch
Yes Yes
ADO.NET with .NET Framework 3.5 SP1
with connectivity patch
Yes Yes
Microsoft JDBC driver 4.0 for SQL Server Yes Yes
 구성 Point - Multi-Subnet 이슈 해결
 SQL Server Connection Provider 옵션 중 MultiSubnetFailover=True 파라미터 추가
 예시) Server=tcp:AGListener,1433;Database=AdventureWorks; MultiSubnetFailover=True;
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
SQL Server Always On AG on EC2 구성
 구성 Point – MultiSubnetFailover 옵션 최적화
 MultiSubnetFailover=TRUE and RegisterAllProvidersIP=1
 RegisterAllProvidersIP 설정 : 활성 IP 클라이언트 액세스 지점 등록 (0, 1)
 HostRecordTTL 설정 : 클러스터 DNS 레코드 캐시 시간 (기본값 : 1200초 / 권장 : 300초)
 옵션 설정 방법
 C:>Get-ClusterResource {가용성그룹_리스너리소스이름} | Get-ClusterParameter / Set-ClusterParameter
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
Microsoft SQL to AWS Migration 방법론
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
SQL Server to AWS Migration 방안
 방법. 1 전통적인 백업파일(*.bak, *.trn) 복원
Corporate Data center
Microsoft SQL Server
Database
Amazon S3 bucket
SQL Server on EC2
Amazon RDS for SQL*.bak, *.trn
bak , trn
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
SQL Server to AWS Migration 방안
Corporate Data center
Primary
Replica
Availability Zone ‘A’
SQL Always ON AG
Sync
Secondary
Replica
VPN
Secondary
ReplicaASync
Manual
Failover
 방법. 2 비 동기화 방식 다운 타임 최소화 이전
 AWS SQL Server AG Secondary Replica 추가
 서비스 전환 시점에 수동 장애조치 ( Primary Role 변경 )
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
SQL Server to AWS Migration 방안
간편한 사용
설치 없이 AWS Console 설정
최소한의 가동 중단
소스 DB 의 변경 데이터 복제
다양한 데이터베이스 지원
상용, 오픈소스 지원 및 이기종 이전
안정성 확보
자동 시작 및 중단 시점 재시작 가능
빠르고 쉬운 설정
몇 분 이내 모든 설정 구성 가능
저렴한 비용
인바운드 데이터 전송 요금 무료
 방법. 3 AWS Database Migration Service(DMS) 활용
 AWS Database Migration Service(DMS)란 ?
 데이터베이스 및 데이터웨어하우스를 AWS로 빠르고 안전하게 마이그레이션 또는 복제하는 서비스
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS Database Migration Service(DMS) 정의
 AWS DMS 아키텍처 (일반 구성)
Corporate Data center
Availability Zone ‘A’
Source SQL Server
VPN
AWS DMS
복제인스턴스
Target SQL Server
Target RDS for SQL
Direct
Connect
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS Database Migration Service(DMS) 정의
 AWS DMS 구성요소
원본 데이터베이스 DMS 복제 인스턴스 대상 인스턴스
 On-premise, EC2 SQL Server
- Enterprise, Standard, Workgroup
Developer 지원
 Amazon RDS SQL Server
- Enterprise, Standard 지원
 Express Edition 미 지원
 Microsoft Azure
 변경사항 캡쳐(CDC)
- Enterprise, Developer, Standard
 연결 사용자 계정 : sysadmin 권장
 Multi-AZ 배포(예비 복제본)
 인스턴스 타입
- T2 : 개발, 주기적 마이그레이션
- C4 : 대용량 DB 및 시간 최소화
 인스턴스 비용 발생
 DMS 복제 엔진 향상(2.4.x)
 다양한 네트워크 구성
- On-premise to VPC
- VPC to VPC 등
 On-premise, EC2 SQL Server
- Enterprise, Standard, Workgroup
Developer 지원
 Amazon RDS SQL Server
- Enterprise, Standard, Workgroup
Developer지원
 Express Edition 미 지원
 연결 사용자 계정
- 대상 Database db_owner 이상
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS Database Migration Service(DMS) 구성
 AWS DMS 구성 – 복제 인스턴스 생성
인스턴스 클래스
 T2, C4 타입 선택가능
 작업 용도에 따라 선택
VPC
 복제인스턴스 배치 생성
다중 AZ
 장애조치 대기 복제본 생성
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS Database Migration Service(DMS) 구성
 AWS DMS 구성 – 엔드포인트 생성
데이터베이스 이름
 시작 전 DB 수동 생성
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS Database Migration Service(DMS) 구성
 AWS DMS 구성 – 작업 생성
마이그레이션 유형
 복제 시점의 데이터 이관
 복제 시점 이후 변경 데이터
실시간 동기 복제
 Import(Bulk) 이후 변경
데이터 추가 복제
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS Database Migration Service(DMS) 구성
 AWS DMS 구성 – 작업 생성
대상 테이블 준비 모드
 대상에서 테이블 삭제
- 테이블이 존재할 경우 삭제
후 신규 생성 (주의 사항)
로깅 활성화
 진행 사항에 대한 상세
로그 확인 가능
 작업 실패 시 원인 분석
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS Database Migration Service(DMS) 구성
 AWS DMS 구성 – 작업 시작 및 완료
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS Database Migration Service(DMS) 구성
 AWS DMS 구성 – 동기화 데이터 확인
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS Database Migration Service(DMS) 구성
 AWS DMS 구성 – 마이그레이션 유형 옵션 : 지속적인 변경사항 복제
 실시간 복제를 구성 하기 위해서는 원본 SQL Server에 복제 및 CDC enable 구성 필요
 생성된 작업은 Background 로 실시간 변경사항 모니터링 진행 중 상태
 테스트 시나리오 : “FactProductInventory_temp” 테이블 신규 생성 후 데이터 INSERT 구문 실행
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS Database Migration Service(DMS) 관리
Click!
 AWS DMS 관리 – 로그 활성화 (선택 옵션, 권장)
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS Database Migration Service(DMS) 관리
 AWS DMS 관리 – 작업 모니터링
Click!
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
AWS Database Migration Service(DMS) 관리
 AWS DMS 관리 – 복제 인스턴스 모니터링
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
마치며 ..
 On-Premise to AWS SQL Server 이전 – Amazon DMS 활용
 RDS for SQL Server – 신속하게 구성/배포 가 필요할 땐
 SQL Server on EC2 – 다양한 기능 및 구성이 필요할 땐
 추가적인 질문이나 문의는 테크데이타 부스를 방문
© 2018, Amazon Web Services, Inc. or Its Affiliates. All rights reserved.
TechData Co., Ltd.입구
 TechData’s Promotion
 AWS 도입을 위한 PoC Credit 제공
 무중단 이전을 위한 마이그레이션 툴
라이선스 제공
 효율적인 운영을 위한 CLOUD ACT
P-Plan(컨설팅 서비스) 제공
 유지보수를 위한 CLOUD ACT M-
Plan(매니지먼트 서비스) 제공
 컨설팅을 신청한 고객분께 소정의
기념품 제공
감사합니다

아마존 웹 서비스 상에서 MS SQL 100% 활용하기::김석원::AWS Summit Seoul 2018

  • 1.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. TechData Co., Ltd 김석원 수석 Solution Architect Team manager 아마존 웹 서비스 상에서 MS SQL 100% 활용하기
  • 2.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Trusted IT Utilization Partner The Cloud Utilization Service Provided by
  • 3.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. AGENDA  1. Microsoft SQL Server on AWS의 장점  2. AWS RDS for Microsoft SQL Server 활용법  3. Microsoft SQL Server on EC2 고가용성 확보 방안  4. Microsoft SQL to AWS Migration 방법론
  • 4.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Microsoft SQL Server on AWS의 장점
  • 5.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. AWS 에서 SQL Server를 시작하는 이유 Database Backups SQL Software Patches SQL Software Installs OS Patches OS Installation Server Maintenance Rack and stack Power, HVAC, net Schema Design Query Optimization Query Construction Scaling High Availability Database Backups SQL Software Patches SQL Software Installs OS Patches OS Installation Server Maintenance Rack and stack Power, HVAC, net Schema Design Query Optimization Query Construction Scaling High Availability Database Backups SQL Software Patches SQL Software Installs OS Patches OS Installation Server Maintenance Rack and stack Power, HVAC, net Schema Design Query Optimization Query Construction Scaling High Availability Traditional DC SQL Server on EC2 RDS for SQL Server
  • 6.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. RDS 와 EC2에서 SQL Server 지원 범위 RDS for SQL Server SQL Server on EC2 지원 버전 : 지원 에디션 : 고 가용성 : 암호화 : 인증 방식 : DB 백업 : 관리 : 라이선스 : 2008R2, 2012, 2014, 2016, 2017 2005, 2008, 2008R2, 2012, 2014, 2016, 2017 Express, Web, Standard, Enterprise Multi-AZ (Mirroring) Always On AG, Clustering, Mirroring, Log shiping Encrypted Storage using AWS KMS (all editions); TDE Support(Enterprise only) Windows & SQL Server Authentication Managed automated backups Maintenance plans & 3rd party tools Automatic software patching Self-Managed(OS, SQL) License Included, Bring Your Own License(BYOL) * License Included, Bring Your Own License(BYOL) * 미 지원
  • 7.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. RDS 와 EC2에서 SQL Server 선택은 ? RDS for SQL Server  AWS에서 RDS 우선 고려  제한된 리소스에서 비즈니스 집중 필요  SQL 성능 튜닝 및 최적화 집중  쉽고 빠른 구성 / 확장 가능  편리한 스냅샷 / 자동 백업 제공  데이터베이스 운영 경험 불필요  단, 제약사항 확인 필수 SQL Server on EC2  DB 관리자가 모두 통제  sysadmin 역할 기능 구현  다양한 데이터베이스 인스턴스 요구  다양한 운영체제 필요  다양한 백업 방식 활용  다양한 이중화 방식 고려  단, OS, SQL 서비스에 대한 관리 필요 SQL on EC2 RDS for SQL 선택
  • 8.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. AWS RDS for Microsoft SQL Server 활용법
  • 9.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 제공 하는 기능  RDS DB 인스턴스 당 최대 30개 데이터베이스 생성 가능  모니터링 및 매트릭(CPU, 메모리, 스토리지 용량 등) 제공 – CloudWatch 무료 제공  CloudWatch 경보 알림 – 매트릭에 알람 설정 기능 제공  자동 소프트웨어 패치 – 패치여부 및 시기 설정 가능  스토리지 20GB 부터 최대 16TB 까지 프로비저닝  백업 자동화 – 보존기간 최대 35일까지, 최소 5분 데이터 복원 가능  인스턴스 스냅샷 – 언제든지 새로운 DB 인스턴스 복제 생성 가능  Multi-AZ를 통한 고 가용성 배포 – 자동 Failover 가능  SQL 백업 파일을 사용하여 복원 / 백업 기능  제약사항  SSIS, SSAS 설치 불가  유지관리계획 기능 / Database Mail 미 지원 (Amazon SES 서비스 권장)  sysadmin 권한제한으로 일부 기능 미 지원 (시스템 보안 안정성 확보)
  • 10.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 설치 및 구성  DB 인스턴스 시작
  • 11.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 설치 및 구성  표준 시간대(선택 사항)  한국 시간 기준의 DB 데이터 생성시 필수 선택 ( 변경 불가)  퍼블릭 액세스 가능성  VPC 외부에서 RDS SQL Server를 접속하여 관리할 때는 필수 [예]를 선택
  • 12.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 설치 및 구성  가용 영역  DB 접속을 하는 Application 서비스가 많이 배치된 가용 영역 선택 권장  DB 파라미터 그룹  sp_configure 옵션 UI 제공, RDS 인스턴스 생성 전 DB 파라미터 그룹 생성 권장  RDS 인스턴스마다 각각 그룹 생성 권장
  • 13.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 설치 및 구성  SSMS 접속 오류 발생  회사에서 SSMS(SQL Server Management Studio) Tool 로 접속 할 때 오류가 발생하면  VPC 옵션 : DNS 확인 & DNS 호스트이름 옵션 활성화  Internet Gateway 생성 후 VPC 연결
  • 14.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 유지관리  마스터 사용자 이름 권한 최소화  보안 최소 구성 (보안 강화 정책)  sysadmin 서버 역할 제약(설정 불가)
  • 15.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 유지관리  방법.1 RDS 콘솔 UI 제공  방법.2 T-SQL 로 확인  SQL Errorlog 확인 하는 방법
  • 16.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 유지관리  모니터링 및 매트릭 제공 – CloudWatch 무료제공
  • 17.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 유지관리  CloudWatch 경보 생성 - 알람 설정
  • 18.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved.  TempDB 최적화  SQL Server tempdb 경합이 자주 발생하면 SQL 성능 저하  파일크기, 최대크기, 파일증가 크기, 데이터파일 추가 등 튜닝 고려  DB 인스턴스 재 시작 필요 Amazon RDS for SQL Server 유지관리
  • 19.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 유지관리  스토리지 용량 관리  SQL 데이터 파일 증가 모니터링  RDS 스토리지 용량 부족시 서비스 중지 발생  Tempdb mdf, ldf 파일 증가 모니터링 및 축소(장애 요소)  DBCC shrinkfile 명령 지원 안함
  • 20.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved.  Native Backup / Restore 지원  백업/복원 사전 설정 구성  Step.1 S3 bucket to store your backup files  Step.2 IAM role to access the bucket  Step.3 The SQLSERVER_BACKUP_RESTORE option added to an option group on your DB instance. Amazon RDS for SQL Server 유지관리
  • 21.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 유지관리  Native Backup Database
  • 22.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 유지관리  Native Restore Database  주의! DB 인스턴스에 동일한 데이터베이스를 복원 시 오류
  • 23.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 유지관리  자동 백업 및 스냅샷  전체 DB 인스턴스 단위의 백업/복원 기능  자동 백업 주기 : 기본 30분 마다, 보존기간 7일 (최대 35일 설정 가능)  수동 백업 : 스냅샷 기능 제공  Production RDS 인스턴스 장애시 복원 활용  Non-Production RDS 인스턴스 생성 활용  Point-in-Time 복원 (5분이내)  RDS 인스턴스 삭제 전 최종 스냅샷 백업 여부 확인  리전 간의 스냅샷 복사 가능  AWS 계정간의 스냅샷 복사 가능  복원단계에서 SQL Server edition 변경 가능  주의 : 복원은 새로운 DB 인스턴스로 생성 가능
  • 24.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 유지관리  자동 백업 및 스냅샷 – Point-in-time 복구
  • 25.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 유지관리  스냅샷 만들기  대상 인스턴스 선택 후 스냅샷 만들기
  • 26.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 유지관리  스냅샷 복원  대상 스냅샷 선택 후 새로운 RDS 인스턴스로 생성  인스턴스 사양 변경 (인스턴스 타입, 스토리지 유형, 프로비저닝된 IOPS)
  • 27.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 고가용성  Multi-AZ 배포 구성  SQL Server 데이터베이스 미러링 기능 활용  실시간 동기식 데이터 복제 : 성능 저하 고려  자동 장애조치(failover)  데이터베이스 복구모델 : Full  보조 복제본의 가용영역은 자동 배포  로그인 사용자 및 권한 자동 복제. 단, SQL Server Job Agent 수동 생성  장애조치(Failover)로 역할 변경 후 동일한 Endpoint DNS 접속 가능  Multi-AZ 설정 배포
  • 28.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 고가용성  Multi-AZ 아키텍처 Availability Zone ‘A’ Availability Zone ‘C’ Public subnet Public subnet SQL EC2 RDS Multi-AZ SQL EC2 Auto Scaling group Sync MS SQL RDS Endpoint DNS
  • 29.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Amazon RDS for SQL Server 고가용성 Availability Zone ‘A’ Availability Zone ‘C’ Public subnet Public subnet SQL EC2 RDS Multi-AZ SQL EC2 Auto Scaling group Sync MS SQL RDS Endpoint DNS  Multi-AZ 아키텍처
  • 30.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Microsoft SQL Server on EC2 고가용성 확보 방안
  • 31.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. SQL Server on EC2 설치  SQL Server on EC2 설치 방법  방법.1 EC2 Windows Server Amazon Machine Image(AMI) 생성 후 SQL Server 수동 설치  방법.2 EC2 SQL Server Amazon Machine Image(AMI) 생성 자동 설치  주의사항 : 엔진 서비스 외 다른 기능도 설치 되어 있음 (SSAS)
  • 32.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. SQL Server on EC2 고가용성 Corporate Data center SQL Always On AG Primary Replica Windows Cluster Secondary Replica Secondary Replica Read/Write Read Only API Failover Sync ASync  SQL Server on EC2 고가용성 기능  Log Shipping : Secondary Server에 트랜잭션 로그 파일 복원 방식  Database Mirroring : Mirror Server에 데이터베이스별 데이터 동기(비동기), Mirror Server DB 접속 불가  Always On Failover Cluster Instances : 3rd-Party, Storage Spaces Direct(Windows) 구현 가능  Always On Availability Groups : Secondary Replica에 데이터베이스 그룹별 데이터 동기(비동기), Read Only
  • 33.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. SQL Server Always On AG on EC2 구성  가용성 그룹 아키텍처 - 가용성 확보를 위한 2개의 가용영역(Multi-AZ)으로 구성 Availability Zone ‘A’ Availability Zone ‘C’ Private subnet 10.10.1.0/24 Private subnet 10.10.2.0/24 SQL Svr EC2 10.10.1.13 SQL Always On AG SQL Svr EC2 10.10.2.13 Auto Scaling group Active Directory Active Directory Windows Cluster (10.10.1.12, 10.10.2.12) AG Listener 10.10.1.15 10.10.2.15 AppApp
  • 34.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. SQL Server Always On AG on EC2 구성  구성 Point – IP 매핑  Cluster CNO & SQL Listener VCO Virtual IP 매핑 단계  각 복제본 EC2 옵션 - IP주소 관리에서 “새 IP 할당“ 으로 각각 Virtual IP를 추가
  • 35.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. SQL Server Always On AG on EC2 구성  구성 Point – Cluster vIP  Default – Node Server IP 로 자동 할당  Cluster Core Resources vIP Subnet 별 재 할당
  • 36.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. SQL Server Always On AG on EC2 구성  구성 Point – AG Listener(수신기) 등록  SQL Server AG Listener DNS Name 과 각 Subnet별 vIP 등록
  • 37.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. SQL Server Always On AG on EC2 구성  구성 Point - Multi-Subnet 이슈  DNS Server에 AGListener 호스트 DNS이름으로 2개 IP 생성  이슈 : AGListener DNS 연결이 안되는 오류 발생 - MultiSubnetFailover 옵션 필요성
  • 38.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. SQL Server Always On AG on EC2 구성 Driver / Option Multi-Subnet Failover Read-Only Routing SQL Native Client 11.0 ODBC Yes Yes SQL Native Client 11.0 OLEDB No Yes ADO.NET with .NET Framework 4.0 with connectivity patch Yes Yes ADO.NET with .NET Framework 3.5 SP1 with connectivity patch Yes Yes Microsoft JDBC driver 4.0 for SQL Server Yes Yes  구성 Point - Multi-Subnet 이슈 해결  SQL Server Connection Provider 옵션 중 MultiSubnetFailover=True 파라미터 추가  예시) Server=tcp:AGListener,1433;Database=AdventureWorks; MultiSubnetFailover=True;
  • 39.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. SQL Server Always On AG on EC2 구성  구성 Point – MultiSubnetFailover 옵션 최적화  MultiSubnetFailover=TRUE and RegisterAllProvidersIP=1  RegisterAllProvidersIP 설정 : 활성 IP 클라이언트 액세스 지점 등록 (0, 1)  HostRecordTTL 설정 : 클러스터 DNS 레코드 캐시 시간 (기본값 : 1200초 / 권장 : 300초)  옵션 설정 방법  C:>Get-ClusterResource {가용성그룹_리스너리소스이름} | Get-ClusterParameter / Set-ClusterParameter
  • 40.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. Microsoft SQL to AWS Migration 방법론
  • 41.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. SQL Server to AWS Migration 방안  방법. 1 전통적인 백업파일(*.bak, *.trn) 복원 Corporate Data center Microsoft SQL Server Database Amazon S3 bucket SQL Server on EC2 Amazon RDS for SQL*.bak, *.trn bak , trn
  • 42.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. SQL Server to AWS Migration 방안 Corporate Data center Primary Replica Availability Zone ‘A’ SQL Always ON AG Sync Secondary Replica VPN Secondary ReplicaASync Manual Failover  방법. 2 비 동기화 방식 다운 타임 최소화 이전  AWS SQL Server AG Secondary Replica 추가  서비스 전환 시점에 수동 장애조치 ( Primary Role 변경 )
  • 43.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. SQL Server to AWS Migration 방안 간편한 사용 설치 없이 AWS Console 설정 최소한의 가동 중단 소스 DB 의 변경 데이터 복제 다양한 데이터베이스 지원 상용, 오픈소스 지원 및 이기종 이전 안정성 확보 자동 시작 및 중단 시점 재시작 가능 빠르고 쉬운 설정 몇 분 이내 모든 설정 구성 가능 저렴한 비용 인바운드 데이터 전송 요금 무료  방법. 3 AWS Database Migration Service(DMS) 활용  AWS Database Migration Service(DMS)란 ?  데이터베이스 및 데이터웨어하우스를 AWS로 빠르고 안전하게 마이그레이션 또는 복제하는 서비스
  • 44.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. AWS Database Migration Service(DMS) 정의  AWS DMS 아키텍처 (일반 구성) Corporate Data center Availability Zone ‘A’ Source SQL Server VPN AWS DMS 복제인스턴스 Target SQL Server Target RDS for SQL Direct Connect
  • 45.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. AWS Database Migration Service(DMS) 정의  AWS DMS 구성요소 원본 데이터베이스 DMS 복제 인스턴스 대상 인스턴스  On-premise, EC2 SQL Server - Enterprise, Standard, Workgroup Developer 지원  Amazon RDS SQL Server - Enterprise, Standard 지원  Express Edition 미 지원  Microsoft Azure  변경사항 캡쳐(CDC) - Enterprise, Developer, Standard  연결 사용자 계정 : sysadmin 권장  Multi-AZ 배포(예비 복제본)  인스턴스 타입 - T2 : 개발, 주기적 마이그레이션 - C4 : 대용량 DB 및 시간 최소화  인스턴스 비용 발생  DMS 복제 엔진 향상(2.4.x)  다양한 네트워크 구성 - On-premise to VPC - VPC to VPC 등  On-premise, EC2 SQL Server - Enterprise, Standard, Workgroup Developer 지원  Amazon RDS SQL Server - Enterprise, Standard, Workgroup Developer지원  Express Edition 미 지원  연결 사용자 계정 - 대상 Database db_owner 이상
  • 46.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. AWS Database Migration Service(DMS) 구성  AWS DMS 구성 – 복제 인스턴스 생성 인스턴스 클래스  T2, C4 타입 선택가능  작업 용도에 따라 선택 VPC  복제인스턴스 배치 생성 다중 AZ  장애조치 대기 복제본 생성
  • 47.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. AWS Database Migration Service(DMS) 구성  AWS DMS 구성 – 엔드포인트 생성 데이터베이스 이름  시작 전 DB 수동 생성
  • 48.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. AWS Database Migration Service(DMS) 구성  AWS DMS 구성 – 작업 생성 마이그레이션 유형  복제 시점의 데이터 이관  복제 시점 이후 변경 데이터 실시간 동기 복제  Import(Bulk) 이후 변경 데이터 추가 복제
  • 49.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. AWS Database Migration Service(DMS) 구성  AWS DMS 구성 – 작업 생성 대상 테이블 준비 모드  대상에서 테이블 삭제 - 테이블이 존재할 경우 삭제 후 신규 생성 (주의 사항) 로깅 활성화  진행 사항에 대한 상세 로그 확인 가능  작업 실패 시 원인 분석
  • 50.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. AWS Database Migration Service(DMS) 구성  AWS DMS 구성 – 작업 시작 및 완료
  • 51.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. AWS Database Migration Service(DMS) 구성  AWS DMS 구성 – 동기화 데이터 확인
  • 52.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. AWS Database Migration Service(DMS) 구성  AWS DMS 구성 – 마이그레이션 유형 옵션 : 지속적인 변경사항 복제  실시간 복제를 구성 하기 위해서는 원본 SQL Server에 복제 및 CDC enable 구성 필요  생성된 작업은 Background 로 실시간 변경사항 모니터링 진행 중 상태  테스트 시나리오 : “FactProductInventory_temp” 테이블 신규 생성 후 데이터 INSERT 구문 실행
  • 53.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. AWS Database Migration Service(DMS) 관리 Click!  AWS DMS 관리 – 로그 활성화 (선택 옵션, 권장)
  • 54.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. AWS Database Migration Service(DMS) 관리  AWS DMS 관리 – 작업 모니터링 Click!
  • 55.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. AWS Database Migration Service(DMS) 관리  AWS DMS 관리 – 복제 인스턴스 모니터링
  • 56.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. 마치며 ..  On-Premise to AWS SQL Server 이전 – Amazon DMS 활용  RDS for SQL Server – 신속하게 구성/배포 가 필요할 땐  SQL Server on EC2 – 다양한 기능 및 구성이 필요할 땐  추가적인 질문이나 문의는 테크데이타 부스를 방문
  • 57.
    © 2018, AmazonWeb Services, Inc. or Its Affiliates. All rights reserved. TechData Co., Ltd.입구  TechData’s Promotion  AWS 도입을 위한 PoC Credit 제공  무중단 이전을 위한 마이그레이션 툴 라이선스 제공  효율적인 운영을 위한 CLOUD ACT P-Plan(컨설팅 서비스) 제공  유지보수를 위한 CLOUD ACT M- Plan(매니지먼트 서비스) 제공  컨설팅을 신청한 고객분께 소정의 기념품 제공
  • 58.