EC2
= Elastic Compute Cloud (IaaS = Infrastructure as a Service)
EC2 Instance
= VM(Virtual Machine)으로 Data는 가상 드라이브 또는 EBS 볼륨에 저장하고 사용합니다.
데이터 저장공간은 하드웨어 측면에서는 EC2 Instance Store, 네트워크 기반으로는 EBS & EFS에서 관리합니다.
EBS(Elastic Block Store)
= AWS EC2와 연결도 되고 RDS(Relational Database Service)에서 사용되는 원시 블록 수준의 스토리지입니다.
EFS(Elastic File System)
Amazon Elastic File System (Amazon EFS) 은 완전히 탄력적인 서버리스 파일 스토리지를 제공하므로 스토리지 용량 및 성능을 프로비저닝하거나 관리하지 않고도 파일 데이터를 공유할 수 있습니다.
ELB(Elastic Load Balancer)
= 가용영역(Available Zone)에 있는 여러 대상 및 가상 어플라이언스에서 들어오는 어플리케이션 트래픽을 자동으로 분리합니다.
ASG(Auto Scaling)
= 애플리케이션을 로드하는데 필요한 EC2 인스턴스 수를 정확히 확보하는데 사용합니다.
Auto Scaling 그룹 이라고 하는 EC2 인스턴스 모음을 생성 합니다.
최소 필요한 인스턴스와 이상적인 할당량 그리고 만일을 대비한 여분의 인스턴스 수까지 고려해서 ASG 그룹의 크기를 생성합니다.
EC2 UserData script
= 인스턴스를 BootStrap하는 스크립트이며, 가상머신(VM)이 시작할 때 일괄적으로 수행하는 작업입니다. (부팅시 최초 1회 수행)
예:) 업데이트 설치, 소프트웨어 설치, 일반적인 파일을 인터넷으로부터 받기 등..
EC2 인스턴스를 생성하고 나서 접속할 때 공인 IP로 접속하면 자동으로 사설 IP와 연동하여 웹 호출이 진행됩니다.
인스턴스를 중지하고 재시작할 경우 공인 IP는 매번 바뀌게 되지만, 사설 IP는 초기에 받은 상태를 그대로 유지합니다.
AWS EC2 Instance 네이밍 규칙
- m5.2xlarge
1) m: 인스턴스 클래스(> m으로 시작하기에 범용 인스턴스임을 알 수 있음)
2) 5: 인스턴스 세대(5세대)
3) 2xlarge: 인스턴스 클래스에 부여된 사이즈(용량)
EC2 Instance에는 8가지의 타입이 존재합니다.
- General Purpose(범용) 인스턴스
- Compute Optimized(컴퓨팅 최적화) 인스턴스
- Memory Optimized(메모리 최적화) 인스턴스
- Accelerated Computing(가속화된 컴퓨팅) 인스턴스
- Storage Optimized(스토리지 최적화) 인스턴스
- Instance Feature(인스턴스 기능) 인스턴스
- Measuring Instance Performance(인스턴스 성능측정) 인스턴스
- HPC Optimized(고성능 컴퓨팅에 최적화) 인스턴스
이 중 Developer에 나올만한 것들 중요한 것만 추려서 정리하겠습니다.
1) General Purpose(범용)
- 웹 서버나 코드 저장소와 같은 다양한 작업에 적합하며, 컴퓨팅, 메모리, 네트워킹 사이에서 밸런스를 잘 유지합니다.
- 가장 많이 사용하는 인스턴스 타입이며 T, M, A로 시작하게 됩니다.
2) Compute Optimized(컴퓨팅 최적화)
- 컴퓨터 집약적인 작업에 최적화된 인스턴스입니다.
- 고성능 프로세서 작업할 때 많이 사용하며 주로 배치 프로그램에서 일부 데이터에 대해서 일괄적으로 작업을 처리할 때 사용합니다.
- 미디어 트랜스 코딩
- 고성능 웹서버
- 게임서버
- 인스턴스 타입은 C로 시작합니다.
3) Memory Optimized(메모리 최적화)
- 대규모 데이터 셋을 처리하는 워크로드를 위해 설계된 인스턴스입니다.
- 고성능의 관계형 DB나 비관계형 DB(RDS, NoSQL)
- Elastic Cache와 같은 분산 웹 스타일 캐시 저장소
- BI(Business Intelligence)에 최적화된 In-Memory Database
- 대규모 비정형 데이터를 실시간으로 처리하는 Application에 사용
- 인스턴스 타입은 R로 시작하지만 x1, x2, ... z1도 있습니다.
4) Storage Optimized(스토리지 최적화)
- 로컬 스토리지에서 대규모의 데이터셋에 액세스할 때 적합한 인스턴스
- 고주파온라인 트랜잭션처리(OLTP) 시스템에 사용
- 관계형DB & NoSQL 데이터베이스
- Redis와 같은 메모리 데이터베이스의 캐시
- 데이터 웨어 하우징 Application
- 분산파일 시스템
AWS에서 관리되는 인스턴스 유형과 내용 모두 볼 수 있음
'Cloud' 카테고리의 다른 글
AWS - EC2 Instance 구매 옵션 (0) | 2023.01.17 |
---|---|
AWS - Security group (2) | 2023.01.17 |
Access Key & IAM Role & IAM Service (0) | 2023.01.17 |
AWS - CLI & 사용자 정보 보호 (0) | 2023.01.17 |
About IAM (0) | 2023.01.17 |