학습 목표

이 장의 서술 원칙 — 금액 대신 구조

먼저 볼 것 — 무엇이 과금 축인가

금액을 몰라도 판단할 수 있는 이유는, AWS 요금이 서비스마다 정해진 몇 개의 축으로만 매겨지기 때문입니다. 어떤 설계 변경이 어느 축을 건드리는지 알면 방향은 결정됩니다.

대표적인 과금 축과 그 축을 줄이는 설계 행동
과금 축 대표 예 이 축을 줄이는 행동
가동 시간 EC2 인스턴스 시간, NAT 게이트웨이 시간, 인터페이스 엔드포인트 시간, RDS 인스턴스 시간 쓰지 않을 때 끄기, 항상 켜 둘 필요가 없는 구성 요소를 없애기, 서버리스로 대체하기
저장 용량 S3 저장량, EBS 볼륨 크기, 스냅샷, 백업 보관 수명 주기 규칙으로 계층 이동과 만료, 쓰지 않는 볼륨과 스냅샷 삭제
요청 · 호출 수 S3 요청, Lambda 호출, API Gateway 요청, KMS 호출 캐싱, 배치 처리, S3 버킷 키처럼 호출을 묶는 기능
처리 데이터 양 NAT 게이트웨이 처리량, 인터페이스 엔드포인트 처리량, 로드 밸런서 처리 단위 트래픽 경로 자체를 바꿔서 해당 장치를 지나지 않게 하기
데이터 전송 인터넷 송신, 가용 영역 간, 리전 간 배치 조정, 캐싱, 압축, 경로 변경
프로비저닝된 용량 프로비저닝된 IOPS, DynamoDB 프로비저닝 용량, 예약된 동시성 실사용에 맞춰 라이트사이징하거나 온디맨드 모드로 전환

데이터 전송 요금의 방향성 SAA 빈출

데이터 전송은 양이 아니라 방향으로 요금이 정해집니다. 이 비대칭 하나가 비용 도메인 문항의 상당수를 설명합니다. 1장에서 개요를 봤고, 여기서는 설계 판단까지 내려갑니다.

데이터 전송 방향별 과금 범주 지도 데이터가 움직이는 일곱 방향을 한 줄에 하나씩 놓고, 출발지에서 도착지로 가는 화살표마다 무료, 과금, 비쌈 세 범주 가운데 하나만 표시한 지도입니다. 금액은 쓰지 않습니다. 인터넷에서 리전 안으로 들어오는 수신은 무료입니다. 같은 가용 영역 안에서 프라이빗 IP 로 주고받는 통신도 무료입니다. 같은 리전 안에서 가용 영역을 넘는 통신과 리전 사이의 통신은 과금 대상입니다. AWS 에서 인터넷으로 나가는 송신은 가장 큰 전송 비용 항목이라 비쌈으로 표시했습니다. NAT 게이트웨이를 지나는 트래픽은 게이트웨이가 떠 있는 시간 요금과 통과한 모든 기가바이트의 처리 요금이 겹쳐 붙으므로 이 줄만 강조 테두리로 표시했습니다. 목적지가 같은 리전의 Amazon S3 여도 처리 요금이 붙기 때문에 게이트웨이 엔드포인트로 경로를 바꾸는 것이 유일한 절감입니다. 마지막 줄은 CloudFront 경유입니다. 엣지 캐시에 적중한 만큼 오리진에서 나가는 송신량 자체가 줄어듭니다. 방향별 과금 범주 — 금액이 아니라 방향만 다룹니다 출발 도착 범주 설계에 주는 함의 인터넷 리전 안 리소스 무료 올리는 것은 비용 요인이 아닙니다 EC2 (AZ-a) EC2 (같은 AZ-a) 프라이빗 IP 무료 퍼블릭 IP 로 우회하지 않게 합니다 EC2 (AZ-a) EC2 (AZ-b) 과금 가용성과 전송비를 함께 삽니다 리전 A 리전 B 과금 교차 리전 복제와 DR 은 늘 과금됩니다 EC2 · S3 오리진 인터넷 (송신) 비쌈 가장 큰 전송 비용 항목입니다 프라이빗 서브넷 NAT 게이트웨이 경유 목적지가 어디든 비쌈 시간 요금 + 통과한 모든 GB 처리 요금 지나지 않게 만드는 것이 유일한 절감 오리진 (S3 · ALB) CloudFront 엣지 과금 적중한 만큼 오리진 송신이 줄어듭니다 확인 순서 — 인터넷으로 나가는가 · 가용 영역이나 리전을 넘는가 · NAT 를 지나는가 수신은 무료이므로 업로드 비용을 줄인다는 선택지는 대체로 의미가 없습니다
데이터 전송 방향별 과금 지도 — 인바운드, 같은 가용 영역 안의 프라이빗 IP 통신, 가용 영역 간, 리전 간, 인터넷 아웃, NAT 게이트웨이 경유, CloudFront 경유 각 화살표에 무료 · 과금 · 리전 간 세 범주만 표시합니다. 비용 사고의 대부분이 이 지도의 화살표 하나를 잘못 그은 데서 나옵니다
방향별 과금 범주 비교 — 인바운드는 대체로 무료이고, 같은 가용 영역의 프라이빗 IP 통신이 가장 저렴하며, 가용 영역 간 · 리전 간 · 인터넷 아웃으로 갈수록 과금 대상이 늘어납니다. 축의 값은 범주이며 금액이 아닙니다
데이터 전송 방향별 과금 여부와 설계 함의 — 금액이 아니라 방향만 다룹니다
방향 과금 설계에 주는 함의
인터넷에서 AWS로 (수신) 대체로 무료 데이터를 올리는 것은 대체로 비용 요인이 아닙니다. 마이그레이션 방향이 유리한 이유입니다
AWS에서 인터넷으로 (송신) 과금 가장 큰 전송 비용 항목입니다. 송신량 자체를 줄이거나 CloudFront로 캐시해 오리진 송신을 줄입니다
같은 가용 영역, 프라이빗 IP 가장 저렴한 경로 퍼블릭 IP나 인터넷 경유로 우회하지 않도록 프라이빗 주소로 통신하게 합니다
같은 리전, 가용 영역 간 과금 다중 가용 영역은 가용성을 사지만 전송 비용을 함께 부릅니다. 대량 트래픽이 불필요하게 가용 영역을 넘지 않도록 배치합니다
리전 간 과금 교차 리전 복제, 리전 간 백업, 다중 리전 DR은 언제나 전송 비용을 동반합니다
NAT 게이트웨이 경유 시간 요금 + 처리 데이터 요금 목적지가 어디든 통과한 모든 기가바이트에 처리 요금이 붙습니다. 지나지 않게 만드는 것이 유일한 절감입니다

