2. IT Issue
Elastic
탄력적 용량제공
Availability Cost-Effective
높은 가용성 비용 효율화
AWS
3. IT Issue
여기서 잠깐!
AWS를 사용하면 무조건 싸다?
예) 최소 구성시 EC2(Large) 1대, RDS(Large) 1대
EC2 월 30만원, RDS 월 40만원
이중화 구성, MultiAZ 구성, 서버 증설 비용증가
예) 스트리밍 서비스
갑작스런 부하 증가, 서버 증설, 대용량 인코딩 필요
사용 후 즉시 반납 비용 효율화(사용한 만큼 지불)
4. KTH가 AWS 선택한 이유?
KTH Global Services
pudding.to , Friending
전 세계 사용자에 사진/동영상 제공
Global CDN 서비스 필요 CloudFront
전 세계 사용자가 사진/동영상을 업로드
업로드 지연 해결 필요 지역별 분산배치
5. AWS Overview
Global Infrastructure
R
R
R
R R
R
R 6개의 Regions – 지역 내 2개 이상의 가용존
20개의 Edge Locations – CloudFront, Route53
6. AWS Overview
데이터 Cloud Auto
제공/ CloudFront Watch Scaling
자동화
CDN Monitoring Automation
Elasti Simple Map
데이터 RDS Cache DB Reduce
처리
DataBase Clusters
기초 EC2 EBS S3
서비스 ELB Route 53
Compute Storage Networking
Global Infra Structure
7. AWS Overview
EC2
Elastic Compute Cloud
웹 콘솔을 통하여 가상의 컴퓨팅 환경을 생성 관리
다양한 OS(Amazon Linux, RedHat, SUSE, Windows)
다양한 타입 (CPU, Core, Memory, Disk)
기본 3개의 네트워크 자원 할당
내부 연결/별도 트래픽 비용 없음
단, EIP(고정 아이피)는 외부 연결임
8. AWS Overview
EBS S3
VS.
Block Storage Data Storage
– Simple Storage Service
Volume당 1GB~1TB 개별 Object : 1 Byte~5TB
- 다수사용 가능
EC2에 Attach / EC2 HTTP
instance Lifetime 의존 - GET,PUT, Delete 프로토콜
9. AWS Overview
ELB – Elastic Load Balancing
수천 대의 Instance 로 부하 균등 분산 또는 Health Check(5초)
를 통해 부하가 적은 쪽으로 부하 분배
특정 세션에 대해 강제로 하나의 인스턴스로 전달하는 Sticky
Session 가능
ELB는 고정 IP(EIP) 할당 안됨 (CNAME, Route 53 활용필요)
10. AWS Overview
Amazon Route 53
가장 가까운 DNS 서버를 찾아 높은 쿼리 응답 속도 제공
20개 Edge Locations 을 통해 서비스 제공
WRR (Weighted Round Robin) 지원
지원되는 Resource Record Type
- A, AAAA, CNAME, MX, NS, PTR, SOA, SPF, SRV, TXT, Alias
12. AWS 최적화 구성요소
Amazon Web Services
활용한 최적의 서비스 플랫폼 구축을 위한 구성요소
High-
Scalability Availability
Performance
확장성 고가용성 성능 최적화
Auto-Scaling Multi-AZ CloudFront
Scale-UP RDS HA ElastiCache
15. Scalability (확장성) – Scale-UP
Scale-UP : EC2
웹 콘솔상에서 옵션 제공되지 않음
Micro Scale-UP 방안
EBS에 SnapShot 생성
Extra-
Large EC2 신규 생성(타입 변경)
기존 EC2 정지
16. Scalability (확장성) – Scale-UP
Scale-UP : RDS
웹 콘솔상에서 옵션 변경으로 처리
변경되는 동안 DownTime 존재
Small xLarge
유지 보수 일정주기에 실행
- 즉시 실행이 필요하다면
Apply Immediately 옵션 체크
24. High Availability (고가용성)
Elastic Load Balancer
US-EAST-1a
AWS Security Groups
• ELB - 수 천대의
EC2를 로드밸런싱
• 트래픽 증가 및 동시
EC2 EC2 접속자 증가시
• EC2 서버 Scale 방안
MySQL DB
수동으로 증가시
켜야 함
Cloud Watch (Monitoring)
25. High Availability (고가용성)
Elastic Load Balancer
US-EAST-1a
AWS Security Groups • EC2 – Auto Scaling
• US-EAST-1a AZ 장애시
Auto Scaling Auto Scaling
• AZ 장애시 전체 서비스
MySQL DB
중단
Multi-AZ 구조 필요
Cloud Watch (Monitoring)
26. High Availability (고가용성)
Elastic Load Balancer
US-EAST-1a US-EAST-1b
AWS Security Groups AWS Security Groups
Auto Scaling Auto Scaling Auto Scaling Auto Scaling
MySQL DB MySQL DB
Cloud Watch (Monitoring) Cloud Watch (Monitoring)
DB서버 부하분산 안되어 있음. 심할 경우 2개 AZ 모두 중단될 가능성 있음
27. High Availability (고가용성)
Elastic Load Balancer
US-EAST-1a US-EAST-1b
AWS Security Groups AWS Security Groups
Auto Scaling Auto Scaling Auto Scaling Auto Scaling
Read Replica Read Replica
Master Slave
Cloud Watch (Monitoring) Cloud Watch (Monitoring)
29. Performance (성능 최적화)
CloudFront
CloudFront
Network
E
파일업로드
E E
E E
S3
E
원본파일
다운로드/스트리밍
원본파일 : S3 또는 특정서버
20개 Edge Locations / 사용자에 가장 가까운 위치
30. Performance (성능 최적화)
ElastiCache
Application
EC2 API Server Code
Database
RDS
Access Memcached 기반
Memcached
Client Library
DB부하 절감
Cache Cache
Node Node
미동부 만 지원
Memcached
Protocol
EC2 + Memcached
Cache Cache
Engine Engine (Redis) 구성
Cache Parameter
Group CloudWatch
Cache Cluster
31. kth 글로벌 서비스 on AWS
kth 글로벌 서비스(on AWS)
최적의 서비스 플랫폼 구축을 위한 구성요소
High-
Scalability Availability
Performance
확장성 고가용성 성능 최적화
Auto-Scaling Multi-AZ CloudFront
Scale-UP RDS HA ElastiCache
33. kth 글로벌 서비스 최적화 결과
www.mysite.com Route 53
media.mysite.com
Elastic Load Balancer
Auto Scaling Group Auto Scaling Group
CloudFront
EC2 EC2
ElastiCache ElastiCache
Read Replica Read Replica
S3
Master Slave
Availability Zone #1 Availability Zone #2
Availability Zone #n
35. TIP #1 – Upload Latency
Upload Latency
Main Server Group(US-East)
EC2
EC2
EC2 S3
EC2 RDS
S3 S3
EC2
EC2
EC2 S3
1 이미지업로드 EC2
S3 이미지업로드
Media Upload
Server Group
(Each-Region) 2 업로드 결과 전송
지역별 업로드 서버 분산 배치 업로드 결과는 메인 서버그룹
36. TIP #2 – 접근제어
접근 제어
Office/ 1 서비스 포트
Engineer
(80/443)
Internet
HTTP 1 TCP 2 2 개발자 접근
80/443 (SSH) (SSH)
3 개발서버 내
Web Server
접근(SSH)
Gateway
(EC2) Server (EC2)
App Server
4 WEB과WAS
(8080)
HTTP TCP
(EC2) 4 3 22(SSH)
8080
DB 5 TCP 5 WAS와 DB
Server
3306 Security (3306)
Group
37. TIP #3 – 파일 업로드 도구
파일 업로드 도구
Tsunami UDP
- UDP 기반의 Open Source File 전송 프로토콜
- 원거리 네트워크 사이에도 높은 전송속도 제공
상용도구
- Aspera : 빠른 속도를 보장하는 AWS를 위한 데이터 전송 상용
소프트웨어
FedEX
38. KTH + AWS
최적화 구성 TIP
Scalability Upload Latency
High Availability 접근제어
Performance 파일 업로드
운영 준비