aws 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - aws summit 2016

78
AWS 클라우드로 천만명 웹 서비스 확장하기 윤석찬% 5KG코리아 테크에반젤리스트 백승현% 디스패치 7HC

Upload: amazon-web-services-korea

Post on 15-Apr-2017

2.766 views

Category:

Technology


21 download

TRANSCRIPT

Page 1: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

AWS 클라우드로천만명 웹 서비스 확장하기

윤석찬% 5KG코리아 테크에반젤리스트백승현% 디스패치 7HC

Page 2: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

목차§ AWS 기본 지식 3가지§ 사용자 증가에 따른 클라우드 확장 방법

§ 스케일 업을 통한 수직적 확장§ 부하 분산 및 멀티 5M를통한 수평적 확장§ 높은 성능과 i용성을 위한 w급 아키텍처§ 오토 스케일링

§ 고객 사례: 디스패치§ 클라우드 네이티브 전략

§ 인프라 자동화 및 모니터링§ 새로운 흐름3 서버 없는(GRrbRrlRss# 아키텍처

§ 마무리

Page 3: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

멋진 클라우드 아키텍처를 위한AWS 기본 지식 3가지

Page 4: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

US-WEST (Oregon)

EU (Ireland)

ASIA PACIFIC (Tokyo)

US-WEST (N. California)

SOUTH AMERICA (Sao Paulo)

US-EAST (N. Virginia)

AWS GOVCLOUD (US)

ASIA PACIFIC (Sydney)

ASIA PACIFIC (Singapore)

CHINA (Beijing)

12 Regions33 Availability Zones55 Edge Locations

EU (Frankfurt)

ASIA PACIFIC (Seoul)

고가용성 글로벌 클라우드 인프라1

Page 5: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Availability Zone

Availability Zone

Edge Locations

Seoul Region

고가용성 글로벌 클라우드 인프라

AmazonRoute 53

Amazon CloudFront

User

1

Page 6: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

vCPU 32 GPU 4

g2.8xlarge= $2.6 per hour

(버지니아 기준)

x 50vCPU 1,600 GPU 200

g2.8xlarge x 50= $130 per hour

언제나 원하는 대로 사용한 만큼2

스팟인스턴스를 쓴다면?

= $13 per hour

Page 7: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

$aws ec2-run-instances ami-b232d0db--instance-count 50--instance-type g2.8xlarge--region us-east-1

$aws ec2-stop-instances i-10a64379 i-10a64280 ...

언제나 원하는 대로 사용한 만큼2

Page 8: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

AWS 클라우드의 다양하고 폭넓은 서비스고객 및 기술

지원

영업 지원

wp지원

프로페셔널컨설팅

교육 및인증

보안 및빌링시스템

파트너생태v

솔루션아키텍트

엔터프라이즈

i상테스크톱

기업용 공유도구

기업용이메일

백업 및복구

글로벌 리전(FRTVon#

i용 영역(5M#

콘텐츠 배포지점(9QTRs#

인프라

핵심 서비스

컴퓨팅JAs% 5ato&sPNlVnT% LoNQ 6NlNnPVnT% 7ontNVnRrs% 7loaQ SanPtVons

스토리지COWRPt% 6loPXs% :VlR% 5rPUVbNl% IZport(9dport

데이터베이스FRlNtVonNl% BoGEL% 7NPUVnT% AVTrNtVon

네트워킹JD7% 8L% 8BG

콘텐츠 배포(78B#

하이브리드환경

데이터 백업

통합 앱o발 환u

전용 회선연t

통합 인증

통합 리소스관리

네트워크통합

서비스접근 제어

사용자인증 관리

암호 키관리및 저장

모니터링로그

기업 자원설정 및보w

리소스 사용량및 l사

보안 및 규정 준수

기업 내규정 준수 웹 방화벽

비지니스 앱

비지니스인텔리전스 데이터베이스8RbCps

도구 네트워킹보안 스토리지

IoT

규칙 엔진

디바이스쉐도우

디바이스G8?

레지스트리

디바이스s이트웨이

o발 및 운영 도구모바일 서비스앱 서비스데이터 분석

데이터웨어하우스

HNQoop(GpNrX

실시k 데이터저장

머신 러닝

9lNstVP GRNrPU서비스

알람 및큐서비스

워크 플로우

풀텍스트r색

9ZNVl 전송

동영상 변환

원 클릭앱 o발

모바일 인증

기기 동기화

모바일 앱테스트

푸시 알림

8RbCps 리소스 관리

앱 라이프사이클관리 도구

콘테이너 서비스

클라우드 함수

리소스 템플릿

5DI GNtRcNe

실시k 데이터분석

비지니스인텔리전스

모바일 분석

모바일 허브

마켓 플레이스

3

Page 9: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

비지니스 요구 사항에 맞는0)여o 이상의 서비스 조립을 통해 유연한 활용 i능

AWS 클라우드의 다양하고 폭넓은 서비스

AWS 활용 = Building Block 조립

3

Page 10: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

이제 시작해볼까요?

첫날! 첫 사용자!

Page 11: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

1 userYou

Page 12: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

첫날! 첫 사용자 1명

Amazon Route 53• 도메인 네임 서비스• 글로벌 부하 분산• 5KG 7loaQ에 최적화

Amazon Elastic Compute Cloud • 하나의 인스턴스(i상 서버# 구성

• 웹 서버• 데이터베이스• 시스템 운영• 파일 저장h.

EC2 instance

Elastic IP

UserAmazonRoute 53

Page 13: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

서버 트래픽↗ “좀 더 성능 좋은 인스턴스!”

스케일업(Scale-Up)손 쉽s 인스턴스 타입을변u함으로서 서비스 확장 i능

다양한 인스턴스 타입• 7DI기반• 메모리 기반• I(C 기반• 스토리지 기반

2 vCPU 8 GiBMemory$0.12/hour

m4.largem4.xlarge

4 vCPU 16 GiBMemory$0.239/hour

m3.2xlarge

8 vCPU 32 GiBMemory$0.479/hour

서울 리전 기준 Uttp3((Ncs.NZNfon.PoZ(Xo(RP+(prVPVnT

Page 14: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

vert

ically

손쉬운 수직적 확장 가능

Page 15: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Users >10

Page 16: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

사용자 10+

문제점• Bo :NVlobRr• Bo FRQanQNnPe

“한 바구니에 계란을모두 담지 말자!” EC2

instance

Elastic IP

User

AmazonRoute 53

X

Page 17: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

사용자 10+

해법 I기능에 따라 인스턴스의역할을 나눈다!

• 웹 서버용 인스턴스• 86용 인스턴스 Web

InstanceDatabaseInstance

Elastic IP

UserAmazonRoute 53

Page 18: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

직접 운영 관리 서비스 선택

Amazon EC2직접 설치

원하는 데이터베이스를 선택하여 운영

라이센스(백업등 직접 운영

데이터베이스 선택 사항

Amazon RDS

AeGELAVProsoSt GEL

CrNPlRDostTrRGEL

MariaDBAmazon Aurora

라이센스(백업등선택적 제공

Amazon DynamoDB

GG8 스토리지기반BoGEL 서비스빠른 처리속도

중단없는 확장성 및관리 필요 없음

Amazon Redshift

대용량 병렬페타바이트급

데이터웨어 서비스

빠르w n력한확장성 제공

Page 19: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Amazon Aurora를 추천합니다!

ü AeGEL 호환 및 .배 성능 향상ü 자동 스토리지 확장ü 자동 장애 l지 및 복구ü 5ZNfon G,에 지속 증분 백업ü 1(1) 비용으로 상용 86 급 성능ü 서울 리전 사용 i능 (,월 ,1일#

Data Plane

LoTTVnT + GtorNTR

GELHrNnsNPtVons

7NPUVnT

5ZNfon G,

Page 20: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

RDB? NoSQL?

Page 21: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

> 한해에 5 TB 이상이신가요?

m작스럽s 데이터i 증i하시나요4

OK!BoGEL을 w려하세요.

Page 22: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Amazon DynamoDB도 추천합니다!

ü 손 쉬운 관리형 BoGEL 서비스ü 일관된 응답시k g 1)밀리초 미만ü 읽기 및 쓰기 용량 제어 i능ü 무제한 스토리지 제공ü 프로비저닝한 용량 만큼만 과금ü 서울 리전 사용 i능

Page 23: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Time

DB

Tabl

e Si

zeMS SQL

DB Table Size의증가

DB latency 증가

고객 사례: 모바일 게임 데이터베이스

Page 24: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Time

DB

Tabl

e Si

ze

DynamoDB Table Size

DynamoDB Latency

10ms Latency

Amazon DynamoDB

고객 사례: HIT에서 DynamoDB 적용

Page 25: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Users >100

Page 26: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

사용자 >100

Web instance

Elastic IP

RDS DB instance

UserAmazonRoute 53해법 II

기능에 따라 인스턴스의역할을 나눈다!

편리한 86 운영을 위해Amazon RDS 선택!

Page 27: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

사용자 >100

문제점만약 웹 서버에 문제i생긴다면4

• 장애 복구의 어려움• 증설의 어려움

Web instance

Elastic IP

RDS DB instance

X

UserAmazonRoute 53

Page 28: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Users >1,000

Page 29: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

사용자 > 1000+

Elastic Load Balancing 확장성 높은 부하 분산 서비스

Multi-AZ 서버 구성i용 영역을 통한 wi용성 확보

데이터베이스 이중화F8G의 마스터&스탠바이를 AaltV&5M에 구성

Web Instance

RDS DB InstanceActive (Multi-AZ)Availability Zone Availability Zone

Web Instance

RDS DB Instance Standby (Multi-AZ)

Elastic LoadBalancing

UserAmazonRoute 53

Page 30: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Users >10,000+

Page 31: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

사용자: 10,000 -100,0000+

RDS DB InstanceActive (Multi-AZ)

Availability Zone Availability Zone

RDS DB Instance Standby (Multi-AZ)

Elastic LoadBalancing

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

User

AmazonRoute 53

Page 32: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

horizontally

vert

ically

Page 33: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

높은 성능과 i용성을 위한고급 클라우드 아키텍처

Page 34: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Web Instance

RDS DB InstanceActive (Multi-AZ)

Availability Zone

Elastic LoadBalancing

1. 성능을 위한 로드 분산User

AmazonRoute 53웹 서버 및 데이터베이스의

로드 분산

왜 해야 하나?• 애플리케이션에 집중• i벼운 배포 i능• 비용 절l i능

무엇을?• 정적 및 동적 콘텐츠• 86에 부담되는 핫 아이템

Page 35: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Web Instance

RDS DB InstanceActive (Multi-AZ)

Availability Zone

Elastic LoadBalancing

방법 1

정적 콘텐츠 Amazon S3및 CloudFront로 이전

• 7GG(JG 파일 및 사용자업로드 이미지 등

• 무제한 저장소 및 콘텐츠배포 네트워크 활용 i능

1. 성능을 위한 로드 분산User

AmazonRoute 53

Amazon CloudFront

Amazon S3

Page 36: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Web Instance

RDS DB InstanceActive (Multi-AZ)

Availability Zone

Elastic LoadBalancer

Amazon S3

ElastiCache

DynamoDB

UserAmazonRoute 53

Amazon CloudFront

방법 2

Amazon ElasticCache 및DynomoDB 활용• 자주 사용하거나 업데이트i잦은 데이터는 BoGEL 서비스나인 메모리 기반 캐시 서비스(ARZPNPURQ% FRQVs# 활용

1. 성능을 위한 로드 분산

Page 37: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

방법 3

동적 콘텐츠에 대해서도Amazon CloudFront 활용

Web Instance

RDS DB InstanceActive (Multi-AZ)

Availability Zone

Elastic LoadBalancer

Amazon S3

ElastiCache

DynamoDB

UserAmazonRoute 53

Amazon CloudFront

1. 성능을 위한 로드 분산Respon

seTime

ServerLoad

Respon

seTime

Server

Load

Respon

seTime

Server

Load

NoCDN CDNforStaticContent

CDNforStatic&DynamicContent

Page 38: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

이제 i용성 높은 아키텍처를 위해오토 스케일링을적용해 봅시다!

Page 39: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

59 Small @ $0.08/hr= $4.72

2. 가용성을 위한 오토스케일링

ü 7DI 사용률 혹은 네트워크 트래픽에 따라 자동 스케일&인(아웃ü 수요 x선에 따라 인스턴스 사용 i능하므로 비용 절l i능

Page 40: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

59 Small @ $0.08/hr= $4.72

$ aws autoscaling create-auto-scaling-group --auto-scaling-group-name MyGroup--launch-configuration-name MyConfig--min-size 1--max-size 10--availability-zones ap-northeast-2a, ap-northeast-2b

2. 가용성을 위한 오토스케일링

Page 41: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

백승현 7HC

Page 42: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

디스 패치 소개

2011년 3월 서비스 시작페이스북 좋아요! 1,100,000 달성 (+)1/. ..#

연k 3억 페이지뷰일k 600,000 IJ

Page 43: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

왜 AWS를 사용하게 되었나요?

• 특종 기사i 올라왔을 때% 트래픽을 처리하기 어려움• 외주를 통한 기존 데이터센터 인프라 운영으로 비용 증i

AWS 클라우드, 이렇게 바뀌었습니다!

• 특종기사에도 끄떡없는 트래픽 대응력 제공• 개발 및 운영 내재화를 통한 비용 효율화

Page 44: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

What Happen

Page 45: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

What Happen

Page 46: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

What Happen

SCOOP(10x)ordinary

Page 47: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

9월 11월6 Time

EC2

inst

ance

s

[단독] “우리 지금 만나”…아 이유·장 기하 , 뮤지션커플의 탄생

[단독] 강용석, 홍콩스캔들 증거…그가답해야 할 의혹 5

70

50

10월8월

급작스런 트래픽 대응 사례

Page 48: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

AWS 클라우드 기반 디스패치 서비스 구조

Auto Scaling group

Availability Zone

www.dispatch.co.kr

security group

security group

root volume

data volume

image.dispatch.co.kr

Elastic Load Balancing Amazon S3

bucket

logs

Amazon EBS

snapshot

CloudFrontdistribution

EC2 instance

web appserver

Amazon Route 53

EC2 instance

web appserver

RDS RDSRDS

Page 49: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

세가지 클라우드 최적화 기법

Auto Scaling group

Availability Zone

security group

EC2 instance

web appserver

Apache

Nginx

웹서버경량화

1EC2 instance

web appserver

EC2 instance

web appserver

RDS RDSRDS

ElastiCache(WebServer)

ElastiCache(Database)

캐시도입

2

M4.large

T2.medium

R3.xlarge

M3.medium

인스턴스타입변경

3

Page 50: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

세가지 클라우드 최적화 기법

Auto Scaling group

Availability Zone

security group

EC2 instance

web appserver

Apache

Nginx

EC2 instance

web appserver

RDSMulti-AZ

ElastiCache(WebServer)

ElastiCache(Database)

M4.large

T2.medium

R3.xlarge

M3.medium

70% 비용 감소!

Page 51: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Cost Down

ORSorR NStRr

&.) ANn Post

developer

infra manager

Page 52: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Users >1,000,000

Page 53: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Availability Zone

Amazon S3

Availability Zone

Elastic LoadBalancing

DynamoDBRDS DB Instance

Read Replica

Web Instance

Web Instance

Web Instance

ElastiCache RDS DB Instance Read Replica

Web Instance

Web Instance

Web Instance

ElastiCacheRDS DB Instance Standby (Multi-AZ)

RDS DB InstanceActive (Multi-AZ)

UserAmazonRoute 53

Amazon CloudFront

사용자: 1,000,000+

Page 54: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

비지니스에만 집중하기 위한클라우드 네이티브 전략

Page 55: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

애플리케이션개발

앱 배포 관리

모니터링

캐싱

Web | DB | API

가상 서버

여러분이 필요한 것만 집중합시다!

AWS

Page 56: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

모니터링구축배포테스트빌드코딩

5KG 9lNstVP 6RNnstNlX

5KG CpsKorXs

5KG7loaQ:orZNtVon

5KG 7oQRDVpRlVnR

5KG 7oQR7oZZVt 5KG

7loaQKNtPU5KG

7oQR8Rploe

편리성

1. 인프라 및 서비스 앱 배포 자동화

Page 57: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Host Level Metrics Aggregate Level Metrics

2. AWS 자원 모니터링 및 로그 분석

5KG 7loaQKNtPU

5ZNfon 9lNstVPsRNrPUGRrbVPR

Page 58: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016
Page 59: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

3. 서비스 재활용

Don’t reinvent the Wheel:ü 텍스트 r색 구현ü 메시지 큐 서비스 구현ü 대량 이메일 전송ü 워크플로 기반 구현ü 동영상 인코딩

5KG의 다양한 애플리케이션 서비스를 이용하여 o발 비용 l소!

Amazon CloudSearch

Amazon Elastic Transcoder

Amazon SESAmazon SQS

Amazon SWF

Page 60: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

3. 서비스 재활용

모바일도 또 만들지 말자:ü 소셜 로그인 및 모바일 인증ü 모바일 앱 데이터 분석ü 푸시 노티피케이션ü 모바일 앱 테스트ü 빠른 모바일 앱 o발ü IoH 기기k 통신 및 5KG 연동

5KG의 다양한 애플리케이션 서비스를 이용하여 o발 비용 l소!

AmazonCognito

Amazon Mobile Analytics

AmazonSNS

AWSDevice Farm

AWSMobile Hub

AWS IoT

Page 61: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Users >5,000,000

Page 62: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

RDS DB InstanceActive (Multi-AZ)

Availability Zone

Elastic LoadBalancer

RDS DB Instance Read

Replica

RDS DB Instance Read

Replica

Web Instance

Web Instance

Web Instance

Web Instance

Amazon S3

DynamoDB

Amazon SQS

ElastiCache

WorkerInstance

WorkerInstance

Amazon CloudWatch

Internal AppInstance

Internal AppInstance

Amazon SES

UserAmazonRoute 53

Amazon CloudFront

사용자: 500만+

Page 63: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

AoOVlR 7lVRnt

FoatR .,

7loaQ:ront

5ZNfon G,GtNtVP 7ontRnts

! LoTs7loaQKNtPU

9lNstVP LoNQ6NlNnPVnT

F8G (AaltV&5M#

9lNstV7NPUR

9lNstV7NPUR

5DI GRrbRrs

5DI GRrbRrs

KorXRrs! AE

KorXRrs! AE sRrbRrs

5KG HoXeo rRTVon

5bNVlNOVlVteMonR #1

5bNVlNOVlVte MonR #+

5nsVOlR

CrVTVn&5PPRssIQRntVte

GVTnRQ&IFL

8enNZo86

F8G 86

고객 사례: 비트앱

FRQsUVSt

Page 64: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Dr. Werner Vogels, Amazon.com CTOre:Invent 2015 Keynote

Page 65: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

10%

15%

7%

12%

20%

9%

1. 콘테이너를 통한 EC2 인스턴스 효율화

App 1 App 2

App 3 App 4

App 5 App 6

612 34

5

Amazon EC2 Container Service

Page 66: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

2. AWS Lambda를 통한 서버없는 아키텍처

② Amazon S3 파일 업로드③ AWS Lambda코드실행

①큰 이미지업로드 ④압축및 크기변경

⑤저장

Page 67: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Weeks

3. 클라우드 컴퓨팅 기술의 변화

Minutes

Amazon EC2

Seconds

Amazon EC2 ContainersServices

Milliseconds

AWS LambdaOn-Premises

Page 68: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

4. 마이크로서비스(Microservice)

• 내부 서비스를 작s 분리하여느슨하s 연t

• 작은 서비스k 인터랙션t합제거 (QRPoaplVnT# 후%5DI로 통신

• 클라우드 기반으로 확장성 및증설을 염두하여 기능 o발

Page 69: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

AWS 기반 마이크로 서비스 빌딩 블럭

이벤트를 기반한코딩 함수 실행

서비스k 5DI 인증(캐싱 용이

콘테이너를 통한빠른 앱 배포

Page 70: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016
Page 71: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016
Page 72: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016
Page 73: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Users >10,000,000

Page 74: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

천만 사용자를 위한 십계명

1. AaltV&5M 아키텍처로 wi용성 확보+. 부하 분산을 통해 성능 극대화,. 아키텍처 전 영역에서 증설 l안-. 내외부의 캐시를 적극 활용.. 오토스케일링 사용% 두번 사용!

Page 75: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

천만 사용자를 위한 십계명

.. 8RbCps를 통해 운영을 자동화/. 한 z에서 모니터링(통v(분석0. 직접 만들지 말w 5KG 서비스 활용1. 애플리케이션 성능 튜닝 필요2. 마이크로 서비스로 전환10.클라우드 네이티브- 돈과 시간 절약

Page 76: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

What’s Next?

http://bit.ly/awskr-webinar

AWS 온라인 세미나

https://www.qwiklab.com/lab_catalogue

무료 온라인 실습 하기EC2/ELB/RDS/S3/CloudFront/AutoScaling/Beanstalk

Page 77: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

What’s Next?

“아마존 웹 서비스” 검색 후

“AWSKRUG” 검색 후한국 사용자모임 커뮤니티 가입

Page 78: AWS 클라우드로 천만명 웹 서비스 확장하기 - 윤석찬 백승현 - AWS Summit 2016

Thank you!u청해 주셔서 l사합니다!