NAT 게이트웨이 비용을 VPC 엔드포인트로 줄인다

NAT 게이트웨이는 두 축으로 과금됩니다. VPC 사용 설명서는 게이트웨이가 사용 가능한 매 시간과 처리한 매 기가바이트에 요금이 부과되며, 처리 데이터 요금은 트래픽의 출발지와 목적지가 어디든 상관없이 적용된다고 명시합니다.

여기서 흔한 사고가 나옵니다. 프라이빗 서브넷의 인스턴스가 Amazon S3에서 대용량 객체를 읽으면, 그 트래픽은 같은 리전 안에 머무는데도 NAT 게이트웨이를 통과하면서 처리 요금이 붙습니다. 해결은 게이트웨이 엔드포인트로 경로를 바꾸는 것입니다.

VPC 엔드포인트 두 유형과 요금 구조
유형 대상 서비스 동작 방식 요금 구조
게이트웨이 엔드포인트 Amazon S3, Amazon DynamoDB 두 가지 라우팅 테이블에 경로를 추가합니다 사용에 대한 추가 요금이 없습니다
인터페이스 엔드포인트 (AWS PrivateLink) 대부분의 AWS 서비스와 파트너·타 계정 서비스 서브넷에 네트워크 인터페이스를 만듭니다 시간 요금 + 처리 데이터 요금

따라서 판단은 두 단계입니다. S3나 DynamoDB 트래픽이면 게이트웨이 엔드포인트가 거의 언제나 이깁니다 — 보안(인터넷 비경유)과 비용이 같은 답을 가리킵니다. 다른 서비스라면 인터페이스 엔드포인트를 쓰되, NAT 처리 요금과 엔드포인트 요금 중 어느 쪽이 큰지가 실제 판단 기준이 됩니다. 엔드포인트 자체의 동작은 4장 VPC 연결과 하이브리드에서 다룹니다.

s3-gateway-endpoint.sh — Amazon S3 트래픽을 NAT 게이트웨이에서 걷어내는 경로 변경 (리소스 ID와 리전은 예시입니다)
# 프라이빗 서브넷의 라우팅 테이블에 S3 게이트웨이 엔드포인트를 연결합니다.
aws ec2 create-vpc-endpoint \
  --vpc-id vpc-0123456789abcdef0 \
  --vpc-endpoint-type Gateway \
  --service-name com.amazonaws.ap-northeast-2.s3 \
  --route-table-ids rtb-0123456789abcdef0 rtb-0abcdef1234567890

