AWS Cloud Design Pattern AMIMOTO AMI를 이용해 5분만에 끝내는 WordPress 구축
ü 박 상욱 [email protected] § FLATCLE § CloudNoa - AWS Management Sevice
ü 좋아하는 AWS 서비스 § Amazon Route53 / CloudFront
ü 좋아하는 CDP § Multi-Datacenter 패턴
ü 번역서
자기 소개
거인의 어깨 - 독서 SNS
클라우드 디자인 패턴 (CDP)
ü AWS 클라우드를 좀 더 쉽게 전달 ü AWS의 기존 노하우를 공유 ü AWS를 누구나 사용할 수 있도록 정리
AWS 클라우드 디자인 패턴이란? Cloud Design Pattern (CDP)
ü AWS 클라우드를 사용하여 시스템 아키텍처를 설계 할 때 발생할 수 있는 전형적인 문제에 대한 해결방안, 설계방법을 알기 쉽게 분류하여 노하우로 이용할 수 있도록 정리한 것이다.
클라우드 디자인 패턴 정리 방법
ü 해결하고 싶은 문제 ü 클라우드에서의 해결방법과 패턴설명 ü 구현방법 ü 구성도 ü 장점 ü 주의점
CDP 48 기본 패턴 Snapshot Stamp Scale Up Ondemand Disk
정적 콘텐츠 처리 패턴 Web Storage Direct Hosting Private Distribution Cache Distribution Rename Distribution Private Cache Distribution
일괄 처리 패턴 Queuing Chain Priority Queue Job Observer Scheduled Autoscaling
가용성 향상 패턴 Multi-Server Multi-Datacenter Floating IP Deep Health Check
데이터 업로드 패턴 Write Proxy Storage Index Direct Object Upload
운용 보수 패턴 Bootstrap Cloud DI Stack Deployment Server Swapping Monitoring Integration Web Storage Archive Weighted Transition
동적 콘텐츠 처리 패턴 Scale Out Clone Server NFS Sharing NFS Replica State Sharing URL Rewriting Rewrite Proxy Cache Proxy Scheduled Scale Out
관계 데이터베이스 패턴 DB Replication Read Replica Inmemory DB Cache Sharding Write
네트워크 패턴 OnDemand NAT Backnet Functional Firewall Operational Firewall Multi Load Balancer WAF Proxy CloudHub
CDP 48
CDP 48
CDP 노하우 공유
http://aws.clouddesignpattern.org/
CDP 노하우 공유
www.facebook.com/awscdp
아마존 웹 서비스 클라우드 디자인 패턴 설계 가이드
CDP 실전편
ü 이미지 동영상 제공 사이트 (Movable Type on AWS) § 많은 유저에게 이미지 동영상 제공하고 싶을 때
ü 전자상거래 사이트 (EC-CUBE on AWS) § 가용성이 높은 사이트를 운용하고 싶을 때
ü 이벤트 사이트 (Wordpress on AWS) § 단발적 사용자 증가에도 문제없이 사이트를 운용하고 싶을 때
아마존 웹 서비스 클라우드 디자인 패턴 구축 가이드
클라우드 설계 원칙
ü 최대한 서비스를 이용 ü 생각보다 행동으로 (테스트) ü 작은 규모에서 시작하여 스케일 아웃 ü 변화를 전 계층에서 처리 ü 고장을 위한 설계 (Design For Failure) ü 구축 초기 뿐만 아닌 계속적인 개선
CDP 사용 설명서 WordPress on AWS
CDP 사용 설명서 초기 구성
ü 싱글 구성의 서버를 스케일 아웃 1. 기존 서버의 AMI를 생성 2. AMI를 이용하여 서버 스케일 아웃
CDP 사용 설명서
Clone Server 패턴
마스터 EC2 클론 EC2 클론 EC2 클론 EC2
콘텐츠 동기(rsync)
수동 스케일 아웃 자동 스케일 아웃
클론용 AMI
CDP 사용 설명서
ü 실시간 공유 콘텐츠를 반영 1. NFS를 서버를 구축 2. NFS 서버에 저장된 공유 콘텐츠를 공유
CDP 사용 설명서
NFS Sharing 패턴
가상 로드 밸런서
가상 서버
가상 디스크
동기 가상 서버 마스터
CDP 사용 설명서
AWS
CDP 사용 설명서
ü NFS 서버 성능문제 발생 1. NFS 서버에 공유 콘텐츠 동기화 2. 서버 기동 시 NFS 서버에서 콘텐츠 동기
NFS Replica 패턴
가상 로드 밸런서
가상 서버
가상 디스크
가상 서버
서버 이미지
1. 서버 가동 2. NFS를 마운트
3. 디스크 동기
CDP 사용 설명서
ü 많은 비용 발생으로 콘텐츠 분산 1. S3를 이용하여 콘텐츠 분산 2. mod_ext_filter를 사용하여 내부 URL을 변환
CDP 사용 설명서
URL Rewriting 패턴
S3cmd로 동기
mod_ext_filter로 HTML 내부의 정적 콘텐츠의 URL을 S3의 URL로 변환
CDP 사용 설명서
CDP 사용 설명서 EC-CUBE on AWS
CDP 사용 설명서 초기 구성
CDP 사용 설명서
ü 현재 사용 중인 소프트웨어 업그레이드 1. 서비스 환경으로 AMI를 생성 2. AMI로 테스트 서버 구성 3. 테스트 서버에서 소프트웨어 업그레이드 4. 업그레이드에 따른 동작 테스트 5. Floating IP 패턴을 이용하여 테스트 환경과 서비스 환경을 교체
CDP 사용 설명서 Floating IP 패턴 적용
CDP 사용 설명서
ü 서버에 장애 발생 시 빠른 복구 1. 미리 생성해 둔 AMI로 인스턴스 생성 2. 서비스 환경에서 사용했던 디스크를 할당
CDP 사용 설명서 Server Swapping 패턴 적용
CDP 사용 설명서
ü 다운타임 없는 서비스 구축 1. Multi-Server 패턴을 적용 2. 서버를 여러 대로 구성 (ELB사용) 3. DB서버를 별도로 분리 (RDS사용)
CDP 사용 설명서 Multi-Server 패턴 적용
CDP 사용 설명서
ü DB 이중화 1. DB Replication 패턴을 사용 2. Multi-AZ에 Slave DB 구성
CDP 사용 설명서 DB Replication 패턴 적용
CDP 사용 설명서
ü 데이터 센터 레벨의 장애 대비 1. Multi-Datacenter 패턴을 적용 2. 전 계층을 이중화
CDP 사용 설명서 Multi-Datacenter 패턴 적용
WordPress on AWS AMIMOTO AMI를 이용한 WordPress구축
ü AMIMOTO?
ü WordPress Install
ü EIP Associate
ü Backup & Restore
ü ScaleUP & ScaleDOWN
ü Nginx Cache Controller
ü AMIMOTO?
ü WordPress Install
ü EIP Associate & Route53
ü Backup & Restore
ü ScaleUP & ScaleDOWN
ü Nginx Cache Controller
ü AMIMOTO?
http://megumi-cloud.com/
ü AMIMOTO?
ü AMIMOTO?
ü WordPress Install
ü EIP Associate & Route53
ü Backup & Restore
ü ScaleUP & ScaleDOWN
ü Nginx Cache Controller
AWS Marketplace에서 AMIMOTO로 검색
인스턴스 타입 선택
Network 선택
Storage 설정
Instance name 지정
Security Group 선택
Key pair 생성 및 다운로드
ü AMIMOTO?
ü WordPress Install
ü EIP Associate & Route53
ü Backup & Restore
ü ScaleUP & ScaleDOWN
ü Nginx Cache Controller
Elastic IP 생성
Elastic IP 생성
Elastic IP 생성
Elastic IP 할당
Route53 설정
ü Floating IP Pattern
ü AMIMOTO?
ü WordPress Install
ü EIP Associate & Route53
ü Backup & Restore
ü ScaleUP & ScaleDOWN
ü Nginx Cache Controller
volumes name 확인
Snapshot 생성
Snapshot 생성 후 Image 생성
Image로 인스턴스 생성
ü Stamp Pattern
ü AMIMOTO?
ü WordPress Install
ü EIP Associate & Route53
ü Backup & Restore
ü ScaleUP & ScaleDOWN
ü Nginx Cache Controller
인스턴스 정지
인스턴스 타입 변경
ü Scale Up Pattern
ü Multi-Datacenter Pattern +DB Replication Pattern +Multi-Server Pattern
ü AMIMOTO?
ü WordPress Install
ü EIP Associate & Route53
ü Backup
ü ScaleUP & ScaleDOWN
ü Nginx Cache Controller
Nginx Cache 설정
Nginx Mobile Theme
Nephila clavata – S3로 이미지 자동 업로드
WP Booster CDN
감사합니다.