클라우드/AWS

[AWS Cloud Practitioner] CH.2 클라우드 컴퓨팅

밍구21 2023. 5. 3. 09:27

📌Amazon Elastic Compute Cloud (Amazon EC2)

: 컴퓨팅 용량 제공 서비스

 

-원하는 가상서버(=인스턴스) 구축 가능

-인스턴스의  CPU, 메모리, 스토리지, 네트워킹 용량 등 구성 조정 가능

-pay as you go; 사용하는 만큼 금액 지불

-멀티 테넌시 환경; 다른 호스트와 물리적 인스턴스를 공유 but 서로를 인식하지 못함

-AWS 하이퍼바이저가 멀티테넌시 조정

📌Amazon EC2 instance type

General purpose instances
범용 인스턴스
-컴퓨팅, 메모리, 네트워킹 리소스를 균형 있게 제공

ex) 애플리케이션 서버, 게임 서버, 엔터프라이즈 애플리케이션용 백엔드 서버, 중소 규모 데이터베이스
Compute optimized instances
컴퓨팅 최적화 인스턴스
-고성능 프로세서를 활용하는 컴퓨팅 집약적인 애플리케이션에 적합
-vCPU 비율이 높음

범용 인스턴스와 마찬가지 워크로드에 사용 가능 but 프로세서에 최적
memory optimized instances
메모리 최적화 인스턴스
-메모리에서 대규모 데이터 세트를 처리하는 메모리 집약적인 작업에 적합
-메모리 용량이 큼

ex) 고성능 데이터베이스, 방대한 비정형 데이터 실시간 처리를 필요로 하는 워크로드
Accelerated computing instances
엑셀러레이티드 컴퓨팅 인스턴스
 하드웨어 액셀러레이터 또는 코프로세서를 사용하여 일부 기능을 CPU에서 실행되는 소프트웨어(부동 소수점 수 계산, 그래픽 처리, 데이터 패턴 일치 )에 적합

ex) 그래픽 애플리케이션, 게임 스트리밍, 애플리케이션 스트리밍
storage optimized instances
스토리지 최적화 인스턴스
-로컬 스토리지의 대규모 데이터 세트에 대한 순차적 읽기 및 쓰기 액세스가 많이 필요한 시스템에 적합
-스토리지 용량이 큼

ex) 분산 파일 시스템, 데이터 웨어하우징 애플리케이션, 고빈도 온라인 트랜잭션 처리(OLTP) 시스템

 

 

 

📌Amazon EC2 pricing

On-Demand -중단할 수 없는 단기 워크로드
-선결제 비용 X 최소 약정 X
-중단될 때까지 계속 실행
-사용한 시간만큼 지불
ex) 개발 및 테스트, 예측할 수 없는 사용 패턴의 애플리케이션
1년 이상 지속되는 워크로드는 X → 예약 인스턴스가 더 효과
Amazon EC2 Savings Plans -1년 or 3년 약정 → 온디맨드에 비해 72% 비용 절감
-약정 초과 사용량은 온디맨드 요금 부과
-AWS Lambda와 AWS Fargate에도 적용
-AWS Cost Explorer는 Savings Plans의 비용 절감 정도 예측
Reserved Instances -온디맨드 사용 시 할인 옵션
-표준 예약 및 컨버터블 예약 1년 또는 3년 약정 / 정기 예약 인스턴스 1년 약정
-약정기간이 끝나도 중단없이 Amazon EC2 인스턴스 계속 사용
-다 중
하나를 수행할 때까지는 온디맨드 요금이 부과됩니다.
인스턴스 종료
인스턴스 속성(인스턴스 유형, 리전, 테넌시, 플랫폼)과 일치하는 새 예약 인스턴스를 구입
Spot Instances -시작/종료 시간이 자유롭거나 중단 가능한 워크로드에 적합 → 온디맨드 대 90% 비용 절감
-스팟 인스턴스 시작 후 용량 문제나 스팟 인스턴스 수요 폭발  인스턴스가 중단 가능성 존재
Dedicated Hosts 전용 호스트  -사용자 전용의 Amazon EC2 인스턴스 용량을 갖춘 물리적 서버
-소켓당, 코어당 또는 VM당 소프트웨어 라이선스 사용
-온디맨드 전용 호스트와 전용 호스트 예약 구매
-가장 비쌈

 

 

 