# 어떤 게이트웨이 엔드포인트가 어느 라우팅 테이블에 붙어 있는지 확인합니다.
aws ec2 describe-vpc-endpoints \
  --filters Name=vpc-endpoint-type,Values=Gateway \
  --query 'VpcEndpoints[].[VpcEndpointId,ServiceName,RouteTableIds]' \
  --output table

CloudFront로 오리진 송신을 줄인다

Amazon CloudFront는 성능 도구로 먼저 배우지만, 비용 도메인에서도 자주 정답입니다. 이유는 단순합니다. 엣지 캐시에서 응답한 요청은 오리진까지 가지 않으므로 오리진의 인터넷 송신량 자체가 줄어듭니다.

다만 캐시할 수 없는 완전 동적 응답만 오가는 워크로드에서는 절감 효과를 기대하기 어렵습니다. "모든 트래픽에 CloudFront를 붙이면 싸진다"고 일반화하지 않습니다. CloudFront의 캐시 정책과 오리진 보호는 14장 엣지와 DNS에서 다룹니다.

컴퓨팅 약정 — 무엇을 얼마나 오래 쓸 것인가

컴퓨팅 비용을 줄이는 레버는 세 가지입니다. 덜 쓰기(라이트사이징·끄기), 싸게 사기(약정·스팟), 다른 모델로 바꾸기(서버리스·컨테이너)입니다. 이 절은 두 번째를 다룹니다.

컴퓨팅 약정 레버가 덮는 부분과 변동분이 남는 부분 시간에 따라 오르내리는 사용량 곡선을 그리고, 그 아래 영역을 두 부분으로 나눈 그림입니다. 축에는 눈금 값이 없습니다. 비율도 금액도 쓰지 않고 어느 부분을 무엇으로 덮는가만 다룹니다. 아래쪽 가로 띠는 시간이 흘러도 사라지지 않는 상시 기저 부하입니다. 이 부분은 Savings Plans 나 예약 인스턴스 같은 1년 또는 3년 약정으로 덮습니다. 약정은 시간당 사용량을 미리 약속하는 것이므로 그만큼은 쓰지 않아도 지불합니다. 그래서 확실히 상시로 돌아가는 만큼만 약정 대상으로 잡습니다. 기저선 위쪽, 곡선과 기저선 사이의 영역이 예측되지 않는 변동분입니다. 이 부분은 온디맨드로 처리하고, 중단을 견디도록 설계된 작업이라면 스팟 인스턴스로 처리해 비용을 더 낮춥니다. 결론은 두 레버가 서로 다른 부분을 덮는다는 것이며, 정답은 비율이 아니라 어느 부분에 어떤 레버를 대는가입니다. 사용량 곡선 — 축에는 값을 쓰지 않습니다 사용량 시간 변동분 — 온디맨드 · 스팟 기저 부하 — Savings Plans · 예약 인스턴스가 덮습니다 시간이 지나도 사라지지 않는 상시 사용량 사용량 곡선 기저 부하를 덮는 레버 Savings Plans · 예약 인스턴스 1년 또는 3년 약정 — 시간당 사용량을 약속 쓰지 않아도 약정분은 지불합니다 변동분을 처리하는 레버 온디맨드 · 스팟 인스턴스 온디맨드는 언제든 껐다 켤 수 있습니다 스팟은 중단을 견디는 작업에만 비율과 금액이 아니라 어느 부분을 무엇으로 덮는가가 결론입니다
컴퓨팅 약정 레버의 커버리지 — 시간에 따른 사용량 곡선에서 아래쪽의 상시 기저 부하는 Savings Plans나 예약 인스턴스가 덮고, 위쪽의 변동분은 온디맨드와 스팟이 처리합니다. 비율과 금액이 아니라 어느 부분을 무엇으로 덮는가가 이 그림의 결론입니다

EC2 구매 옵션

EC2 구매 옵션과 워크로드 특성의 대응
옵션 약정 중단 어떤 워크로드인가
온디맨드 없음 없음 예측할 수 없는 단기 워크로드, 새 애플리케이션의 초기 측정 기간
Savings Plans 1년 또는 3년 시간당 사용 금액 약정 없음 상시 기저 부하. 인스턴스 종류를 바꿀 여지를 남기고 싶은 경우
예약 인스턴스 1년 또는 3년 특정 인스턴스 구성 약정 없음 구성이 확정된 상시 부하. 용량 예약이 함께 필요한 경우
스팟 인스턴스 없음 AWS가 회수할 수 있습니다 중단되어도 되는 워크로드 — 배치 처리, 렌더링, 상태 비저장 웹 계층, 테스트
전용 호스트 · 전용 인스턴스 선택 가능 없음 물리 서버 단위 라이선스나 단독 점유 하드웨어 요구가 있는 경우

