스토리지 계정을 만들 때 이중화 옵션에서 손이 멈춥니다. LRS·ZRS·GRS·RA-GRS를 내구성, 가용성, 비용, 견디는 장애 범위 기준으로 비교하고, 데이터 성격별로 무엇을 골라야 하는지 정리했습니다.
- LRS : 한 데이터센터 안에 3벌. 가장 저렴, 데이터센터 장애엔 취약.
- ZRS : 같은 리전의 3개 가용성 영역에 분산. 데이터센터 장애를 견딤.
- GRS/RA-GRS : 멀리 떨어진 보조 리전까지 복제. 재해 대비. RA는 보조를 읽기 가능.
Azure 스토리지는 어떤 옵션을 골라도 데이터를 최소 3벌 복제합니다. 차이는 “그 3벌(또는 6벌)을 어디에 두느냐”입니다. 같은 방에 두면 싸지만 그 방이 무너지면 끝이고, 여러 건물·여러 도시에 나눠 두면 안전하지만 비쌉니다. 이 트레이드오프가 이중화 선택의 전부입니다.
네 옵션 한눈에 비교
| 기준 | LRS | ZRS | GRS | RA-GRS |
|---|---|---|---|---|
| 복제 위치 | 단일 DC 내 3벌 | 3개 AZ에 3벌 | 주 리전 3벌 + 보조 리전 3벌 | GRS + 보조 읽기 |
| 내구성(연간) | 99.999999999%(11 9s) | 12 9s | 16 9s | 16 9s |
| 데이터센터 장애 | 취약 | 견딤 | 견딤 | 견딤 |
| 리전 전체 장애 | 취약 | 취약 | 견딤(장애 조치) | 견딤 + 읽기 유지 |
| 보조 리전 읽기 | — | — | 불가 | 가능 |
| 상대 비용 | 가장 낮음 | 중간 | 높음 | 가장 높음 |
핵심은 두 축입니다. 세로축(영역 이중화)은 LRS→ZRS로 갈수록 같은 리전 안에서 데이터센터 장애를 견디고, 가로축(지역 이중화)은 LRS→GRS로 갈수록 리전 전체가 내려가는 재해를 견딥니다. 둘 다 필요하면 GZRS(지역+영역)를 고릅니다.
내구성과 가용성은 다르다
자주 헷갈리는 지점입니다. 내구성은 “데이터가 유실되지 않을 확률”이고, 가용성은 “지금 읽고 쓸 수 있는지”입니다. LRS도 내구성 11 9s로 데이터를 잃을 확률은 극히 낮지만, 그 데이터센터가 정전이면 유실은 없어도 접근이 안 됩니다. 서비스 연속성이 중요하면 내구성 숫자만 보지 말고 견디는 장애 범위를 봐야 합니다.
데이터 성격별 선택
LRS가 맞는 경우 — 언제든 재생성할 수 있는 데이터. 임시 파일, 캐시, 다른 곳에서 다시 만들 수 있는 처리 중간 산출물, 개발·테스트 환경. 잃어도 다시 만들면 되니 가장 싼 옵션이 합리적입니다.
ZRS가 맞는 경우 — 운영 중 항상 접근돼야 하는 데이터. 실서비스 이미지·문서, 가동 중 애플리케이션 데이터. 리전 재해까지는 아니어도 데이터센터 한 곳 장애로 서비스가 멈추면 곤란한 대부분의 프로덕션 워크로드.
GRS/RA-GRS가 맞는 경우 — 잃으면 사업에 치명적이거나 규제상 지역 간 백업이 필요한 데이터. 회계·계약 원본, 규제 대상 기록, 재해 복구 계획이 명시된 핵심 자산. 보조 리전에서 읽기까지 유지해야 하면 RA-GRS.
재생성 가능한 데이터는 LRS, 운영 데이터는 ZRS, 재해까지 대비하는 핵심 데이터는 GRS(읽기 유지 필요 시 RA-GRS). 애매하면 프로덕션은 ZRS로 시작하는 편이 무난합니다.
설정과 확인
# 계정 생성 시 이중화 지정 (ZRS 예)
az storage account create \
--name mydata01 --resource-group rg-demo \
--location koreacentral --sku Standard_ZRS
# 현재 이중화 옵션 확인
az storage account show \
--name mydata01 --resource-group rg-demo \
--query sku.name -o tsv
SKU 이름에서 Standard_ 뒤 부분이 이중화 옵션입니다(LRS/ZRS/GRS/RAGRS/GZRS/RAGZRS). Premium 계층은 지원되는 옵션이 제한되니 생성 전 확인하세요.
비용 감각 잡기
대략적인 상대 비용은 LRS를 1로 볼 때 ZRS가 약 1.25배, GRS가 약 2배, RA-GRS가 그보다 조금 더 높습니다(지역·계층에 따라 다름). GRS는 보조 리전으로의 지역 간 복제 송신 요금이 별도로 붙을 수 있어, 쓰기가 많은 데이터일수록 비용 차이가 벌어집니다. “모든 데이터를 GRS로” 대신 데이터 등급을 나눠 옵션을 달리하는 편이 비용 효율적입니다.
흔한 실수
- 전부 GRS로 통일한다 — 재생성 가능한 임시 데이터까지 지역 복제하면 비용만 낭비됩니다. 데이터 등급을 나눠 옵션을 다르게 두세요.
- GRS면 보조 리전을 바로 읽을 수 있다고 여긴다 — 일반 GRS는 보조를 읽지 못합니다. 읽으려면 RA-GRS여야 합니다.
- 장애 조치를 자동으로 착각한다 — GRS의 계정 장애 조치는 대개 수동 트리거이며, 완료까지 시간이 걸리고 최근 쓰기 일부가 유실될 수 있습니다.
- 이중화와 백업을 같은 것으로 본다 — 이중화는 실수로 삭제한 데이터를 되살려 주지 않습니다. 실수·랜섬웨어 대비는 별도의 백업·버전 관리·소프트 삭제가 필요합니다.
- 나중에 ZRS로 쉽게 바꿀 수 있다고 가정한다 — ZRS 전환은 라이브 마이그레이션 요청이나 수동 복사가 필요할 수 있습니다. 가용성 요구가 있으면 처음부터 ZRS 계열로.
영역과 지역을 함께: GZRS
데이터센터 장애도, 리전 재해도 모두 견뎌야 한다면 GZRS(또는 읽기 가능한 RA-GZRS)가 있습니다. 주 리전에서는 ZRS처럼 3개 영역에 분산하고, 동시에 보조 리전에도 복제합니다. 가장 비싸지만 가장 폭넓은 보호를 제공하므로, 미션 크리티컬한 핵심 데이터에만 선택적으로 적용하는 것이 좋습니다.
자주 묻는 질문
- Q. LRS와 ZRS의 차이는?
LRS는 한 데이터센터 안에 3벌을 두어 장비 장애는 견디지만 데이터센터 전체 장애엔 취약합니다. ZRS는 같은 리전의 서로 다른 가용성 영역 3곳에 복제해 데이터센터 한 곳이 통째로 내려가도 유지됩니다. - Q. GRS는 언제 필요한가요?
수백 km 떨어진 보조 리전까지 복제해 리전 전체 장애·재해에 대비하거나 규제상 지역 간 이중화가 필요할 때 씁니다. 보조 리전 읽기까지 필요하면 RA-GRS입니다. - Q. 이중화 옵션은 나중에 바꿀 수 있나요?
LRS↔GRS는 포털에서 바로 되지만 ZRS 전환은 마이그레이션 요청·수동 복사가 필요할 수 있습니다. 가용성 요구가 있으면 처음부터 ZRS 계열로 시작하세요. - Q. 이중화가 있으면 백업은 필요 없나요?
아닙니다. 이중화는 하드웨어·데이터센터 장애를 막아줄 뿐, 실수로 지운 데이터나 랜섬웨어에는 무력합니다. 소프트 삭제·버전 관리·별도 백업을 함께 두세요.
정리하면, 이중화 선택은 “이 데이터를 잃거나 못 읽으면 얼마나 곤란한가”라는 한 질문으로 좁혀집니다. 재생성 가능하면 LRS, 운영 중이면 ZRS, 잃으면 치명적이면 GRS. 데이터 등급을 나눠 옵션을 섞는 것이 안전성과 비용을 함께 잡는 길입니다.