📌Scaling Amazon EC2

Amazon EC2 Auto Scaling

    : Scalability을 위한 AWS 서비스

      수요에 따라 인스턴스 추가, 필요 없는 인스턴스는 폐쇄 

동적 조정 수요변화에 대응
예측 조정 예측된 수요에 따라 적절한 수의 Amazon EC2 인스턴스 자동 

   

최소 용량  Auto Scaling 그룹을 생성한 직후 시작되는 Amazon EC2 인스턴스의 수
희망 용량 미지정 시 희망용량=최소용량
최대 용량 수요 증가에 대응 시 확장되는 최대 인스턴스 

 

 

 

📌Directing traffic with Elastic Load Balancing

Elastic Load Balancing (ELB)

: 애플리케이션 트래픽을 Amazon EC2 인스턴스와 같은 여러 리소스에 자동으로 분산하는 AWS 서비스

-리전구조

   ➡ 로드밸런서는 들어오는 모든 트래픽의 단일 접점 역할. 모든 요청이 로드 밸런서로 먼저 라우팅

-비용 변경 없이 자동 확장

-외부 트래픽 혼란 / 백엔드 트래픽 혼란 시에 사용

 

ex) 커피숍에 들어오는 사람이 트래픽, 계산대가 인스턴스라고 가정,

      손님이 많아서 계산대(인스턴스)를 늘리는 것은 auto scaling,

      손님을 계산대로 나눠주는 것이 Elastic Load Balancing

 

 

 

📌Message and Queue

  모놀리식 마이크로서비스
설명 -구성요소 밀결합된 유형의 아키텍처
(구성요소는 DB, 서버, UI, 비즈니스 로직 등 포함)
-구성요소가 소결합된 유형
특징 -한 구성요소 장애 발생 시 다른 요소 및 전체 애플리케이션에서 장애 발생 가능 -장애 전이 방지
-AWS의 SNS 및 SQS가 애플리케이션 통합을 촉진

 

 

 

Amazon Simple Notification Service (Amazon SNS)

: 구독자에게 메시지를 게시하는 서비스

 

Amazon Simple Queue Service (Amazon SQS)

: 메시지 대기열 서비스

 

-시스템 구성 요소를 분리할 수 있게 하는 요소

 

 

📌AWS Lamda

: 서버리스 컴퓨팅용 AWS 서비스

  서버리스란?

    서버(인스턴스)를 프로비저닝/관리하는  EC2와 달리 서버 프로비저닝/관리 없이 코드를 실행하는 것

 

-모든 유형의 애플리케이션 및 백엔드 코드 실행

-관리할 필요 없음

-Pay as you go

 

 

 

📌Amazon Elastic Container Service (Amazon ECS)

:컨테이너식 애플리케이션을 실행하/확장할 수 있는 컨테이너 관리 시스템

 

-Docker 컨테이너 지원

 Docker: 애플리케이션을 신속하게 구축, 테스트, 배포할 수 있는 소프트웨어 플랫폼

-API를 사용해 Docker 지원 애플리케이션을 시작 및 중지

 

 

📌Amazon Elastic Kubernetes Service (Amazon EKS)

:  Kubernetes 실행 시 사용하는 관리형 서비스입니다. 

 

- Kubernetes를 유지 관리

   Kubernetes: 컨테이너식 애플리케이션을 배포/관리하는 오픈 소스 소프트웨어

 

 

📌AWS Fargate

: 컨테이너용 서버리스 컴퓨팅 엔진

 

-Amazon ECS와 Amazon EKS에서 작동

-서버 프로비저닝 및 관리 필요 없음

-Pay as you go