구매 옵션 자체의 동작과 전용 호스트·전용 인스턴스의 차이는 5장 EC2와 컴퓨트에서 다룹니다. 여기서는 어느 부분을 어느 옵션으로 덮는가만 봅니다.

스팟인가 약정인가 — 판단은 중단 허용 여부

둘은 경쟁 관계가 아니라 서로 다른 부분을 덮는 도구입니다. 판단 기준은 하나로 정리됩니다.

Savings Plans와 예약 인스턴스의 차이

Savings Plans와 예약 인스턴스의 약정 대상과 유연성
항목 Savings Plans 예약 인스턴스
약정 대상 시간당 사용 금액(예: 시간당 일정 금액어치를 쓰겠다) 특정 인스턴스 구성(패밀리·리전·운영체제 등)
기간 1년 또는 3년 1년 또는 3년
유형 Compute Savings Plans(가장 유연) · EC2 Instance Savings Plans(특정 패밀리·리전에 한정, 대신 할인율이 큼) 등 표준(standard) · 전환형(convertible)
유연성 Compute 유형은 인스턴스 패밀리 · 크기 · 리전 · 운영체제 변경은 물론 AWS Fargate와 AWS Lambda 사용량에도 적용됩니다 표준은 변경 폭이 좁고, 전환형은 다른 구성으로 교환할 수 있습니다
용량 예약 제공하지 않습니다 영역 예약 인스턴스는 해당 가용 영역의 용량을 확보합니다

서버리스는 언제 싸고 언제 비싼가

"서버리스가 더 싸다"는 말은 절반만 맞습니다. 서버리스의 요금은 실행한 만큼이고, EC2의 요금은 켜 둔 만큼입니다. 그래서 두 곡선은 어딘가에서 교차합니다.

서버리스가 유리한 조건과 불리한 조건
조건 유리한가 이유
트래픽이 간헐적이고 편차가 크다 유리 요청이 없는 시간에는 요금이 발생하지 않습니다. 피크에 맞춘 상시 용량이 필요 없습니다
이벤트에 반응하는 짧은 처리 유리 실행 시간 단위로 과금되고 확장이 자동입니다
운영 인력이 적다 유리 패치·확장·가용성 관리 부담이 줄어 총소유비용이 내려갑니다
부하가 일정하고 높다 불리할 수 있음 상시 가동에 가까우면 약정 할인을 받는 EC2나 컨테이너가 오히려 저렴할 수 있습니다
실행이 길고 메모리를 많이 쓴다 불리할 수 있음 실행 시간과 메모리에 비례해 과금되므로 장시간 작업에는 맞지 않습니다. AWS Lambda의 최대 실행 시간은 900초입니다

비용 가시성 — 세 도구의 역할이 다르다

비용 도구 문항은 이름을 외우는 문제가 아니라 "보는 것인가, 알리는 것인가, 원본 데이터를 내려받는 것인가"를 구분하는 문제입니다.

AWS Cost Explorer · AWS Budgets · Cost and Usage Report의 역할 구분
도구 무엇을 하는가 고르는 신호
AWS Cost Explorer 비용과 사용량을 시각화하고 서비스·태그·계정 등으로 나눠 봅니다. 과거 추세를 바탕으로 예측도 제공합니다 "어느 서비스에서 비용이 늘었는지 분석한다", "지난 몇 달 추이를 본다"
AWS Budgets 예산을 정하고 초과하거나 초과가 예상되면 알립니다. 비용 · 사용량 · 예약 사용률과 커버리지 · Savings Plans 사용률과 커버리지 유형이 있습니다 "임계값을 넘으면 알림을 받아야 한다", "월 예산을 초과하지 않도록 감시"
Cost and Usage Report (CUR) 가장 상세한 원본 청구 데이터를 Amazon S3에 파일로 내보냅니다. 시간·일·월 단위 granularity와 CSV 또는 Parquet 형식을 고를 수 있습니다 "자체 분석 도구나 데이터 웨어하우스로 가져간다", "가장 세밀한 라인 아이템이 필요하다"

라이트사이징 — Compute Optimizer와 Trusted Advisor

가장 확실한 절감은 실제로 쓰지 않는 용량을 줄이는 것입니다. 추측 대신 지표로 판단하게 해 주는 도구가 둘 있습니다.

