참고 영상
EBS란?
Elastic Block Store의 약자로 Amazon EC2 인스턴스에서 사용할 수 있는 블록 수준 스토리지 볼륨을 제공하는 서비스이다.
- Amazon EC2 인스턴스를 중지 또는 종료하더라도 연결된 EBS 볼륨의 모든 데이터를 사용 가능
EBS 볼륨은 가용 영역 내에 자동으로 복제되어 구성요소 장애로 부터 보호해주며, 고가용성 및 내구성을 제공한다.
EBS볼륨은 워크로드 실행에 필요한 지연 시간이 짧고 일관된 성능을 제공한다.
프로비저닝한 부분에 대해서만 저렴한 비용을 지불한다.
EC2와 EBS의 관계
EC2 인스턴스와 EBS는 네트워크로 묶여있어 인스턴스를 upgrage혹은 downgrade할 때 굉장히 용이하다.
또한, 하나의 EBS를 여러 EC2에 장착시키는 것 또한 가능하다.
인스턴스 뿐만 아니라 EBS 또한 여러개를 하나의 인스턴스에 붙일 수 있어 효율적인 운영이 가능하다.
EBS 특징
- 가상 하드 드라이브
- EC2인스턴스가 종료되어도 계속유지 가능
-> 루트 볼륨으로 사용한다면 EC2종료시 같이 삭제됨(설정으로 따론 존속 시킬 순 있음)
- EC2와 같은 가용영역에 존재
EBS 타입
- 범용(General Purpose or GP3) : SSD
- 프로비저닝 된 IOPS(Provisioned IOPS or io2) : SSD
IOPS란?
볼륨이 지원할 수 있는 요청된 초당 I/O 작업 수입니다.
- 쓰루풋 최적화 (Throughput Optimized HDD or ST1)
- 콜드 HDD (SC1)
- 마그네틱 (Standard)
자세한 내용은 여기에
Snapshot
EBS를 효율적으로 저장하는 방법
특징
- 특정 시간에 EBS 상태의 저장본이다.
-> EBS의 사진을 찍어둔 개념
- 필요시 snapshot을 통해 특정 시간의 EBS를 복구할 수 있다.
- S3에 보관된다.
-> 증분식 저장
증분식 저장이란?
이처럼 그때 그때의 모든 EBS상태를 기억하는 것이 아닌 변화된 부분만을 기억하여 메모리 효율을 높히는 방식
AMI
EC2 인스턴스를 실행하기 위해 필요한 정보를 모은 단위
-> OS, 아키텍쳐 타입(32-bit, 64-bit), 저장공간 용량 등
특징
- EC2를 복제하거나 다른 리전->계정으로 전달 가능
- snapshot을 기반으로 AMI구성 가능
구성
- 1개 이상의 EBS snapshot
- 인스턴스 저장기반의 경우 root 볼륨에 대한 템플릿
- 사용 권한 (어떤 AWS account가 사용할 수 있는지)
- 블록 디바이스 맵핑(EC2 인스턴스를 위한 볼륨정보)
-> EBS가 무슨 용량으로 몇개 붙는지
타입
- EBS 기반
-> 운용이 편리하지만 네트워크로 연결되어있다보니 속도면에서 느리다.
-> snapshot을 기반으로 root device 생성
- 인스턴스 저장 기반
-> 인스턴스 내부에 저장하여 속도는 빠르나 인스턴스가 사라지만 같이 사라지므로 영구적이지 않은 캐시데이터 같은 것을 저장한다.
-> S3에 저장된 템플릿을 기반으로 생성
AMI 만드는 과정
- EBS를 snapshot으로 찍는다.
-> os, 파일, 실행권한 등 s3에 담긴다.
- s3에 있는 snapshot을 기반으로 AMI에 등록한다.
- 해당 AMI를 가지고 EC2를 실행하거나 다른 유저에게 복사해준다.