AWS Backup
더 많은 작업
- AWS Backup
- 여러 AWS 서비스와 온프레미스 자원의 백업을 한곳에서 정책으로 자동화하고 감사하는 완전 관리형 데이터 보호 서비스
AWS Backup은 서비스마다 따로 하던 백업 작업을 한데 모으는 서비스이다. EBS 스냅샷, RDS 자동 백업, DynamoDB 백업, EFS 백업을 각각 스크립트로 돌리는 대신 백업 계획(backup plan) 하나에 일정, 보존 기간, 복사 대상을 정해 두면, 태그나 리소스 ID로 지정한 자원을 AWS Backup이 일정대로 백업하고 만료되면 지운다. 백업 결과는 백업 볼트(backup vault)에 저장되고, 콘솔 하나에서 백업·복원·복사 작업을 모니터링한다.
AWS Backup은 자신이 만든 백업만 관리한다. 각 서비스 콘솔에서 따로 만든 스냅샷은 AWS Backup의 정책과 보존 규칙이 적용되지 않는다.
| 항목 | 설명 |
|---|---|
| 백업 계획 | 백업 규칙의 묶음. 규칙마다 빈도(매시간, 12시간, 매일, 매주, 매월 또는 cron 식), 백업 시작 기간(window), 보존 기간, 콜드 스토리지 전환 시점, 다른 리전·계정으로의 복사 동작을 정한다. |
| 리소스 할당 | 백업 계획이 보호할 자원을 고른다. 태그(예: backup=daily), 리소스 유형, 리소스 ARN으로 지정한다. 태그로 할당하면 새로 만든 자원도 태그만 붙이면 자동으로 보호된다.
|
| 백업 볼트 | 복구 지점(recovery point)을 저장하는 컨테이너. 볼트별로 KMS 키와 접근 정책을 둔다. |
| 복구 지점 | 백업 하나하나. 여기서 원래 자원이나 새 자원으로 복원한다. |
| 수명 주기 | 지원되는 자원은 일정 기간 뒤 저렴한 콜드 스토리지로 옮기고, 보존 기간이 끝나면 삭제한다. |
| 연속 백업 | 지원되는 자원(예: RDS, S3)은 전체 백업과 트랜잭션 로그를 이어 받아 최대 35일 안의 원하는 시점으로 1초 단위 정밀도로 되돌리는 특정 시점 복구(PITR)를 제공한다. |
AWS Backup이 보호하는 주요 자원은 다음과 같다. 서비스와 리전마다 지원 기능(교차 리전 복사, 교차 계정 복사, 콜드 스토리지 등)이 다르므로 실제 설계 때는 기능 가용성 표를 확인한다.
- 컴퓨팅·블록: 아마존 EC2 인스턴스, 아마존 EBS 볼륨
- 파일·객체: 아마존 EFS, 아마존 FSx(Windows File Server, Lustre, NetApp ONTAP, OpenZFS), 아마존 S3
- 데이터베이스: 아마존 RDS, 아마존 Aurora, 아마존 DynamoDB, 아마존 DocumentDB, 아마존 Neptune, 아마존 Timestream, 아마존 Redshift Serverless
- 기타: 아마존 EKS, AWS CloudFormation 스택, AWS Storage Gateway 볼륨, 온프레미스 VMware 가상 머신, EC2의 SAP HANA 데이터베이스
- 교차 리전 복사: 백업 계획의 복사 동작으로 백업을 다른 리전 볼트에 자동 복사한다. 리전 장애에 대비한 재해 복구, 원본과 일정 거리 이상 떨어진 곳에 백업을 두라는 규정에 쓴다.
- 교차 계정 복사: 백업을 같은 AWS Organizations 조직의 다른 계정 볼트로 복사한다. 운영 계정이 침해되거나 실수로 지워져도 별도 백업 계정에 사본이 남는다.
- 교차 계정 관리: Organizations의 관리 계정에서 백업 정책을 만들어 조직 단위(OU)나 계정에 붙이면 각 계정에 백업 계획이 자동으로 생긴다. 수백 개 계정의 백업 작업 상태를 한곳에서 본다.
다음은 매일 백업해 35일 보존하고, 다른 리전 볼트에 사본을 90일 보존하는 백업 계획 예이다.
{
"BackupPlanName": "prod-daily",
"Rules": [
{
"RuleName": "daily-35d",
"TargetBackupVaultName": "prod-vault",
"ScheduleExpression": "cron(0 17 ? * * *)",
"StartWindowMinutes": 60,
"Lifecycle": { "DeleteAfterDays": 35 },
"CopyActions": [
{
"DestinationBackupVaultArn": "arn:aws:backup:us-west-2:111122223333:backup-vault:dr-vault",
"Lifecycle": { "DeleteAfterDays": 90 }
}
]
}
]
}
AWS Backup Vault Lock은 볼트에 WORM(write-once-read-many) 설정을 거는 기능이다. 잠긴 볼트의 백업은 보존 기간이 끝날 때까지 루트 사용자를 포함해 누구도 지우거나 수명 주기를 바꿀 수 없다. 추가 요금은 없다.
| 모드 | 동작 | 용도 |
|---|---|---|
| 거버넌스 모드 | 충분한 IAM 권한을 가진 사용자는 잠금을 해제하거나 변경할 수 있다 | 지정된 관리자만 볼트를 바꾸도록 하는 내부 통제 |
| 규정 준수 모드 | 설정 후 유예 기간(grace time)이 지나면 잠금과 볼트 설정을 고객도 AWS도 바꾸거나 지울 수 없다. 유예 기간 안에는 해제 가능 | 규제상 변경·삭제 불가 보관, 랜섬웨어 대비 |
보존 기간을 '항상'으로 둔 백업이 규정 준수 모드 볼트에 들어가면 영원히 지울 수 없으므로 보존 설정을 신중히 정해야 한다.
논리적 에어갭 볼트(logically air-gapped vault)는 규정 준수 모드 Vault Lock이 기본으로 걸린 특수 볼트이다. 다른 계정과 공유해 사고 시 그 계정에서 바로 복원할 수 있어 복구 시간을 줄인다.
| 서비스 | 자체 기능 | AWS Backup을 쓰는 이유 |
|---|---|---|
| EBS | 수동 스냅샷, Data Lifecycle Manager | EBS 외 다른 서비스와 같은 정책으로 관리, 교차 계정 복사, Vault Lock |
| RDS·Aurora | 자동 백업(보존 기간 내 특정 시점 복구), 수동 스냅샷 | 조직 전체 정책, 장기 보존, 다른 리전·계정 사본 자동화 |
| DynamoDB | 온디맨드 백업, 특정 시점 복구 | 같은 일정·보존 규칙과 감사 보고 |
| EFS | 자동 백업(AWS Backup을 사용) | 백업 계획과 보존 규칙을 직접 조정 |
서비스 자체 기능을 대체한다기보다 그 위에서 일정, 보존, 복사, 잠금, 감사를 한곳에 모으는 관리 계층으로 이해하면 된다. AWS Backup Audit Manager는 "모든 자원이 백업 계획에 들어 있는가", "보존 기간이 기준 이상인가" 같은 통제를 자동으로 점검해 보고서를 만든다.
- 여러 서비스(EC2, EBS, RDS, DynamoDB, EFS 등)의 백업을 한곳에서 정책으로 관리하고 운영 부담을 줄이라는 요구는 AWS Backup이다. 서비스별 스크립트나 Lambda로 스냅샷을 만드는 선택지보다 낫다.
- 여러 계정의 백업 정책을 일괄 적용하려면 Organizations와 AWS Backup 백업 정책을 쓴다.
- 백업을 다른 리전에 자동으로 두려면 백업 계획의 교차 리전 복사, 계정 침해에 대비하려면 교차 계정 복사를 쓴다.
- 백업이 정해진 기간 동안 루트 사용자도 지울 수 없어야 한다면 Vault Lock 규정 준수 모드이다. 권한 있는 관리자는 풀 수 있어야 하면 거버넌스 모드이다.
- 태그 기반 리소스 할당을 쓰면 새로 만든 자원도 자동으로 백업 대상이 된다.
- AWS Backup란 무엇인가요? – AWS
- AWS Backup 기능 가용성 – AWS
- AWS Backup 볼트 잠금 – AWS
- 여러 AWS 계정에서 AWS Backup 리소스 관리 – AWS
- 연속 백업 및 시점 복구(PITR) – AWS