AWS Compute Optimizer와 AWS Trusted Advisor의 역할
도구 무엇을 보는가 결과
AWS Compute Optimizer Amazon EC2 인스턴스, Auto Scaling 그룹, Amazon EBS 볼륨, AWS Lambda 함수, Fargate의 Amazon ECS 서비스, Amazon RDS 인스턴스 등의 구성과 사용률 지표 리소스를 Optimized · Overprovisioned · Underprovisioned 등으로 분류하고 대안 구성을 제안합니다
AWS Trusted Advisor 계정 전반을 모범 사례 점검 항목으로 검사합니다 — 비용 최적화 · 성능 · 보안 · 내결함성 · 서비스 한도 · 운영 우수성 여섯 범주 유휴 리소스, 낮은 사용률, 한도 접근 같은 항목을 경고합니다

Trusted Advisor는 지원 플랜에 따라 볼 수 있는 점검 항목이 달라집니다. 기본 플랜에서는 서비스 한도 범주 전체와 보안·내결함성의 일부 점검만 제공되고, 전체 점검은 상위 지원 플랜에서 열립니다. "전체 점검 결과가 보이지 않는다"는 시나리오의 원인이 대개 여기입니다.

재해 복구 4전략과 RTO · RPO SAA 빈출

재해 복구(Disaster Recovery, DR) 설계는 두 개의 요구값에서 출발합니다.

네 전략은 이 두 값과 평상시 상시 가동 비용을 맞바꾼 결과입니다. 더 짧은 RTO·RPO를 원할수록 대상 리전에 켜 두어야 하는 것이 늘어나고, 그만큼 비용이 올라갑니다.

