2. 22
1976년 오사카에서 태어나 도쿄 대학교 기계정보공학과를
졸업하고 미국 카네기 멜론 대학교 MBA와 MSE(소프트웨
어공학 석사) 과정을 마쳤습니다. AWS의 가능성에 매료된
그는 2010년 AWS의 일본 시장 진출 당시부터 함께해 현
재는 AWS 일본 팀의 아키텍트 부문을 총괄하고 있습니다.
Ken Tamagawa
Head of Solutions Architects,
Professional Services and Training
Amazon Data Services Japan
15. AWS의 API
• AWS서비스별로 REST형식의 API를 제공
• 명령어/SDK/IDE
Java Python PHP .NET Ruby nodeJS
iOS Android AWS Toolkit
for Visual
Studio
AWS
Toolkit for
Eclipse
Tools for
Windows
PowerShell
Command Line Tools/
CLI (CL Interfaces)
16. AWS のグローバルなインフラ
AWS의 서비스
고객의 애플리케이션
라이브러리 & SDKs
Java, PHP, .NET,
Python, Ruby
Web 인터페이스
Management Console
IDE 플러그인
Eclipse
Visual Studio
배포와 자동화
AWS Elastic Beanstalk
AWS CloudFormation
인증 & 청구
AWS IAM
Identity Federation
Consolidated Billing
모니터링
Amazon CloudWatch
스케일링
Auto Scale
네트워크 & 라우팅
Amazon VPC
Amazon Elastic LB
Amazon Route 53
AWS Direct Connect
콘텐츠 배포
Amazon
CloudFront
메세징
Amazon SNS
Amazon SQS
분산처리
Elastic
MapReduce
메일
Amazon SES
컴퓨터 처리
Amazon EC2
스토리지
Amazon S3 / Glacier
Amazon EBS
Amazon Storage Gateway
데이터베이스
Amazon RDS
Amazon RedShift
Amazon DynamoDB
Amazon Elasticache
17. Amazon S3는、데이터 보관의 기반
동경지역
3곳 이상으로
자동 복제
S3
버킷
높은 내구성으로 데이
터 손실이 없다 :
99.999999999%
전 세계에 8개의 지점에서 선택
데이터센터A
데이터를 저장만하면,
인프라, 전원을 의식
하지 않아도 됨.
용량 무제한
데이터센터B
데이터센터C
파일 (바이너리, 텍스트,
이미지, 동영상)
저장하는 데이터는 자
동 암호화도 가능
저렴한 종량과금
예:1GB/월 – 약10엔
18. 5000만 사용자를 가진 파일 공유 서비스
Amazon S3 상에서 구축
S3는, 99.999999999%의 내구성
26. Cloud First in Japan
DB Direct
Connect
APP
APP
Web
APP
APP
APP
APP
APP
⼈人事・給与 SFA/WF 会計 BI
DB DB DB DB
Cloud
Intranet
New Application in Cloud/
Move existing systems later
30. AWS 사용에 대해, 이런 말들을 흔히 한다.
v 「만약 장애가 나도, EIP를 교체하면 되지. EBS를
스왑하여 순식간에 복구하는 것은 정말 편하지 않
아? 」
v 「EC2 앞에 ELB를 놓고, Multi-‐‑‒AZ로 분산하자. 최
악의 경우 Multi-‐‑‒Region하여 LBR하면?」
v 「EC2에 NFS를 구축하여, 이퍼머럴 디스크에 rsync
하면 동기화도 편하죠? 」
37. Server Swapping 패턴 적용 후
가상
서버
가상
서버
서버 장애
서버
이미지
서버 가동
가상 디스크
데이터
가상 디스크
데이터
38. 예: Job Observer 패턴
4. 가상 서버를
추가
가상 서버군
2. 큐에 메시지를 쌓는다.
3. 임계치 확인
큐
메시지를 Get하여
처리
메시지를 PUT
시스템 감시
서비스
가상 서버군
가상 서버
39. CDP 카테고리
기본 패턴
Snapshot
Stamp
Scale
Up
Ondemand
Disk
가용성 향상 패턴
Mul>-‐Server
Mul>-‐Datacenter
Floa>ng
IP
Deep
Health
Check
동적 콘텐츠 처리
Scale
Out
Clone
Server
NFS
Sharding
NFS
Replica
State
Sharing
URL
Rewri>ng
Rewrite
Proxy
Cache
Proxy
Scheduled
Scale
Out
정적 콘텐츠 처리
Web
Storage
Direct
Hos>ng
Private
Distribu>on
Cache
Distribu>on
Rename
Distribu>on
클라우드로의 데이터 업데이트
Write
Proxy
Storage
Index
Direct
Object
Upload
관계 데이터 베이스
DB
Replica>on
Read
Replica
Inmemory
DB
Cache
Sharding
Write
배치 처리
Queuing
Chain
Priority
Queue
Job
Observer
Scheduled
Autoscaling
운용,
보수
Bootstrap
Cloud
DI
Stack
Deployment
Server
Swapping
Monitoring
Integra>on
Web
Storage
Archive
Hybrid
Backup
네트워킹
OnDemand
NAT
Backnet
Func>onal
Firewall
Opera>onal
Firewall
Mul>
Load
Balancer
WAF
Proxy
CloudHub
40. 패턴의 설명
각 패턴을 아래와 같은 내용으로 정리
v 해결하고 싶은 문제
v 해결 방법
v 구현 방법
v 구성 및 구성도
v 이점
v 주의점
47. Tokyo
Sapporo
Fukuoka
Sendai
Nagoya
클라우드 여성 모임
Osaka
Kanazawa
Kyoto
Yamaguchi
Saga
Japan AWS User Group
-> JAWS
Miyazaki
Kagoshima
Okinawa
Kumamoto
전국 40 곳 이상의
사용자 그룹
48. 패턴을 활용한 구축 시나리오
v 이미지, 동영상 제공 사이트
v 많은 사용자에게 제공 하고 싶을 때
v E 커머스 사이트
v 가용성, 장애에 강한 시스템을 구축하고 싶을 때
v 이벤트 사이트
v 단발적인 액세스 증가에도 장애 없이 사이트를 운용하
고 싶을 때
v 그 외에도 다수…
68. Floating IP 패턴 적용 후
EC2
Test
環境
④EIP를 교체
EC2
本番
環境
EIP
Amazon
Route 53 ec.clouddesignpattern.org
EC2 AMI
①AMI를
생성
②테스트 환경의 EC2 인
스턴스를 가동
③소프트웨어를 업데이트하고 테
스트를 진행
EIP「46.51.xxx.xxx」
96. URL Rewriting 패턴
v S3에 정적 콘텐츠를 분산
v mod_̲ext_̲filter로 콘텐츠 내부의 URL을 동적
으로 변환
S3cmd로 동기
mod_ext_filter로 HTML
내부의
정적 콘텐츠의 URL을 S3의 URL로
변환
97. 그 외의 구현 시나리오
v 이미지, 동영상 제공 사이트
v 많은 사용자에게 제공 하고 싶을 때
v E 커머스 사이트
v 가용성, 장애에 강한 시스템을 구축하고 싶을 때
v 이벤트 사이트
v 단발적인 액세스 증가에도 장애 없이 사이트를 운용하고 싶을
때
v 그 외에도 다수
v 로그 분석 시나리오
v 감시 시나리오
...
101. Self Healing 패턴
• 인스턴스를 가동 후, 인스턴스 자신이 데이터 영
역을 마운트
• Cloud DI 패턴을 같이 사용
• 구현
• AutoScaling을min 1,max 1로 설
정
• Fail후에AMI에서 가동한 인스턴스에
서、EBS등을 마운트
• 상태 체크는 감시 서비스나 ELB도 이
용 가능
자신이
마운트
102. Synchronized Disk 패턴
• 공유 디스크를 사용한 Fail Over를 구현하고
싶다.
• 구현
• EC2를 여러 대 가동하고, 각각에 데이터 영
역용 EBS를 마운트한다.
• 데이터 소프트웨어를 도입하고, 데이터를 동
기화 한다.
• DRBD
• CLUSTERPRO
• DataKeeper 등
103. Ondemand Disk 패턴
• 디스크 스트라이핑을 포함하
여, EBS 최적화 인스턴스나,
Provisioned IOPS를 이용
• 높은 디스크 IO성능이나, 안정적인 IO가 필요
104. High Availability NAT 패턴
• SPOF가 되는 NAT서버를 이중화 하고 싶다.
• 구현
• NAT서버를 2대 가동하고, source/
dest체크를 비활성화
• 한쪽 인스턴스를 인터넷 게이트웨이로
등록
• NAT인스턴스가 다운되는 시점에,라
우팅 테이블을 변경
가 라우팅 테이블을 변경
106. High Availability Forward Proxy 패턴
• ELB+Proxy+AutoScaling으로 구현
• Squid, ExaProxy 등의 Proxy서버를 이
용
• 장점
• 장애가 발생해도 자동으로 복구
• PROXY부분에서 로그 취득
• 단점
• 애플리케이션/OS별 Proxy설정이 필
요
• 외부 접속용 Proxy를 이중화 하고 싶다.
ELB를Proxy
로 등록
107. On-‐‑‒premise Load Balancing 패턴
• 액세스 하는 시스템의 상황에 따라, 기존 구성을 변경하지 않고 클라우드 확장
서에 대한 장점을 살리고 싶다.
• 온프레미스의 LB 백엔드에, 가상서버를 배치한다.
• 액세스 하는 시스템의 상황
• 액세스 IP 주소를 변경 불가
• WAF/IDS에서 제한할 수 있는 주소
가 IP만 가능
• 인증이나 콘텐트 기반 로드밸런싱
등, 사용하고 싶은 LB 기능이 있다.
108. Floating VPN Gateway 패턴
• 테스트 등으로 , 같은 네트워크 영역 환경을 복수로 이용하고 싶다.
• 클라우드 위에 같은 네트워크 영역을 복수 개 생성하고, VPN 접속 대상을 수
정함으로써 네트워크 환경을 변경.
113. PCI-‐‑‒DSS표준을 준수하고 있는AWS서비스
as of 2014/03/14
• Amazon DynamoDB / Amazon SimpleDB
• Amazon Elastic Block Storage (Amazon EBS)
• Amazon Elastic Compute Cloud (Amason EC2)
• Amazon Elastic Map Reduce (Amazon EMR)
• Amazon Glacier
• Amazon Redshift
• Amazon Relational Database Service (Amazon RDS)
• Amazon Simple Storage Service (Amazon S3)
• Amazon Virtual Private Cloud (Amason VPC)
• AWS CloudHSM
• AWS Direct Connect
• AWs Identity and Access Management (IAM)
• Elastic Load Balancing (ELB)
• 위의 기본이 되는 물리 인프라 스트럭처와 AWSS 관리 환경
• 위에서 정의하고 있는 서비스의 AWS PCI 준수 범위는, 모든 AWSS 데이터 센터
Region과 장소에 적용되어있다.
114. Chained Defense-‐‑‒in-‐‑‒Depth 패턴
VPN
Web Web
App App
NAT
Web Web
App App
NAT VPN
종심방어는、여러 방어
대책을 여러 계층을 구
성하여 리스크를 줄이는
구조
계층별로 서브넷을 나두
어 라우팅을 관리
계층별로 보안 그룹을
나누어 필요한 부분만
연결
115. Chained Defense-‐‑‒in-‐‑‒Depth 패턴
VPN
Web Web
App App
NAT
Web Web
App App
NAT VPN
WebTierAppTierDBTierPublicFacing
VPN NFW IPS/
IDS
WAF AV
VPN NFW IPS/
IDS
WAF AV
VPN NFW IPS/
IDS
WAF AV
116. ELB End-‐‑‒to-‐‑‒End Encryption 패턴
ELB로 SSL termination
SSL처리를 ELB에서 실행
증명서의 관리가 간편
Web Web Web Web
WebTier
Backend-‐‑‒SSL로 백엔드 암호화
모든 통신 경로 암호화
SSL
termination
Backend SSL
117. High Availability Forward Proxy 패턴
• ELB+Proxy+AutoScaling로 구현
• Squid, ExaProxy등의 Proxy서버 이용
• 장점
• 장애가 발생해도 자동으로 복구
• PROXY부분에서 로그 취득
• 단점
• 애플리케이션/OS별 Proxy설정이 필
요
• 외부 접속용 Proxy를 이중화 하고 싶다.
118. Log Aggregation 패턴
각 서버의 로그를 로그 서버로 전송 수집하고 저장된 로그
내용을 감시하여 패턴과 일치하면 알람을 통보
로그는 최종적으로 S3에 보존
장기 보관은 Glacier로
119. Encrypted Log Aggregation 패턴
암호화
각 서버의 로그를 로그 서버로 전송 수집하고 저장된 로그
내용을 감시하여 패턴과 일치하면 알람을 통보
로그는 최종적으로 S3에 보존
장기 보관은 Glacier로
120. OnDemand Bastion 패턴
Bastion 서버 사용은 어떤 환
경에서도 추천
OnDemand Bastion에서는
이용할 때에만 Bastion 서버를
가동
보안 및 비용 측면에서 Good
이용할 때에만 가동
121. High Availability IAM 패턴
각 AZ 별로 Role을 분리하여 설정함으로써, 설정 변경에 실수가 있었다 하더라
도, 시스템 전체에 영향이 없도록 할 수 있다.
http://blogs.aws.amazon.com/security/post/TxQ0OYRWOOK9L3/High-‐‑‒Availability-‐‑‒
IAM-‐‑‒Design-‐‑‒Patterns
122. 참고: Storage/Data Security
EC2
EBS
S3
Glacier
Encryption
Client
Key Management
File
Encryption
Full Disk
Encryption
Database
Encryption
AWS Server
Side
Encryption
Key
Management
File
Encryption
Full Disk
Encryption
Database
Encryption
AWS Server
Side
Encryption
File
Encryption
Full Disk
Encryption
Database
Encryption
AWS Server
Side
Encryption
S3
Glacier
On
premise
Encryption
Client
EC2
On
premise
124. 클라우드 설계 원칙
• 최대한 서비스를 이용
• 생각보다 행동으로
• 작은 규모에서 시작하여
스케일 아웃
• 변화를 전 계층에서 처리
• 고장을 위한 설계 (Design
For
Failure)
• 구축 초기 뿐만 아닌 계속
적인 개선
• できるだけサービスを利用
• 机上実験よりも実証実験
• スモールスタートからスケールアウト
• 変化に対し全レイヤで対処
• 故障のための設計(Design
For
Failure)
• 最初だけでなく周期的なカイゼン
# 万有引力の法則(ニュートン)# 地動説(コペルニクス&ガリレオ)# 相対性理論(アインシュタイン)# 量子力学(プランク、アインシュタイン、ボーア、ド・ブロイ、シュレーディンガー、ハイゼンベルク、ディラック、フェルミ、ボース、フォン・ノイマン)# 進化論(ダーウィンパラダイムとは『それと知らずに私たちの思考や行動に影響を与える枠組み』Key points of slide- The 3 slides (page6, 7, 8) make audiences understand that Cloud Computing is not technical revolution, it is the business revolution.- Use the history of electric power supply as a good example to explain what’s happen in Cloud Computing Area.---Let me talk more about the Cloud Computing.Here’s a photo of an old electric power generator at a brewery. Back in the 1800’s this beer maker had to build their own electric generation capacity. It didn’t make the beer taste better—no one cared about their electricity, they just wanted good beer. That’s why companies started using the electric power grid. Most people have this today—it’s called your servers or datacenters.
And just like an electricity grid, where you would not wire every factory to the same power station, the AWS infrastructure is global, with multiple regions around the globe from which services are available. This means you have control over things like where you applications run, where you data is stored, and where best to serve your customers from.
And just like an electricity grid, where you would not wire every factory to the same power station, the AWS infrastructure is global, with multiple regions around the globe from which services are available. This means you have control over things like where you applications run, where you data is stored, and where best to serve your customers from.
Each AWS region is also split into Availability Zones, making highly available applications possible from within a region.
Let's take a quick look at what that means with a tangible example. Here, two commands are issued against AWS to create servers, or EC2 instances, in two zones in the EU. We're creating 8 instances of differing sizes, running geopgrahically distinct for availability purposes, all from 2 simple commands. Once booted, in a matter of a minute or two, those server instances are available to you to run your own applications on. Amazon has done the heavy lifting for you, so you can focus on using the compute resources available to you.