EBS, EFS, FSx 와 AWS Backup (블록, 파일 스토리지와 백업)
EBS 볼륨 유형(gp3 가 2025-09 에 64 TiB, 80,000 IOPS 로 커짐, io2 Block Express), 스냅숏과 복구, EFS 와 FSx 네 가지의 차이, AWS Backup 의 백업 계획, 볼트 잠금, 논리적 에어갭 볼트로 랜섬웨어에 대비하는 법을 정리합니다.
무엇을 고르나
| 필요 | 서비스 | 성격 |
|---|---|---|
| 인스턴스 하나에 붙는 디스크 | Amazon EBS | 블록 스토리지, AZ 하나에 묶임 |
| 여러 Linux 인스턴스, 컨테이너가 함께 쓰는 폴더 | Amazon EFS | NFS, 리전 단위(여러 AZ), 자동 확장 |
| Windows 파일 공유(SMB, AD 연동) | FSx for Windows File Server | 완전 관리형 Windows 파일 서버 |
| HPC, ML 학습의 초고속 병렬 파일 시스템 | FSx for Lustre | S3 와 연결해 데이터 로드 |
| 온프레미스 NetApp 과 같은 기능(스냅숏, SnapMirror, 멀티 프로토콜) | FSx for NetApp ONTAP | NFS, SMB, iSCSI 동시 지원 |
| ZFS 기반 저지연 NFS | FSx for OpenZFS | 스냅숏, 클론 |
| 버킷을 파일처럼 | S3 Files, Mountpoint for Amazon S3 | S3 문서 참고 |
EBS 볼륨 유형
| 유형 | 용도 | 핵심 숫자 |
|---|---|---|
| gp3 | 범용 SSD, 거의 모든 경우 기본 | 기본 3,000 IOPS, 125 MiB/s 포함. 크기와 따로 최대 80,000 IOPS, 2,000 MiB/s, 64 TiB (2025-09 상향) |
| gp2 | 예전 범용 SSD | GB 당 3 IOPS 로 성능이 크기에 묶임. gp3 로 옮기면 대개 더 쌈 |
| io2 Block Express | 고성능 DB | 최대 256,000 IOPS, 64 TiB, 99.999% 내구성 |
| st1, sc1 | HDD 처리량형, 콜드 | 순차 읽기 위주 로그, 아카이브 |
서울 리전 단가(2026-10 Price List API 기준)는 gp3 가 GB-월 0.0912 USD, gp2 가 0.114 USD 입니다. 같은 용량이면 gp3 가 약 20% 싸고, 기본 성능도 작은 볼륨에서는 gp3 가 더 좋습니다. gp2 를 gp3 로 바꾸는 것은 볼륨을 붙인 채로 할 수 있습니다.
aws ec2 modify-volume --volume-id vol-0abc1234def567890 --volume-type gp3 --iops 6000 --throughput 250
aws ec2 describe-volumes-modifications --volume-ids vol-0abc1234def567890주의 볼륨 수정은 한 번 한 뒤 6 시간이 지나야 다시 할 수 있습니다. 크기는 늘릴 수만 있고 줄일 수 없습니다. 크게 잡았다가 줄이려면 새 볼륨으로 데이터를 옮겨야 합니다.
인스턴스 쪽 한도도 본다
볼륨이 80,000 IOPS 를 내도 인스턴스의 EBS 대역폭이 작으면 거기서 막힙니다. 인스턴스 유형 문서의 "EBS 최적화 기준 대역폭과 IOPS" 를 같이 봅니다. 작은 인스턴스는 30 분 남짓의 버스트 뒤 기준 성능으로 떨어집니다.
스냅숏
- 스냅숏은 증분이고 S3 에 저장됩니다(직접 보이지는 않음). 첫 스냅숏은 전체, 이후는 바뀐 블록만.
- 스냅숏으로 만든 볼륨은 처음 읽을 때 블록을 S3 에서 가져와서 느립니다. 운영 DB 복구처럼 바로 빨라야 하면 빠른 스냅숏 복원(FSR) 을 켜거나 미리 전체를 한 번 읽어 둡니다(초기화).
- 오래 보관할 스냅숏은 스냅숏 아카이브로 옮겨 저장 단가를 낮춥니다(최소 90 일, 복원에 시간 걸림).
- 휴지통(Recycle Bin) 규칙을 걸면 실수로 지운 스냅숏과 AMI 를 정해진 기간 안에 되살릴 수 있습니다.
- 2025-10 에는 스냅숏 없이 같은 AZ 에서 볼륨을 곧바로 복제하는 EBS 볼륨 클론이 나와서, 테스트 환경을 운영 데이터로 빠르게 만들 수 있게 됐습니다.
Amazon EFS
EFS 는 NFS v4 로 마운트하는 관리형 파일 시스템입니다. 용량을 미리 잡지 않고 쓴 만큼 냅니다.
- 스토리지 클래스: Standard, Infrequent Access(IA), Archive. 수명 주기 정책으로 며칠 안 읽은 파일을 IA, Archive 로 옮기고, 다시 읽으면 Standard 로 되돌릴 수 있습니다.
- 처리량 모드: Elastic(권장, 쓰는 만큼 자동), Provisioned, Bursting.
- 마운트 대상은 AZ 마다 하나씩 만들고 보안 그룹에서 TCP 2049 를 엽니다.
- ECS, EKS, Lambda 모두 EFS 를 볼륨으로 붙일 수 있습니다. 액세스 포인트로 애플리케이션마다 루트 디렉터리와 POSIX 사용자를 고정합니다.
sudo mount -t efs -o tls,accesspoint=fsap-0123456789abcdef0 fs-0123456789abcdef0:/ /mnt/shared작은 파일을 아주 많이 읽고 쓰는 워크로드(예: 거대한 node_modules, Git 저장소)는 NFS 왕복 지연 때문에 느립니다. 이런 경우는 로컬 디스크나 FSx for OpenZFS 가 낫습니다.
FSx 고르기
| 질문 | 답 |
|---|---|
| Windows 서버의 공유 폴더를 옮긴다 | FSx for Windows File Server. AD 연동, DFS, 섀도 복사본 |
| GPU 학습 노드 수백 대가 같은 데이터셋을 읽는다 | FSx for Lustre. S3 버킷과 연결(데이터 리포지토리 연결)해 지연 로딩 |
| 온프레미스 NetApp 과 복제하거나 NFS, SMB 를 같이 써야 한다 | FSx for NetApp ONTAP. 2025-12 부터 S3 액세스 포인트로 복사 없이 S3 API 로도 읽음 |
| Linux 앱에 ZFS 스냅숏과 클론, 낮은 지연이 필요하다 | FSx for OpenZFS |
AWS Backup
AWS Backup 은 EBS, EC2, RDS, Aurora, DynamoDB, EFS, FSx, S3 등의 백업을 한 정책으로 관리합니다.
- 백업 계획: 주기(예: 매일 03:00), 보존 기간, 콜드 스토리지 전환, 다른 리전이나 계정으로 복사를 정의합니다.
- 리소스 할당: 태그(
backup=daily)로 대상을 고르면 새 리소스도 자동으로 들어옵니다. - 볼트 잠금(Vault Lock): 규정 준수 모드로 잠그면 관리자도 보존 기간 전에 백업을 지우지 못합니다.
- 논리적 에어갭 볼트: 백업을 AWS 가 관리하는 격리된 계정 쪽에 잠가 보관하고, 다른 계정과 공유해 복원할 수 있습니다. 계정이 통째로 탈취돼도 백업은 남습니다.
- 복원 테스트: 정해진 주기로 실제 복원을 돌려 백업이 쓸 만한지 검증합니다.
- Organizations 의 백업 정책으로 모든 계정에 같은 계획을 강제할 수 있습니다.
{
"BackupPlanName": "daily-35d-copy-tokyo",
"Rules": [{
"RuleName": "daily",
"TargetBackupVaultName": "prod-vault",
"ScheduleExpression": "cron(0 18 * * ? *)",
"Lifecycle": { "DeleteAfterDays": 35 },
"CopyActions": [{
"DestinationBackupVaultArn": "arn:aws:backup:ap-northeast-1:444455556666:backup-vault:dr-vault",
"Lifecycle": { "DeleteAfterDays": 35 }
}]
}]
}cron(0 18 * * ? *) 은 UTC 기준이라 한국 시각으로 새벽 3 시입니다. 백업 시각을 정할 때 시간대를 꼭 확인합니다.
자주 하는 실수
- EBS 를 다른 AZ 의 인스턴스에 붙이려 함: EBS 는 AZ 에 묶입니다. 스냅숏으로 다른 AZ 에 새 볼륨을 만듭니다.
- 인스턴스 스토어에 중요한 데이터: 중지, 종료, 하드웨어 장애 때 사라집니다.
- 백업은 있는데 복원해 본 적 없음: 복원 테스트를 정기적으로 돌립니다.
- 같은 계정, 같은 리전에만 백업: 계정 탈취와 리전 장애에 무력합니다. 다른 계정과 다른 리전으로 복사합니다.