DR 4전략을 RTO 와 RPO 축 위에 놓은 스펙트럼 가로축은 RPO, 즉 허용되는 데이터 손실의 폭이고 세로축은 RTO, 즉 복구까지 걸리는 시간입니다. 두 축의 눈금은 값이 아니라 일 단위, 시간 단위, 분 단위, 거의 없음이라는 순서 척도입니다. 어떤 전략의 RTO 도 숫자로 단정하지 않습니다. 왼쪽 아래에서 오른쪽 위로 백업 및 복원, 파일럿 라이트, 웜 스탠바이, 다중 사이트 액티브-액티브가 차례로 놓입니다. 백업 및 복원은 백업만 대상 리전에 보관하고 인프라는 없습니다. 파일럿 라이트는 데이터 복제가 계속되고 데이터베이스 같은 최소 코어만 켜 둡니다. 웜 스탠바이는 전체 스택이 축소된 규모로 항상 떠 있고 트래픽만 받지 않습니다. 다중 사이트 액티브-액티브는 양쪽이 모두 운영 트래픽을 처리합니다. 축 아래 화살표가 말하듯, 요구가 짧아질수록 대상 리전에 상시 가동해야 하는 구성 요소가 늘어나고 상시 비용도 함께 올라갑니다. 그 아래 다섯 개의 칩이 상시 가동 구성 요소이며, 지금은 파일럿 라이트가 선택된 상태라 데이터 복제와 데이터베이스 최소 코어만 켜져 있고 애플리케이션 계층, 로드 밸런서, 운영 트래픽 처리는 꺼져 있습니다. 요구 지점을 옮기면 선택되는 전략과 켜지는 구성 요소가 함께 바뀝니다. RTO — 복구까지 걸리는 시간 (아래로 갈수록 깁니다) 일 단위 시간 단위 분 단위 거의 없음 일 단위 시간 단위 분 단위 거의 없음 RPO — 허용되는 데이터 손실 (왼쪽으로 갈수록 큽니다) 백업 및 복원 백업만 보관 파일럿 라이트 최소 코어만 가동 웜 스탠바이 축소 규모로 상시 다중 사이트 액티브-액티브 요구가 짧아질수록 대상 리전에 상시 가동할 것이 늘고 상시 비용도 오릅니다 상시 비용 가장 낮음 가장 높음 대상 리전에 상시 가동해야 하는 구성 요소 데이터 복제 계속 진행 데이터베이스 최소 규모 가동 애플리케이션 축소 규모 가동 로드 밸런서 DNS 전환 준비 운영 트래픽 양쪽에서 처리 선택된 전략 — 파일럿 라이트 · 데이터 복제와 최소 코어만 켜 둡니다 · 상시 비용 낮음
DR 4전략 스펙트럼 — 백업 및 복원에서 다중 사이트 액티브-액티브로 갈수록 RTO와 RPO가 짧아지고 대상 리전에 상시 가동해야 하는 구성 요소가 늘어납니다. 요구값을 바꾸면 선택되는 전략과 필요한 구성 요소가 함께 바뀝니다. 비용은 상대 등급으로만 표시합니다
네 전략을 RTO 축과 RPO 축 위에 배치한 그림 — 왼쪽 아래로 갈수록 빠른 복구와 적은 손실을 뜻합니다. 축의 눈금은 일 · 시간 · 분 같은 구간이며 특정 전략의 RTO를 숫자로 단정하지 않습니다
DR 4전략의 구성과 교환 관계 — 값이 아니라 상대 순서입니다
전략 평소에 무엇이 켜져 있는가 RTO · RPO 상시 비용
백업 및 복원 백업만 다른 리전에 보관합니다. 인프라는 없습니다 가장 깁니다 가장 낮음
파일럿 라이트 데이터 복제는 계속되고, 데이터베이스 같은 핵심 코어만 최소 규모로 켜 둡니다. 애플리케이션 계층은 꺼져 있습니다 백업·복원보다 짧습니다 낮음
웜 스탠바이 전체 스택이 축소된 규모로 항상 떠 있습니다. 트래픽만 받지 않습니다 파일럿 라이트보다 짧습니다 높음
다중 사이트 액티브-액티브 양쪽이 모두 운영 트래픽을 처리합니다 가장 짧습니다 가장 높음
백업 및 복원과 파일럿 라이트의 평상시 구성 대비 두 전략에서 장애가 나기 전 평상시에 대상 리전에 무엇이 켜져 있는지를 나란히 놓고 비교합니다. 위쪽 소스 리전은 두 전략 모두 같습니다. 웹 계층과 앱 계층과 데이터베이스가 정상 운영 중입니다. 왼쪽 백업 및 복원에서는 대상 리전에 백업과 스냅샷만 보관되어 있고 데이터베이스, 애플리케이션 계층, 로드 밸런서와 DNS 는 모두 꺼져 있거나 아예 없습니다. 그래서 장애가 나면 인프라를 처음부터 만들고 데이터를 복원해야 하므로 RTO 가 가장 깁니다. 오른쪽 파일럿 라이트에서는 데이터 복제가 계속 진행되고 데이터베이스가 최소 규모로 상시 가동되어 있습니다. 애플리케이션 계층은 여전히 꺼져 있고 로드 밸런서와 DNS 는 구성만 준비되어 있습니다. 데이터베이스가 이미 살아 있으므로 복구는 애플리케이션 계층을 띄우고 트래픽을 돌리는 일로 줄어들어 RTO 가 더 짧습니다. 두 그림의 차이는 데이터베이스 한 줄이며, 그 한 줄이 RTO 차이를 만든다는 것이 결론입니다. 백업 및 복원 소스 리전 — 평상시 운영 웹 계층 앱 계층 데이터베이스 주기적 백업 · 스냅샷 복사 대상 리전 — 평상시에 켜져 있는 것 백업 · 스냅샷 보관 중 데이터베이스 꺼져 있음 애플리케이션 계층 꺼져 있음 로드 밸런서 · DNS 없음 RTO 가 가장 깁니다 인프라를 처음부터 만들고 복원합니다 파일럿 라이트 소스 리전 — 평상시 운영 웹 계층 앱 계층 데이터베이스 지속적인 데이터 복제 대상 리전 — 평상시에 켜져 있는 것 데이터 복제 계속 진행 데이터베이스 최소 규모로 가동 애플리케이션 계층 꺼져 있음 로드 밸런서 · DNS 구성만 준비 RTO 가 더 짧습니다 데이터베이스가 이미 살아 있습니다 두 그림의 차이는 데이터베이스 한 줄입니다 평상시 켜 두는 범위가 넓어질수록 복구는 빨라지고 상시 비용은 함께 오릅니다
백업 및 복원과 파일럿 라이트의 평상시 구성 대비 — 백업 및 복원은 데이터만 대상 리전에 있고, 파일럿 라이트는 데이터베이스 등 최소 코어가 상시 가동됩니다. RTO 차이가 바로 이 차이에서 나온다는 것이 결론입니다
전략별 상시 가동 구성 요소의 많고 적음과 복구 시간의 관계 — 상시 가동 범위가 넓어질수록 복구 시간이 짧아집니다. 비용 축에는 금액을 쓰지 않고 상대 등급만 표시합니다

요구가 주어졌을 때 어떻게 고르는가

표에 숫자를 넣지 않은 이유가 있습니다. 각 전략의 RTO·RPO는 구성과 데이터 크기에 따라 달라지므로 고정된 값이 없습니다. 시험도 "파일럿 라이트의 RTO는 몇 분인가"를 묻지 않고, 주어진 요구를 만족하는 전략이 무엇인가를 묻습니다.

판단 절차는 두 단계입니다.

RPO는 데이터 복제 방식이, RTO는 무엇이 켜져 있는가가 결정합니다. 두 값이 서로 다른 레버로 조절된다는 점을 구분하면 문항이 훨씬 쉬워집니다.

