📌 Amazon EC2 Auto Scaling (규모 수평 조정)
- 자동으로 EC2 인스턴스의 규모를 조정하는 서비스
- 규모 조정 원리 : 필요한 인스턴스로만으로 시작하고,
변화하는 애플리케이션 수요에 따라 EC2 인스턴스를 자동으로 추가하거나 제거하여 규모를 조정 - Auto Scaling이 관리하는 인스턴스들을 Auto Scaling group이라 함
어플리케이션 수요에 대응하는 방법
1) 동적 조정: 수요 변화에 대응
2) 정적 조정: 예측된 수요에 따라 적절한 수의 EC2 인스턴스 자동 예약
규모 조정 방식
1) 최소 용량 설정 : Auto Scaling group 생성 직후 시작되는 인스턴스 수
2) 희망 용량 설정 : 설정하지 않으면 최소 용량으로 설정됨
3) 최대 용량 설정 : 확장 시 최대 인스턴스 갯수
📌 Elastic Load Balancing (ELB)
- ELB와 AutoScaling의 관계
EC2 Auto Scaling이 규모를 조정한다면, ELB는 트래픽을 조정하는 AWS 서비스
ELB과 EC2 Auto Scaling은 별도의 서비스이지만 서로 연동하여 사용함 - ELB 작동 원리
로드 밸런서가 Auto Scaling group으로 들어오는 모든 웹 트래픽의 단일 접점 역할을 함
로드 밸런서에 요청이 들어오면 이를 여러 인스턴스로 분산하여 라우팅해줌
→ 트래픽 분산이 이루어짐 - ELB는 리존(region) 수준에서 작동하므로 사용자가 추가로 설정하지 않아도 됨
cf. ELB는 클라이언트-서버 통신 뿐 아니라 서버간 통신 등에도 사용됨
📌 서버리스 컴퓨팅 서비스 Lambda
- 서버리스란?
코드가 서버에서 실행되지만, 마피 서버가 없는 것처럼 서버를 관리할 필요가 없다는 뜻
서버리스 컴퓨팅을 사용하면 어플리케이션에만 집중을 할 수 있다는 장점이 있음 - Lambda란?
서버를 프로비저닝하거나 관리할 필요 없이 코드를 실행할 수 있게 해주는 aws의 서버리스 컴퓨팅 서비스
사실상 모든 유형의 애플리케이션 또는 백엔드 서비스 코드를 실행할 수 있음
비용은 사용한 컴퓨팅 시간에 대해서만 비용을 지불하면 됨
Lambda는 코드를 15분 미만으로 실행하도록 설계되었있음
📌 Lambda 사용 방법
- 코드를 Lambda 함수에 업로드
- AWS 서비스, 모바일 애플리케이션 또는 HTTP 엔드포인트와 같은 이벤트 소스에서 트리거가 발생하도록 설정
- 트리거가 감지되면 관리형 환경에서 코드가 자동으로 실행됨
- 사용한 컴퓨팅 시간에 대한 요금만 지불
📌 컨테이너 오케스트레이션 서비스 - ECS와 EKS
- 컨테이너란, 애플리케이션과 애플리케이션에 필요한 모든 구성을 모아 놓은 코드 패키지
- 오케스트레이션이란, 컨테이너의 배포, 관리, 확장, 네트워킹을 자동화하는 것
- ECS와 EKS는 컨테이너 오케스트레이션 서비스
ECS (Elastic Container Service) : 도커 관리 시스템
EKS (Elastic Kubernetes Service) : 쿠버네티스 관리 시스템 - ECS와 EKS모두 EC2에서 실행될 수 있음
컨테이너식 어플리케이션을 서버리스로 호스팅하고 싶다면, AWS Fargate를 사용할 수도 있음 - ❗정리❗
어플리케이션을 서버를 관리하며 호스팅 → EC2
어플리케이션을 서버리스로 호스팅 → Lambda
컨테이너기반 어플리케이션을 서버를 관리하며 호스팅 → EC2
컨테이너기반 어플리케이션을 서버리스로 호스팅 → Fargate
출처 표시 안된 모든 이미지 출처 : https://explore.skillbuilder.aws/learn/course/13522/play/55710/aws-cloud-practitioner-essentials-korean-hangug-eo-gang-ui;lp=977
'AWS > Practitioner Essentials' 카테고리의 다른 글
[AWS] 네트워크 보안 (0) | 2023.09.10 |
---|---|
[AWS] 글로벌 인프라 (0) | 2023.09.10 |
[AWS] EC2 동작 원리 (0) | 2023.09.09 |
[AWS] 클라우드 컴퓨팅의 개념과 모델 (0) | 2023.09.09 |