*PYRASIS.COM: "아마존 웹 서비스를 다루는 기술" 책 사이트 링크
목차
- 왜 AWS인가?
- 가상화와 클라우드 컴퓨팅
- 아마존 웹 서비스
- 스타트업과 클라우드 컴퓨팅
- 다양한 활용 사례
- 화성탐사로버 큐리오시티
- 넷플릭스
- 애니모토
- 아모레퍼시픽
- 모바일 게임 쿠키런
- AWS 기본 개념 살펴보기
- 리전, 지역
- 가용 영역
- 에지 로케이션
- AWS 계정 생성하기
- 가상 서버를 제공하는 EC2
- EC2 인스턴스 유형
- EC2 인스턴스 구매 옵션
- EC2 인스턴스 생성하기
- EC2 인스턴스에 접속하기
- Windows에서 PuTTY로 접속하기
- Linux, Mac OS X에서 접속하기
- 가상 스토리지를 제공하는 EBS
- EBS 볼륨 생성하기
- EC2 인스턴스에 EBS 볼륨 장착하기
- EC2 인스턴스에서 EBS 볼륨 포맷하기
- EC2 인스턴스에서 EBS 볼륨 마운트하기
- EC2 인스턴스에서 EBS 볼륨 제거하기
- EBS 스냅샷 활용하기
- EBS 스냅샷 생성하기
- EBS 스냅샷으로 EBS 볼륨 생성하기
- EBS 스냅샷으로 AMI 생성하기
- EBS 스냅샷을 다른 리전으로 복사하기
- 인스턴스 스토리지를 Root 장치로 사용하는 EC2 인스턴스 생성하기
- EC2 기타 설정 및 기능
- Security Group으로 방화벽 설정하기
- 고정 IP를 제공하는 Elastic IP
- Elastic IP 할당받기
- Elastic IP 연결하기
- EC2 인스턴스 접속을 위한 키 쌍
- 키 쌍 생성하기
- 외부 키 쌍 파일 사용하기
- PuTTY로 생성한 키 쌍 파일 활용하기
- Linux와 Mac OS X에서 생성한 키 쌍 파일 활용하기
- 이미 생성된 EC2 인스턴스에서 공개 키 바꾸기
- AMI
- AWS Marketplace
- EC2 인스턴스로 AMI 생성하기
- AMI를 다른 리전으로 복사하기
- 인스턴스 스토리지를 Root 장치로 사용하는 EC2 인스턴스 생성하기
- API와 툴 사용을 위한 액세스 키 생성하기
- AWS 리소스의 상태를 모니터링하는 CloudWatch
- CloudWatch 알람 생성하기
- CloudWatch 커스텀 측정치 사용하기
- HTTP 프로토콜과 연동되는 스토리지 S3
- S3 버킷 생성하기
- S3 버킷에 파일 올리기/받기
- S3 세부 설정하기
- S3 객체 권한 관리하기
- S3 버킷 권한 관리하기
- S3 정적 웹사이트 호스팅 사용하기
- HTTP Referer로 S3 접근 제한하기
- S3 객체 스토리지 클래스, 암호화 설정하기
- S3 객체 메타데이터 설정하기
- S3 버킷 로그 설정하기
- S3 버킷 버저닝 설정하기
- S3 버킷 수명 주기 설정하기
- S3 버킷 기타 설정
- 전 세계에 콘텐츠를 배포하는 CDN 서비스인 CloudFront
- CloudFront 배포
- S3와 CloudFront 연동하기
- CloudFront 커스텀 오리진 사용하기
- EC2와 CloudFront 연동하기
- 외부 서버와 CloudFront 연동하기
- Signed URL로 CloudFront 콘텐츠 사용 제한하기
- Signed URL 사용 설정하기
- Signed URL 서명을 위한 CloudFront 키 쌍 생성하기
- Canned Policy를 사용한 Signed URL 생성하기
- Custom Policy를 사용한 Signed URL 생성하기
- Invalidation으로 CloudFront 콘텐츠 갱신하기
- 확장 가능한 관계형 데이터베이스를 제공하는 RDS
- RDS DB 인스턴스 클래스
- RDS 예약 인스턴스
- RDS 데이터베이스 엔진과 라이선스 모델
- RDS DB 인스턴스 생성하기
- RDS DB 인스턴스 Security Group 생성 및 설정하기
- RDS DB 인스턴스 사용하기
- RDS DB 스냅샷 활용하기
- RDS DB 스냅샷 생성하기
- RDS DB 스냅샷으로 RDS DB 인스턴스 생성하기
- RDS 스냅샷을 다른 리전으로 복사하기
- RDS를 특정 시점으로 복구하기
- RDS DB 인스턴스 Read Replica 생성하기
- RDS DB 인스턴스 성능 확장하기
- RDS 기타 설정 및 기능
- 확장 가능한 NoSQL 분산 데이터베이스를 제공하는 DynamoDB
- DynamoDB의 데이터 모델
- DynamoDB에 맞는 데이터 구조 설계하기
- DynamoDB 테이블 생성하기
- DynamoDB 테이블에 데이터 추가하기
- DynamoDB 데이터 쿼리하기
- DynamoDB 기타 설정 및 기능
- 확장 가능한 분산 인 메모리 캐시를 제공하는 ElastiCache
- ElastiCache 캐시 노드 유형
- ElastiCache 예약 캐시 노드
- ElastiCache Memcached 클러스터 생성하기
- ElastiCache Memcached 클러스터 Security Group 생성 및 설정하기
- ElastiCache Memcached 클러스터에 캐시 노드 추가하기
- ElastiCache Redis 클러스터 생성하기
- ElastiCache Redis 클러스터 Security Group 생성 및 설정하기
- ElastiCache Redis 클러스터 스냅샷 활용하기
- ElastiCache Redis 클러스터 스냅샷 생성하기
- ElastiCache Redis 클러스터 스냅샷으로 Redis 클러스터 생성하기
- ElastiCache Redis 클러스터 Read Replica 생성하기
- 사용자와 그룹을 생성하여 접근제어 및 권한관리를 제공하는 IAM
- IAM 그룹 생성하기
- IAM 사용자 생성하기
- IAM 사용자로 AWS 콘솔에 접속하기
- IAM 역할 활용하기
- IAM 역할 생성하기
- IAM 역할을 사용하는 EC2 인스턴스 생성하기
- IAM 기타 설정 및 기능
- AWS 리소스와 연동 가능한 DNS 서비스 Route 53
- Route 53 Hosted Zone 생성하기
- Route 53 A 레코드 생성하기
- Route 53와 S3 연동하기
- Route 53와 CloudFront 연동하기
- Route 53 DNS Failover 활용하기
- Route53 Latency Based Routing, Weighted Round Robin, Geo Routing 설정하기
- Route 53에서 도메인 구입하기
- 부하 분산과 고가용성을 제공하는 ELB
- ELB 로드 밸런서 생성하기
- EC2 인스턴스에 웹 서버 실행하기
- ELB 로드 밸런서 Sticky Session 기능 사용하기
- 자동으로 EC2 인스턴스를 생성하여 서비스를 확장하는 Auto Scaling
- Auto Scaling에 사용할 AMI 생성하기
- EC2 생성 옵션 설정과 Auto Scaling 그룹 생성하기
- 가상 네트워크를 제공하는 VPC
- VPC 생성하기
- VPC 서브넷 생성하기
- VPC 인터넷 게이트웨이 생성하기
- VPC 기타 설정 및 기능
- 데이터 보관 및 백업을 위한 매우 저렴한 스토리지 서비스 Glacier
- Glacier 볼트 생성하기
- Glacier 볼트에 파일 올리기
- Glacier 볼트에서 파일 받기
- 서버 구성을 자동화하는 CloudFormation
- CloudFormation 템플릿 기본 구조
- EC2 인스턴스를 생성하는 CloudFormation 템플릿
- EC2 인스턴스를 생성하고 웹 서버를 설치, 실행하는 CloudFormation 템플릿
- EC2 인스턴스를 생성하고 Security Group을 설정하는 템플릿
- CloudFormation 템플릿으로 CloudFormation 스택 생성하기
- 간편하게 사용하는 애플리케이션 플랫폼 서비스 Elastic Beanstalk
- Elastic Beanstalk으로 Node.js 애플리케이션과 환경 생성하기
- AWS 콘솔에서 Elastic Beanstalk Node.js 애플리케이션 배포하기
- Git으로 Elastic Beanstalk Node.js 애플리케이션 배포하기
- Elastic Beanstalk 환경 URL 교체로 무중단 배포하기
- 애플리케이션 구성과 배포를 자동화하는 OpsWorks
- OpsWorks 스택 생성하기
- OpsWorks PHP 레이어 생성하기
- OpsWorks PHP 인스턴스 생성하기
- OpsWorks PHP App 생성하기
- OpsWorks PHP App 배포하기
- OpsWorks 커스텀 Chef 레시피 사용하기
- 검색 서비스를 제공하는 CloudSearch
- CloudSearch 검색 인스턴스 유형
- CloudSearch 검색 도메인 생성하기
- CloudSearch 검색 도메인에 데이터 올리기
- CloudSearch 검색 도메인에서 검색하기
- CloudSearch 검색 자동완성 사용하기
- CloudSearch 검색 식 사용하기
- CloudSearch 검색 도메인 엔드포인트 주소 활용하기
- CloudSearch 인덱스 구조를 설계하고 검색 도메인 생성하기
- CloudSearch 검색 도메인 엔드포인트로 데이터 올리기
- CloudSearch 검색 도메인 엔드포인트 주소로 검색하기
- 푸시 알림 서비스 SNS
- SNS 토픽과 이메일 구독 생성하기
- SNS 토픽에 메시지 보내기
- SNS로 구글 안드로이드에 푸시 알림 보내기
- 구글 GCM API 사용 등록하기
- SNS 애플리케이션 생성하기
- 예제 안드로이드 애플리케이션 실행 및 Registration ID 생성하기
- SNS 애플리케이션에 엔드포인트 추가하기
- SNS 애플리케이션의 엔드포인트에 메시지 보내기
- SNS 토픽에 GCM 구독 생성하기
- SNS로 애플 iOS에 푸시 알림 보내기
- iOS App ID 생성하기
- 인증서 요청 생성하기
- APNS 인증서 생성하기
- SNS 애플리케이션 생성하기
- 예제 iOS 애플리케이션 실행 및 Device Token 생성하기
- SNS 애플리케이션에 엔드포인트 추가하기
- SNS 애플리케이션의 엔드포인트에 메시지 보내기
- SNS 토픽에 APNS 구독 생성하기
- 이메일 전송 서비스 SES
- 이메일 주소 인증하기
- 도메인 인증하기
- 프로덕션 액세스 권한 얻기
- SES로 테스트 메일 보내기
- SES SMTP로 메일 보내기
- 메시지 큐를 제공하는 SQS
- SQS 큐 생성하기
- SQS 처리 실패 큐 생성하기
- SQS 큐에 메시지 보내기/받기
- 동영상 인코딩 서비스 Elastic Transcoder
- Elastic Transcoder 파이프라인과 작업 생성하기
- AWS API, CLI 활용하기
- Node.js용 AWS SDK 설치하기
- AWS CLI 설치하기
- EC2
- CloudWatch
- ELB
- Auto Scaling
- S3
- CloudFront
- DynamoDB
- CloudSearch
- SNS
- SES
- SQS
- 글로벌 사진 사이트 구축하기
- 이미지, 소스 저장용 S3 버킷 생성하기
- 이미지 정보 저장용 RDS DB 인스턴스 생성하기
- 이미지 처리용 SQS 큐 생성하기
- S3, SQS 접근용 IAM 역할 생성하기
- 웹 서버용 ELB 로드 밸런서 생성하기
- 웹 서버, 이미지용 CloudFront 배포 생성하기
- Route 53로 도메인 연결하기
- Node.js로 웹 서버 작성하기
- 웹 서버 및 사이트 내용 둘러보기
- 웹 서버 AMI 생성하기
- 웹 서버 Auto Scaling 설정하기
- Node.js로 이미지 변환 서버 작성 및 구축하기
- 이미지 변환 서버 내용 둘러보기
- 이미지 변환 서버 구축하기
- 사진 사이트 동작 확인하기
- 자동 확장 가능한 콘서트 티켓 예매 사이트 구축하기
- 소스 저장용 S3 버킷 생성하기
- 좌석 데이터 저장용 RDS DB 인스턴스 생성하기
- 좌석 상태 갱신용 ElastiCache 캐시 클러스터 생성하기
- S3 접근용 IAM 역할 생성하기
- 웹 서버용 ELB 로드 밸런서 생성하기
- 웹 서버용 CloudFront 배포 생성하기
- Route 53로 도메인 연결하기
- Node.js로 웹 서버 작성하기
- 웹 서버 및 사이트 내용 둘러보기
- 웹 서버 AMI 생성하기
- 웹 서버 Auto Scaling 설정하기
- 티켓 예매 사이트 동작 확인하기
- 자동 확장 가능한 모바일 게임 서버 구축하기
- 소스 저장용 S3 버킷 생성하기
- 순위 산출용 ElastiCache 캐시 클러스터 생성하기
- 게임 데이터 저장용 RDS DB 인스턴스 생성하기
- 로그 저장용 DynamoDB 테이블 생성하기
- S3, DynamoDB 접근용 IAM 역할 생성하기
- 게임 서버용 ELB 로드 밸런서 생성하기
- Route 53로 도메인 연결하기
- Node.js로 게임 서버 작성하기
- 게임 서버 내용 둘러보기
- 게임 서버 AMI 생성하기
- 게임 서버 Auto Scaling 설정하기기
- 게임 서버 동작 확인하기
- 부록
- 요금 계산기
- Windows EC2 인스턴스 사용하기
- S3을 s3fs로 파일시스템처럼 사용하기
- S3을 s3cmd로 관리하기
- Auto Scaling 그룹의 EC2 인스턴스에 소스 배포하기
- AWS Visual Studio 툴킷
- AWS Eclipse 툴킷
- 요금 절약하기
예제 소스