AWS Backup — 백업을 정책으로 중앙화한다

서비스마다 백업 기능이 따로 있으면 보존 기간과 실행 여부를 한곳에서 확인할 수 없습니다. AWS Backup은 여러 서비스의 백업을 하나의 정책과 하나의 저장소로 모읍니다.

backup-plan.json — 야간 백업과 리전 간 복사를 정의한 백업 계획 뼈대 (리전과 계정 ID는 예시입니다)
{
  "BackupPlanName": "prod-daily",
  "Rules": [
    {
      "RuleName": "nightly",
      "TargetBackupVaultName": "prod-vault",
      "ScheduleExpression": "cron(0 17 * * ? *)",
      "StartWindowMinutes": 60,
      "Lifecycle": { "DeleteAfterDays": 35 },
      "CopyActions": [
        {
          "DestinationBackupVaultArn":
            "arn:aws:backup:us-west-2:123456789012:backup-vault:dr-vault",
          "Lifecycle": { "DeleteAfterDays": 35 }
        }
      ]
    }
  ]
}

S3 복제를 DR에 쓰는 판단

S3 교차 리전 복제와 동일 리전 복제의 용도 구분
유형 대상 쓰는 이유
교차 리전 복제(CRR) 다른 리전의 버킷 리전 장애 대비, 지리적으로 먼 사용자에게 지연 감소, 데이터 레지던시 요구를 만족하는 사본 유지
동일 리전 복제(SRR) 같은 리전의 다른 버킷 로그 집계, 계정 분리(운영 계정에서 감사 계정으로), 운영 환경과 테스트 환경의 데이터 동기화

복제를 켜려면 원본과 대상 버킷 모두 버전 관리가 활성화되어 있어야 하고, Amazon S3가 대신 복제할 수 있도록 IAM 역할을 지정해야 합니다. 기본적으로 규칙을 켠 뒤에 들어온 객체만 복제되며, 이미 있던 객체는 배치 복제로 따로 처리합니다. SSE-KMS로 암호화된 객체를 리전 간 복제할 때는 대상 리전에서 복호화할 수 있는 키가 있어야 합니다. 복제 규칙의 세부 동작은 8장 S3와 오브젝트 스토리지에서 다룹니다.

마이그레이션 — 전략과 도구

6R 전략

온프레미스 워크로드를 클라우드로 옮길 때 선택지는 여섯 가지로 정리됩니다. 코드 변경량과 얻는 것이 서로 반대 방향으로 움직인다는 것이 핵심입니다.

6R 마이그레이션 전략을 코드 변경량과 얻는 이점 두 축에 배치 가로축은 애플리케이션 코드를 얼마나 고쳐야 하는가이고, 세로축은 클라우드에서 얻는 것이 얼마나 큰가입니다. 왼쪽 아래에는 Retain 이 있습니다. 옮기지 않고 그대로 두는 결정이라 변경도 없고 얻는 것도 없습니다. 그 위의 Retire 는 쓰지 않는 시스템을 폐기하는 결정이며, 옮길 대상 자체를 줄이는 것이 이득입니다. Rehost 는 서버를 그대로 들어 옮기는 리프트 앤 시프트로, 코드 변경이 가장 적고 얻는 것도 가장 적습니다. 이 그림에서 강조 표시된 기준점입니다. Replatform 은 관리형 데이터베이스로 바꾸는 정도의 부분 수정으로 운영 부담을 덜어 냅니다. Repurchase 는 자체 구축을 버리고 SaaS 제품으로 갈아타는 결정이라 우리 코드 변경은 거의 없지만 얻는 것은 큽니다. Refactor 는 서버리스나 마이크로서비스로 다시 설계하는 것이라 변경이 가장 크고 얻는 것도 가장 큽니다. 아래쪽 두 상자는 지원 도구입니다. AWS Application Migration Service 는 서버를 통째로 복제해 Rehost 를 지원하고, AWS Database Migration Service 는 데이터베이스를 옮겨 Rehost 와 Replatform 을 지원합니다. 얻는 이점 큼 적음 적음 많음 코드 변경량 Retain 그대로 둡니다 Retire 폐기합니다 Rehost 그대로 옮깁니다 Replatform 일부만 손봅니다 Repurchase SaaS 로 갈아탑니다 Refactor 다시 설계합니다 AWS Application Migration Service 서버를 통째로 복제 — Rehost 를 지원합니다 AWS Database Migration Service DB 이전 — Rehost · Replatform 지원 오른쪽 위로 갈수록 고칠 것이 많아지고 얻는 것도 커집니다 — 요구가 정하는 지점이 정답입니다
6R 마이그레이션 전략을 코드 변경량과 얻는 이점 두 축에 배치한 그림 — Rehost는 변경이 가장 적고 클라우드 이점도 가장 적으며, Refactor는 그 반대입니다. AWS Application Migration Service와 AWS Database Migration Service가 어느 전략을 지원하는지도 함께 표시합니다
6R 마이그레이션 전략과 선택 신호
전략 무엇을 하는가 선택 신호
Rehost (리호스트) 애플리케이션을 그대로 옮깁니다. 리프트 앤 시프트 "최소한의 변경으로", "빠르게 데이터센터를 비워야 한다", "다운타임 최소화"
Replatform (리플랫폼) 핵심 구조는 두고 일부를 관리형으로 바꿉니다. 자체 관리 DB를 Amazon RDS로 옮기는 식 "코드는 크게 바꾸지 않으면서 운영 부담을 줄인다"
Repurchase (리퍼처스) 기존 제품을 버리고 다른 제품이나 SaaS로 갈아탑니다 "라이선스를 종료하고 구독형으로 전환한다"
Refactor (리팩터) 아키텍처를 다시 설계합니다. 서버리스·마이크로서비스로 재작성 "확장성과 기능 추가 속도가 지금 구조로는 안 나온다"
Retire (리타이어) 더 이상 필요 없는 시스템을 없앱니다 "조사해 보니 아무도 쓰지 않는다"
Retain (리테인) 지금은 옮기지 않고 그대로 둡니다 "규제나 의존성 때문에 아직 옮길 수 없다"

