Cloud Practitioner Essentials

이 글에서는 AWS Cloud Practitioner Essentials 강의 내용을 요약하여 On-Premise와 On-Demand의 차이점, EC2, SQS, SNS, Region, Network, Storage, Security, Monitoring, Price 등 핵심 개념을 다룹니다.

강의 주소 : https://www.aws.training/Details/eLearning?id=60697

 

* On-Premise VS On-Demand
On-Premise : 정해진 스펙에 대한 비용을 지불
On-Demand : 필요한 상황에 따라서 과금 체계를 변경할 수 있음 (Pay-as-you-go)

 

* Deployment models for cloud computing
Cloud-Based Deployment : 모든 어플리케이션을 클라우드에 저장된 형태로 운영. 클라우드 상에 공통적으로 사용할 수 있는 어플리케이션 (MySQL in RDS, docker repository in ECS 등등)

On-Premises Deployment : Private Cloud Deployment. 자체 구축된 Data Center 에 어플리케이션을 설치해서 사용. 비용을 upfront (선제적으로) 지불해야함

Hybrid : 사내 규정이나 legacy 프로젝트에 Cloud 를 도입할 때 사용됨

 


 

[Elastic Compute Cloud (EC2)]

-하나의 하드웨어 내에 여러개의 VM 인스턴스들을 호스팅한다.
-각각의 인스턴스들은 모두 확실이 분리되어있음 (보안성 확보)
-OS 를 선택하고 나면, 내부의 Application 을 커스터마이징 할 수 있음
-Vertical Scaling : 언제든지 스펙을 수직적으로 통제할 수 있음 
-Secure : 인스턴스의 보안 설정을 커스터마이징 가능 (Security Group, IAM)
-CaaS : Computing as a Service

 

[EC2 instance Types]

-Instance Type : CPU / Memory 

 

[EC2 Family ]
General Purpose : Balances compute, memory, and networking resources

Compute optimized : Offers high-performance processors

Memory Optimized : Ideal for high-performance databases

Storage Optimized : Suitable for data warehousing applications

 


 

[EC2 Pricing]

-On-Demand : 사용한 만큼 지불, 원하는 시점에 어느 때에나 변경할 수 있음
-Saving Plans : 1년, 3년을 기준으로 기간을 정해서 계약할 수 있다. 항상 일정한 양의 컴퓨팅 파워를 사용할 때 적절하다. 72% 의 가격을 할인해줌
-Reserved Instance : 일시불, 나눠서 지불, 후불의 방식으로 선택할 수 있다.
-Spot Instance : 90% 의 가격을 미리 할인해 줄 수 있다. 제시한 가격이 유효할 때에만 EC2 가 유효하다
-Dedicated Hosts : 한 인스턴스를 한 고객에게 전속적으로 할당해줌 

 


 

[Scalability]
-Auto Scaling : Minimum, Desired, Maximum instance 수를 설정해야 한다. 기본적으로 인스턴스 타입의 스펙을 늘리는 것이 아니라, 갯수를 늘려준다.

 


 

[Message & Queue]
- 한 어플리케이션이 다른 어플리케이션에 직접적으로 영향 : highly coupled, monolithic application

- 한 어플리케이션과 다른 어플리케이션 사이에 Message Queue 존재 : loosely coupled

 

SQS (Simple Queue Service)
-메세지가 처리될 때까지 쌓이게 된다.

SNS (Simple Notification Service)
- publish / subscribe 를 통해 subscriber 들에게 Notification 을 보낼 수 있다. (Lambda, Webhook, Email, Push 등)

 


[Region]
-Complience : 법적인 이슈 (중국 등)
-Proximity : 물리적 거리
-Feature Availibility : 리전별 기능 지원 차이
-Pricing : 리전별 가격 차이

[Edge Locations]
- CloudFront : 리전별 low latency 를 위한 캐시 서비스
- Route53 : DNS System
- AWS Outposts : 개인 회사의 데이터센터 내부에 AWS  서비스를 사용할 수 있음

 


[Network]
-VPC : 네트워크 상의 경계를 의미한다.
Amazon VPC enables you to provision an isolated section of the AWS Cloud. In this isolated section, you can launch resources in a virtual network that you define. Within a virtual private cloud (VPC), you can organize your resources into subnets. A subnet is a section of a VPC that can contain resources such as Amazon EC2 instances.

