EBS (Elastic Block Storage)
EBS란?
AWS의 가상 하드디스크다. EC2 인스턴스에 영구 블록 스토리지 볼륨을 제공한다.
EC2가 CPU·메모리 처리를 담당한다면, EBS는 데이터 저장을 담당한다. 둘은 네트워크로 연결된 별개의 리소스다.
핵심 특징
EC2와 독립적으로 존재
EC2 인스턴스가 종료되어도 EBS는 별도로 유지된다. 인스턴스를 삭제해도 EBS는 남아 있고, 새 인스턴스에 다시 연결할 수 있다.
- 인스턴스 정지 시 EBS 요금만 청구되고 컴퓨팅 요금은 없음
- 물리 서버와 달리 인스턴스 교체 시 EBS만 재연결하면 됨
유연한 연결 구성
- 하나의 인스턴스에 여러 EBS 볼륨 부착 가능 (USB처럼)
- EBS Multi Attach: 하나의 EBS를 여러 EC2에 동시에 부착 가능 (io1/io2 타입만)
가용영역(AZ) 제약
EBS는 EC2와 같은 AZ(가용영역)에 있어야 한다. 다른 AZ의 볼륨은 연결할 수 없다.
다른 AZ로 옮기려면 스냅샷을 찍고 대상 AZ에서 새 볼륨을 생성해야 한다.
EBS 볼륨 타입
| 타입 | 미디어 | 특징 | 용도 |
|---|---|---|---|
| gp3 (범용 SSD) | SSD | 균형 잡힌 성능, 비용 효율 | 일반적인 워크로드 |
| io2 (프로비저닝 IOPS) | SSD | 최고 성능 (IOPS 64,000) | DB 등 고성능 요구 |
| st1 (쓰루풋 최적화) | HDD | 높은 처리량 | 빅데이터, 로그 처리 |
| sc1 (콜드 HDD) | HDD | 가장 저렴 | 접근 빈도 낮은 데이터 |
IOPS(Input/Output Operations Per Second) 수치가 높을수록 데이터 읽기/쓰기가 빠르다.
EBS vs Instance Storage
| 구분 | EBS | Instance Storage |
|---|---|---|
| 연결 방식 | 네트워크 연결 | 내장형 |
| 속도 | 상대적으로 느림 | 빠름 |
| 영속성 | 인스턴스 삭제 후에도 유지 | 인스턴스 삭제 시 함께 소멸 |
| 유연성 | 분리·이전 가능 | 불가 |
| 용도 | 영구 저장 | 임시 데이터, 캐시 |
EBS 볼륨 추가하기 (Linux)
AWS 콘솔에서 볼륨을 생성하고 인스턴스에 연결한 뒤, 인스턴스 내부에서 아래 작업이 필요하다.
1. 연결된 볼륨 확인
lsblk
# 또는
ls -asl /dev/xvd*2. 파일시스템 포맷
새로 연결한 볼륨은 파일시스템이 없어서 바로 쓸 수 없다. 포맷이 필요하다.
# 파일시스템 여부 확인 (data라고 뜨면 미포맷)
file -s /dev/xvdb
# ext4로 포맷
sudo mkfs -t ext4 /dev/xvdb3. 마운트
# 마운트 포인트 생성
mkdir /xvdb
# UUID 확인
blkid
# 재부팅 후에도 자동 마운트되도록 fstab 등록
vi /etc/fstab
# UUID=xxxx-xxxx /xvdb ext4 defaults,nofail 0 2
# 마운트 적용
mount -a
# 확인
df -hLinux는 Windows와 달리 마운트 설정을 수동으로 해줘야 한다.
fstab에 등록하지 않으면 재부팅 후 마운트가 풀린다.
EBS 볼륨 크기 확장
1. AWS 콘솔에서 크기 변경
EBS 볼륨 → 수정 → 원하는 크기 입력 → 적용 (상태가 modifying → optimizing → completed 로 변경됨)
2. 인스턴스 내부에서 파일시스템 확장
콘솔에서 크기를 늘려도 OS는 자동으로 인식하지 못한다. 파일시스템도 직접 확장해야 한다.
# ext4의 경우
sudo resize2fs /dev/xvdb
# XFS의 경우
sudo xfs_growfs -d /xvdb
# 확인
df -h스냅샷 (Snapshot)
EBS 볼륨의 특정 시점 백업이다. S3에 저장된다.
- 스냅샷으로 다른 AZ나 리전에 새 볼륨을 생성할 수 있음 → AZ 간 데이터 이동에 활용
- 증분 백업 방식: 처음 이후에는 변경된 블록만 저장
- AMI(Amazon Machine Image)를 만들 때 EBS 스냅샷이 기반이 됨
주의사항
- 같은 AZ 필수: EBS와 EC2는 반드시 같은 가용영역에 있어야 연결 가능
- 포맷 필수: 새 볼륨은 파일시스템 구축 후에만 사용 가능
- fstab 등록: Linux에서 재부팅 후에도 마운트 유지하려면
/etc/fstab에 등록 필요 - 용량 확장 후 파일시스템도 확장: 콘솔에서 크기만 늘리면 안 되고 OS 내부에서
resize2fs등 명령 추가 실행 필요
댓글 (0)