amazon rds 서비스 활용하기 - 신규 기능 중심으로 (윤석찬) :: aws 월간 웨비나
TRANSCRIPT
Amazon RDS 서비스 활용하기 - 신규 기능 중심으로
윤석찬, AWS KOREA Tech Evangelist http://twitter.com/channyun http://facebook.com/channyblog http://channy.creation.net
직접 운영 AWS 데이베이스 서비스
Amazon EC2 직접 설치
원하는 데이터 베이스를 선택
하여 운영
라이센스/백업 등 직접 운영
Amazon DynamoDB
고확장성
NoSQL 서비스 손쉬운 관리 및 저렴한 비용
중단없는 확장성 및
관리 필요 없음
Amazon RDS
MySQL Microsoft SQL Oracle
PostgreSQL Aurora
MariaDB 매니지드서비스
라이센스/백업등 선택적 활용 가능
Amazon Redshift
대용량 병렬 페타바이트급 데이터웨어 서비스
빠르고 강력한 확장성 제공
클라우드 데이터베이스 선택 사항
AWS 데이터베이스 서비스 지표
• AWS Database Service는 연간 10억 달러 규모의 비지니스
• Database Service 사용량은 2015년 2분기와 2014년 2분기를 비교해볼 때, 전년동기 대비 127% 증가
• Amazon Aurora는 AWS 역사상 가장 빠른 성장세를 보이고 있는 서비스로서 10만 이상의 고객이 Amazon RDS를 이용
• 쉽고 빠른 구성 및 반복 적인 관리작업을 대신 수행
• 현재 고객이 사용하는 다양한 데이터베이스 옵션 제공
• 다양한 인스턴스 및 스토리지 • 쉽고 빠른 확장 및 손쉬운 고가
용성(HA) 구성 • 높은 비용 효율성
Amazon RDS: 관리형 클라우드DB 서비스
App optimization Scaling
High availability Database backups DB s/
w patches DB s/w installs OS
patches OS installation
Server maintenance Rack & stack Power, HVAC, net
App optimization Scaling
High availability Database backups DB s/
w patches DB s/w installs OS
patches OS installation
Server maintenance Rack & stack Power, HVAC, net
Scaling High availability
Database backups DB s/w patches
DB s/w installs OS patches
OS installation Server maintenance Rack & stack Power, HVAC, net
App optimization
기존 데이터 센터 Amazon EC2 Amazon RDS
직접 수행해야 하는 작업 AWS가 제공하는 관리 기능
RDB 직접 운영 및 구축하는 경우와 비교
1. 쉽고 빠르게 구성 가능
• 단 몇 분만에 서비스에 필요한 원하는 종류의 데이터베이스 구성 (최대 40개 인스턴스)
• 상면,서버, 네트워크, OS설치 및 DB 설치 등의 모든 작업이 불필요
• BYOL(Bring your own license) 모델 지원 (Oracle/MSSQL 10개 인스턴스)
참고. 유연한 인스턴스 및 스토리지 확장
• 다양한 CPU/메모리 옵션 제공 • 트래픽에 따른 증설/감소 가능 • DB 스토리지는 필요에 따라 유연하게 확장 가능 § General Purpose (SSD):
대부분 워크로드 § Provisioned IOPS (SSD):
최대 30,000 IOPS 까지 § Magnetic:
접속이 빈번하지 않은 작은 워크로드
2. 손쉬운 백업 및 복구 • 자동 백업 설정: 특정 시점으로 손쉽게 복구
ü 자동백업
ü 스냅샷
• 자동화 패치관리
§ 기본 설정옵션
§ 특정 시점으로 데이터베이스 복구 가능
§ 최대 35일까지 보관기간 선택
§ 필요시 스냅샷으로부터 DB 생성 가능
§ 사용자가 지우기 전까지 보관 § Amazon S3에 저장
3. Amazon CloudWatch 를 통한 모니터링 CloudWatch RDS Metrics CPU utilization Storage Memory Swap usage DB connections I/O (read and write ) Latency (read and write ) Throughput (read and write ) Replica lag Many more
CloudWatch Alarms Similar to on-premise custom monitoring tools
Demo
4. Multi-AZ 구성 고가용성 확보
• Availability Zone(AZ)은 상호간에 물리적으로 분리된 독립 인프라를 제공
• 복수 AZ 사용으로, Region내 AZ간 데이터베이스 동기화(Synchronous)구성 가능
• 주요 장애상황 발생시 자동으로 데이터베이스 Failover 수행
Web Instance
RDS DB Instance Active (Multi-AZ) Availability Zone Availability Zone
Web Instance
RDS DB Instance Standby (Multi-AZ)
Elastic Load Balancer
Amazon Route 53
User Region
참고.Mul&-AZ사용 고객 확대
26%
40%
25%
30%
35%
40%
45%
Oct-12 Jan-13 Apr-13 Jul-13 Oct-13 Jan-14 Apr-14 Jul-14 Oct-14
Mul$-AZ instances as a share of all RDS instances
5. 리플리케이션으로 가용성 확보 • 읽기 트래픽을 자동으로 관리
되는 Read Replica 로 분산
• 복수의 Read Replica를 사용하여 워크로드 분산 처리
• 리전간 스냅샷 복사 기능 추가 • 빠른 장애 복구에 도움 • 리전간 데이터 이전에 도움
RDS DB Instance Active (Multi-AZ)
Availability Zone Availability Zone
RDS DB Instance Standby (Multi-AZ)
Elastic Load Balancer
RDS DB Instance Read Replica
RDS DB Instance Read Replica
RDS DB Instance Read Replica
RDS DB Instance Read Replica
Web Instance
Web Instance
Web Instance
Web Instance
Web Instance
Web Instance
Web Instance
Web Instance
Amazon Route 53
User
참고. 리플리케이션을 통한 확장 구조
• 온디멘드: 사용한 만큼만 지불; 최소 사용비용 없음
Monthly bill GB +
= 720 hrs * $0.37 + 100 GB * $0.115 = $277.90
= db.m3.xlarge; MySQL; Oregon;
Single- AZ; On- Demand 100 GB General Purpose (SSD)
4 vCPUs; 15 GiB RAM
6. 다양하고 저렴한 구매 및 서비스 옵션
• 예약 인스턴스: 1년 또는 3년 계약으로 30~70%까지 저렴 Cumulative spend
Month 1 Month 2 Month 3 Month 4 Month 5 Month 6 Month 7 Month 8 Month 9 Month 10 Month 11 Month 12
On-demand 277.90 555.80 883.70 1,111.60 1,389.50 1,667.40 1,945.30 2,223.20 2,501.10 2,779.00 3,056.90 3,334.80
Heavy RI 1-yr 991.10 1096.20 1,201.30 1,306.40 1,411.50 1,516.60 1,621.70 1,726.80 1,831.90 1,937.00 2,042.10 2,147.20
참고. 저렴한 버스팅 모델 선택
• GP2—SSD 기반 Amazon EBS 스토리지 • 3 IOPS per GB 성능 • 사용량 기반 크레딧 충전 모델 • Burst to 3000+ IOPS
• T2—Amazon EC2 버스팅 모델
• 기반 성능 + burst • 시간 단위 크레딧 충전 후 사용 • 24시간 크레딧 모음 가능 • 크레딧 및 사용량을 모니터링 가능
Burst mode—GP2 and T2
Burst 모드 vs. 표준 vs. Provisioned IOPS
0
1000
2000
3000
4000
5000
6000
7000
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
Tran
sac&on
sperSecon
d(TPS)
Hours
100%read—20GBdata
db.m1.medium+200GBstandard
$0.575perhour
Burst 모드 vs. 표준 vs. Provisioned IOPS
0
1000
2000
3000
4000
5000
6000
7000
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
Tran
sac&on
sperSecon
d(TPS)
Hours
100%read—20GBdata
db.m1.medium+200GBstandard
db.m3.medium+200G+2000IOPS
$0.575perhour
$0.408perhour
Burst 모드 vs. 표준 vs. Provisioned IOPS
0
1000
2000
3000
4000
5000
6000
7000
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
Tran
sac&on
sperSecon
d(TPS)
Hours
100%read—20GBdata
db.m1.medium+200GBstandard
db.m3.medium+200G+2000IOPS
db.m3.large+200G+2000IOPS
$0.575perhour
$0.408perhour
$0.508perhour
Burst mode vs. Standard vs. Provisioned IOPS
0
1000
2000
3000
4000
5000
6000
7000
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
Tran
sac&on
sperSecon
d(TPS)
Hours
100%read—20GBdata
db.m1.medium+200GBstandard
db.m3.medium+200G+2000IOPS
db.m3.large+200G+2000IOPS
db.t2.medium+200GBgp2
$0.105perhour
$0.575perhour
$0.408perhour
$0.508perhour
Burst 모드 vs. 표준 vs. Provisioned IOPS
0
1000
2000
3000
4000
5000
6000
7000
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
Tran
sac&on
sperSecon
d(TPS)
Hours
100%read—20GBdata
db.m1.medium+200GBstandard
db.m3.medium+200G+2000IOPS
db.m3.large+200G+2000IOPS
db.t2.medium+200GBgp2
db.t2.medium+1TBgp2
$0.105perhour
$0.575perhour
$0.233perhour
$0.408perhour
$0.508perhour
참고. RDS 무료 사용 (Free tier)
• AWS는 무료 사용 (Free Tier) 제공 • http://aws.amazon.com/ko/free/
• RDS 에서 무료 적용 조건 ü MySQL, Oracle (BYOL), SQL Server Express, PostgreSQLü Single-AZ db.t1.micro 750시간/월 ü Magnetic / GP2 스토리지 20GB (스냅샷 20GB포함)ü 1,000만 I/Oü https://aws.amazon.com/ko/rds/free/
7. 수준 높은 보안 레벨 제공 • 다양한 보안 인증 획득: Amazon RDS는 개별 DB인스턴스별 IP 방화벽 제공(Security Group)
• Amazon VPC를 통해 독립적인 네트워크 구축 및 고객의 기존 DC와 Hybrid 연동가능
• AWS IAM (Identity and Access Management) 을 통해 자원/역할 레벨의 접근제어
AWShasachievedmajorcompliances
참고. RDS 암호화(Encryption) 옵션 • 모든 RDS 옵션에 대한 One-Click 암호화 기능 제공[백업/스냅샷/RR] • KMS를 통해 사용자가 생성하고 관리하는 키(Key) 사용
• 주의 사항 ü RDS DB 생성시에 암호화 여부 결정: 암호화 Enable이후에는 Disable 할 수 없음 ü 암호화된 DB 인스턴스 에서만 암호화 Read Replica 생성 ü 암호화 되지 않은 백업 및 스냅샷을 암호화된 DB 인스턴스로 복구 불가
최소 다운 타임으로 데이터 베이스 마이그레이션 하기
§ 기본방식 dump and restore :간단하지만 서비스 다운타임 발생
RDS로의 데이터 마이그레이션
RDS for MySQL
RDS for MySQL
RDS for Oracle RDS for SQL Server RDS for PostgreSQL
내보내기 mysqldump Data Pump Generate/ Publish scripts
pgdump
가져오기
mysqlimport
SQL Loader
Bulk Copy (bcp)
\copy
• 고급 방식: 델타 값 적용(변경 분 추가) • 마이그레이션 타겟으로 DB트랜잭션 전송 및 적용
RDS for MySQL RDS for Oracle RDS for SQL Server
RDS for PostgreSQL
mysqlbinlog
Mview replication
Linked servers
Use row metadata to capture modified rows
Tungsten Replicator
Golden Gate, Dbvisit, Attunity, Dell
SharePlex
SSIS (SQL Server
Integration Service)
• 동종 혹은 다른 DB 엔진으로 데이터 이동 • 이전 동안 앱은 그대로 유지 • 10분이내에 마이그레이션 • EC2 또는 RDS 간의 데이터 리플리케이션
AWS Database Migration Service
hNps://aws.amazon.com/ko/dms/
• Oracle 및 SQL Server 데이터 이전
• 테이블, 뷰, 프로시져 및 DML을 MySQL, MariaDB 및 Aurora로 이전
AWS Schema Conversion Tool
Why choose Amazon RDS?
스키마디자인
쿼리구성 쿼리 최적화
고가용성 백업 및 복구 보안 및 암호화 업체 표준 규정 준수 고 확장성 자동 패치 모니터링 유지보수
AmazonRDS는 여러분이 DB관리 작업에 시간을 쓰는 것을 줄여주고, 비지니스에만 집중할 수 있게 도와 드립니다
You
RDS
참고 자료
• Amazon RDS • http://aws.amazon.com/ko/rds
• Amazon RDS 문서 • http://aws.amazon.com/ko/documentation/rds/
• Amazon RDS 관련 자료 • http://aws.amazon.com/articles/Amazon-RDS
• 블로그 • http://aws.amazon.com/ko/blogs/korea/category/amazon-
rds
hNp://onoffmix.com/event/55782/
여러분의 피드백을 기다립니다!
• 웨비나 이전 발표자료 및 동영상 • https://aws.amazon.com/ko/blogs/korea/category/webinar/
• 한국어 공식 소셜 미디어 @AWSKorea
AmazonWebServices.ko
AWSKorea
AWSKorea