-Internet Gateway : VPC 내부의 숨겨진 IP 들에 대해서 public 접근을 허용해준다.
- Virtual Private Gateway : VPN 처럼 허가된 IP 만 접근을 허용하게 해 준다.
- AWS Direct Connect : Magic Doorway, service that enables you to establish a dedicated private connection between your data center and a VPC.  

- Network ACL : 패킷이 서브넷에 들어갈 수 있는지, 아닌지를 체크함. (Passport). EC2 인스턴스에 대한 접근 정보는 다루지 않고, 서브넷에 대한 설정을 하게 된다. (Stateless) 상태 정보가 있으면 다시 검사하지 않는다. Default 값으로, 모든 인바운드와 아웃바운드 요쳥을 허용한다.
- Security Group : EC2 에 대한 보안을 설정할 때 사용한다. (Stateful) 현재 상태가 어떻든 항상 검사한다. Default 값으로, 모든 인바운드 요청을 거부하고, 모든 아웃바운드 요청을 허용한다.


 

[Storage]

EBS : EC2 에 종속되지 않고, 붙어있는 드라이브. EC2 를 중단시켜도 EBS 는 별도로 데이터로 남게 된다. 주기적으로 드라이브에 대한 Snapshot 을 사용할 수 있다. 이 때, 데이터 변경분만 추가적인 스냅샷으로 남게 된다. (incremental backup)

S3 : unlimited data 들을 저장. Store data as objects. Maximum 5TB. Version objects. Permission Control. Static Web hosting (SPA)

S3 Glacier : 데이터 아카이빙아 필요할 때 사용

S3, S3 Glacier 간에 LifeCycle 을 설정할 수 있다.

S3 VS EBS : 단순히 데이터를 읽고 업로드 하는데에는 S3 가 우세. 만약 업로드한 파일을 자주 수정해야 한다면 EBS 가 우세하다.

EFS (Elastic File System) : EBS 가 하나의 EC2 에 마운트되어 있다면, EFS 는 같은 리전의 여러 인스턴스가 공유하여 사용할 수 있다. 

 

Amazon Redshift : Data Warehouse as Service. 이제 변할 일이 없는 데이터들을 저장하기에 적합하다.

 

Amazon Database Migration System (DMS) : 마이그레이션 시점에서도 정상동작. On-premise, EC2, RDS 상의 Legacy DB 를 RDS 로 옮길 수 있다. 만약 밴더사가 다를 경우에는, 벤더사를 Convert 해 주는 상품도 존재한다.
Development and test database migrations
Database Consolidation
Continuous Replication

 


[Security]

Shared Reponsibility Model: OS Layer 부터는 사용자의 역할이다. (OS, Application, Data)

 


[Monitoring]

CloudWatch : Tracking & Monitoring Metrics, (Metrics: Variables tied to your resources) 

장점 : 중앙에서 모든 Resource 의 Metrics 를 살펴볼 수 있다.

Mean Time to Resolution 감소, TCO 개선, Dashboard 에서 편하게 볼 수 있다.

 

CloudTrail : 모든 인프라 변경 Request 는 CloudTrail 에 로그로 남게 된다. 유저들이 변경을 가한 내역들을 S3 에 저장한다.

 

Trusted Advisor : 인프라가 효율적으로 운용되고 있는지 판단해 준다. Cost, Performance, Security, Fault tolerance, Service limits 를 기준으로, AWS Best Practices 를 체크해 준다.

 


 

[Price]

Free Tier : Always Free / 12 months free / Trials (12개월보다 단기)

Lambda, DyanoDB : 항상 프리티어 존재
S3 : 1년간 무료
LightSail : 1달간 무료

 

계산법

람다 : 처리한 요청 수, 소요된 시간에 비례
EC2 : Running Time 에 비례, 사용한 EBS 크기에 비례, Load Balance 사용 시간이 비례
S3: 저장한 데이터의 양, Save Request에 비례, Fetch Request에 비례, 같은 가용영역 내에서는 과금이 안되지만, 다른 가용영역에서는 과금이 된다.

 


이것도 읽어보세요