AWS DMS와 AWS Application Migration Service

마이그레이션 도구 두 가지의 대상과 용도
도구 무엇을 옮기는가 특징
AWS Database Migration Service (DMS) 데이터베이스 Oracle · PostgreSQL · SQL Server · MySQL · MariaDB · Amazon Aurora · Amazon Redshift 등을 지원하며, 같은 엔진 간 동종 마이그레이션과 다른 엔진으로의 이기종 마이그레이션을 모두 처리합니다. 원본을 계속 운영하면서 변경분을 따라잡을 수 있어 전환 다운타임을 줄입니다
AWS Application Migration Service (MGN) 서버 전체 물리·가상 서버를 블록 수준으로 복제해 Amazon EC2 인스턴스로 전환합니다. 대표적인 Rehost 도구입니다

대용량 데이터 전송 — 대역폭과 기간이 기준이다

"수백 테라바이트를 어떻게 옮길 것인가"는 SAA의 단골 시나리오입니다. 판단 축은 두 개뿐입니다 — 가용 대역폭과 허용 기간, 그리고 그 전송이 일회성인지 지속적인지입니다.

대용량 전송 수단의 선택 기준
수단 성격 고르는 신호
AWS Snow Family 물리 장치를 배송받아 데이터를 담아 되돌려 보내는 오프라인 전송입니다. AWS Snowcone과 AWS Snowball Edge가 있고, 일부 장치는 현장에서 컴퓨팅도 수행합니다 "네트워크 대역폭이 부족하다", "회선으로는 몇 달이 걸린다", "네트워크가 불안정하거나 없는 현장"
AWS DataSync 네트워크를 통해 파일·객체 데이터를 온라인으로 옮기고 동기화합니다 "쓸 만한 대역폭이 있다", "주기적으로 동기화해야 한다", "온프레미스 NFS·SMB에서 Amazon S3·EFS·FSx로"
AWS Direct Connect 온프레미스와 AWS를 잇는 전용 회선입니다. 전송 도구가 아니라 경로입니다 "지속적으로 대량을 주고받는다", "일관된 네트워크 성능이 필요하다", "인터넷을 거치면 안 된다"

흔한 오해

시험 포인트 정리

이 장은 비용 최적화 아키텍처 설계(20%) 전체와 복원력 있는 아키텍처 설계(26%)의 재해 복구 부분에 걸쳐 있습니다.

확인 문제

이 장의 핵심을 확인하는 10문항입니다. 키보드만으로 완주할 수 있습니다 — 숫자키 1~5로 선택지를 고르고 Enter로 제출합니다.

학습용 유형 연결형과 순서 배열 문항이 섞여 있을 수 있습니다. 이 두 유형은 암기 확인에 효율이 좋아서 기본개념 확인 문제에만 넣었으며, 실제 SAA-C03 시험에는 출제되지 않습니다.

이어서 볼 곳

공식 문서 출처

이 장의 요금 서술은 과금 여부와 과금 축까지만 다루며 금액을 담지 않습니다. 아래 문서에서 그 구조를 확인했습니다.