[AWS] AWS 기초
1. EC2 (Elastic Compute Cloud)
-
늘어나는 임대 컴퓨터
- Instance
- 가상 컴퓨터 환경
- 원하는 만큼 구축 가능
- Instance Type
- CPU, 메모리, 스토리지, 네트워킹 용량 등 선택 가능
- Key Pair
- 공개키-개인키 보안 방식
- SSH 접속, 데이터 암호화하여 교환할 때 사용
- Instance Store Volume
- 임시 데이터를 저장하는 스토리지 볼륨
- 인스턴스 중단 및 종료 시 삭제됨
2. EBS (Elastic Block Store)
- 인스턴스에 추가적으로 달아 사용되는 블록 수준의 스토리지 서비스
- 인스턴스에 연결된 스토리지 용량 관리
- EC2와의 차이점
- EC2는 인스턴스의 CPU, 메모리, 디스크 용량 등의 컴퓨팅 리소스 관리
3. S3 (Simple Storage Service)
-
늘어나는 데이터 저장소
-
여러 형식의 데이터가 S3로 이동하여 어디서든 사용할 수 있게 저장된 후 다양한 형태로 검색 및 활용됨
- 보안 이슈 존재 -> IM 서비스로 커버
Use Case
- Data Lake
- Image
- Video
- CSV
- JSON
- Static Website Hosting
- HTML
- CSS
- JavaScript
- BackUp & Archive
- Server Log File
- App Log File
- DB BackUp file
- 버전 관리도 가능
4. ELB (Elastic Load Balancer)
-
트래픽 자동 분산기
-
둘 이상의 가용 영역 내에서 들어오는 앱 트래픽을 인스턴스들에게 자동으로 분산
- 가용성, 내결함성
- 전체적 요청 흐름에 방해 없음
- 컴퓨터 리소스의 상태 모니터링 가능
4 types of ELB
5. Auto Scaling
- EC2 인스턴스 모음
- 내결함성
- 비정상 인스턴스 감지
- 가용성
- 최적의 용량으로 감지
- 비용 관리 가능
ELB & Auto Scaling
- ELB: 인스턴스 분배
- Auto Scaling: 인스턴스 수 조절 -> 트래픽 변화에 대처
6. ECS (Elastic Contatiner Service)
-
컨테이너 오케스트레이션
-
ECS Layers
7. EKS (Elastic Kubernetes Service)
-
쿠버네티스 관리형 서비스
-
workflow
8. Lambda
-
서버리스 컴퓨팅 플랫폼
- 서버 설정 없이 곧바로 코드 실행
- 이벤트 트리거 방식
- 최대 실행 시간 15분
- 한 번 쏘면 15분
- 건 당으로 요금 부과
- Amazon LINUX2 기반 실행
- 컨테이너를 지원하진 않음
- 엔지니어링
- 데이터 전처리 (로그데이터 처리 등)에 배치성으로 사용
- HW를 거치지 않고 뿌리기 때문에 아마존 입장에서도 저렴함
- 당근마켓에서 사진 crop 기능에 Lambda 사용
9. Fargate
- 서버리스 기반 컴퓨팅 플랫폼
- 컨테이너 환경에서 사용 가능
- 전체적으로 봤을 땐 Fargate가 더 빠름
- reponse time만 보면 Lambda가 더 빠름