※ 아래는 'AWSome Day 온라인 컨퍼런스(2022-06-09)' 강의를 수강하고 정리한 내용입니다.
● Amazon EC2
- 선택한 AMI를 기준으로 EC2 기동 가능
● 가상 서버. 물리적 서버.
Stateless하게 관리
scale up.down.
동일한 작업을 빠르게 반복.
PoC.
추가 리소스를 프로비저닝해서 PoC 사용 가능.
● EC2
- Amazon Machine Image(AMI)를 사용
- AMI에서 원하는 만큼 여러 개의 인스턴스 사용 가능
- AMI 다운방법 4가지
1) AWS 에서 제공하는 AMI
2) 마켓플레이스에서 제공하는 AMI
3) 사용자가 자체적으로 구성한 AMI
4) 커뮤니티에서 올라오는 AMI
선택한 AMI 기준으로 EC2 인스턴스 사용 가능.
● EC2 이점
필요한 인프라 용량이 어느 정도 일지 추정할 필요가 없다.
탄력성 : 제어가 쉽다. 관리의 오버헤드 없이 인스턴스의 유형과 사이즈 변경 가능.
→ 온프레미스에서 사용하는 거보다 효율적으로 관리 가능
→ ex) 오토스케일링 사용
다양한 AWS 서비스와 통합 가능.
가용성 99.99%. EC2 사용 시 발생하는 이벤트 시간 최소화하고 있다.
VPC 내에서 동작 → 컴퓨터 리소스의 계층적인 보안을 이용해 보안 측면에서 보다 안전.
● EC2 인스턴스 패밀리 및 이름
구분 기준 : 인스턴스 패밀리 타입을 설정
1) 범용
2) 컴퓨팅 최적화
3) 메모리 최적화 : 대규모 메모리 제공
4) 스토리지 최적화 : 처리량에 강점
5) 액셀러레이터 컴퓨팅 : GPU 성능을 필요로 할 때 선택. e.g.) 기계학습 필요시 이거 선택
※ 어떤 거를 선택할지 잘 모른다면 범용 인스턴스 패밀리 선택 후 추후 변경
● EC2 요금
- 온디맨드 인스턴스 : 실행하는 인스턴스에 따라 시간 단위로 청구
- 예약 인스턴스 : 온디맨드 인스턴스보다 할인된 가격으로 제공.
수요가 안정적이거나 사용량이 예측 가능한 경우 사용.
- Saving Plans : 예약 인스턴스와 유사하지만 최대한의 유연성을 제공하는 요금제
예약 인스턴스보다는 덜 저렴하지만 리전, 인스턴스 패밀리 등을 변경할 수 있다
- 스팟 인스턴스 : 온디맨드 가격보다 저렴한 비용(최대 90% 할인)
사전에 정의된 기간보다 온디맨드 인스턴스와 비교해 30~50% 할인된 가격.
비용 저렴. 예측 가능. 대규모 AWS에 적절.
언제든지 종료될 수 있는 요금제 → 재처리 가능한 어플리케이션에 유리
● 비관리형, 관리형 서비스 비교
예)
비관리형 : EC2 인스턴스에 DB를 직접 셋업
→ 관련 SW 설치하는 등 거의 모든 것을 본인이 관여하고 관리
관리형 : RDS
→ DB 엔진 셋업, 고가용성을 위한 SW를 직접 설치할 필요가 없으므로 어플 또는 비즈니스에 더욱 집중 가능
필요할 때 그 성격에 맞는 것을 선택해서 사용.
예2) 컨테이너 관리
● Amazon Elastic Container Service(Amazon ECS)
- 관리형 컨테이너 오케스트레이션 서비스
- 클러스트를 컨테이너에서 쉽게 끄고 킬 수 있도록 함.
- 컨테이너 사용하면 일관성, 빠른 배포 등 다양한 이점 있음.
컨테이너가 소수일 때는 커멘드 라인 인터페이스 명령으로 관리 가능하지만
많으면 힘들다. → 해당 부분을 처리하는 관리자가 필요
퍼블릭하게는 쿠버네티스 같은 거 사용 가능
오픈소스 사용해서 셋업하면 해당 오케스트레이션 서비스 관리하는 데 시간 많이 필요할 수 있다.
→ 이걸 줄이기 위해 관리형 컨테이너 오케스트레이션 서비스인 ECS를 제공한다.
자체 클러스터 관리 및 구성 관리 시스템 등을 걱정하지 않아도 됨.
● ECS 기본 구조
- 컨테이너를 컨트롤하는 부분 : AWS에서 직접 관리
사용자는 해당 엔드포인트에 작업정의라고 하는 작업 명세를 전달
- 컨테이너가 수행되는 EC2 인스턴스 클러스터 : 사용자가 관리
● 서버리스 컴퓨팅
- 서버를 관리하지 않고 애플리케이션과 서비스를 구축하고 실행할 수 있다.
- 사용자가 서버를 프로비저닝, 관리할 필요가 없다
- 사용량에 따라 조정
- 유휴 상태에 대한 비용을 지불할 필요가 없다.
- 가용성 및 내결함성 내장
예) 람다 Lambda : 실행될 때에만 비용 청구. 트래픽 없으면 비용 x.
- 모든 컴퓨팅 리소스 관리를 실행.(완전 관리형 컴퓨팅 서비스)
- 상태 비저장으로 코드가 실행된다.
> 상태 비저장 : 람다함수가 호출될 때에만 기동되어 작업을 수행하고 그 외에는 기동되어있지 않음.
- 다국어 지원
- 이벤트에 대한 응답으로 람다 함수를 사용할 수 있다.
이벤트 소스는 이벤트를 게시, 람다 함수는 이벤트를 실행
예2) 람다 예시 : 썸네일 생성
사용자가 이미지를 S3로 업로드 → S3가 이벤트 소스가 되어서 람다 함수에 이벤트를 보낸다 → 람다 함수가 이미지를 읽어와 이미지 크기를 조정하고 대상 버킷에 저장한다.
→ 여기서 인프라를 따로 프로비저닝하거나 그럴 필요가 없었다.
→ 모두 서버리스 서비스로 이루어져있기 때문.
● 서버리스 애플리케이션 사용 사례
웹 어플리케이션, 백엔드, 데이터 처리, 챗봇, Amazon Alexa, IT 자동화
→ 사용성, 안전성 등 인프라 관리에 신경 쓰지 않고 서비스에 집중할 수 있다.
'인프라 > AWS 강의' 카테고리의 다른 글
[AWS] 강의 4 - AWS 클라우드 핵심 서비스 소개 3 (0) | 2022.06.23 |
---|---|
[AWS] 강의 3 - AWS 클라우드 핵심 서비스 소개 2 (0) | 2022.06.20 |
[AWS] 강의 1 - AWS 클라우드 소개 (0) | 2022.06.13 |