Azure Kubernetes Service(AKS)는 중요한 워크로드를 실행하는 환경에서 데이터 보호와 재해 복구 전략이 필수적입니다. 이 가이드에서는 Azure의 네이티브 백업 서비스인 Azure Backup for AKS를 활용하여 완전한 백업 및 복원 솔루션을 구현하는 방법을 다룹니다.
📋 구현 로드맵
이 가이드는 다음과 같은 단계로 진행됩니다:
🔍 AKS Backup 개요
Azure Backup for AKS란?
Azure Backup for AKS는 Azure의 완전 관리형 백업 서비스로, AKS 클러스터의 리소스와 영구 볼륨을 모두 백업할 수 있는 클라우드 네이티브 솔루션입니다.
주요 특징
- 완전 관리형: Azure에서 제공하는 네이티브 백업 서비스
- 애플리케이션 중심: 네임스페이스 단위 또는 전체 클러스터 백업 지원
- 하이브리드 스토리지: Operational Tier(스냅샷)와 Vault Tier(Blob) 지원
- 지역 간 복원: Cross-Region Restore 기능 제공
- 세밀한 제어: 특정 리소스 타입 포함/제외 가능
1. 백업 아키텍처 이해
전체 아키텍처 개요
Azure Backup for AKS는 2계층 백업 아키텍처(Operational Tier, Vault Tier)를 사용하여 다양한 복구 시나리오를 지원합니다:
스토리지 계층 이해
- Operational Tier: 주 지역의 Azure Disk 스냅샷으로 빠른 복원 제공
- Vault Tier: Backup Vault 내부의 장기 보관 스토리지로 지역 간 복제 지원
- 지역 간 백업: GeoRedundant 설정 시 보조 지역으로 Vault Tier 데이터 복제
- 복원 우선순위: Operational Tier → Vault Tier (주 지역) → Vault Tier (보조 지역)
백업 데이터 플로우
백업 프로세스는 다음과 같은 단계로 진행됩니다:
컴포넌트별 역할
컴포넌트 | 역할 | 저장 데이터 | 복구 목적 |
---|---|---|---|
Backup Extension | 데이터 수집 에이전트 | - | 클러스터 내 백업 작업 수행 |
Storage Account | 메타데이터 저장소 | YAML, JSON 파일 | 애플리케이션 상태 복원 |
Snapshot Resource Group | 스냅샷 저장소 | Azure Disk 증분 스냅샷 | 영구 볼륨 데이터 복원 (Operational Tier) |
Backup Vault | 중앙 관리 허브 | 복구 지점, 정책 | 백업 작업 오케스트레이션 |
권한 및 의존성 관계도
백업 구성에 필요한 권한과 리소스 간 의존성을 이해하는 것이 중요합니다:
Managed Identity별 역할
Managed Identity | 생성 시점 | 주요 역할 | 권한 할당 대상 |
---|---|---|---|
AKS 클러스터 MI | AKS 클러스터 생성 시 | Azure 리소스 접근, Extension 설치 | ❌ 직접 할당 안함 |
Backup Extension MI | Extension 설치 시 자동 생성 | 실제 백업 작업 수행 | ✅ 모든 백업 관련 권한 할당 |
Backup Vault MI | Backup Vault 생성 시 | 지역 간 복제, 내부 관리 | ❌ 자동 관리 |
Managed Identity 권한 설정 핵심 포인트
중요: 실제 백업 권한을 받는 것은 Backup Extension의 Managed Identity입니다.
- AKS 클러스터 MI: Extension 설치 권한만 필요 (직접 백업 권한 할당 안함)
- Backup Extension MI: Extension 설치 시 자동 생성되며, 여기에 모든 백업 권한 할당
- 권한 조회:
az k8s-extension show --query aksAssignedIdentity.principalId
로 Extension MI ID 확인 - Service Principal 기반 AKS는 지원 안함: System/User Assigned Identity 기반 클러스터만 지원
2. 지원 사항 및 제한 사항
지원되는 기능
지원 범위
- Kubernetes 버전: AKS 지원 버전에서 현재 지원되는 모든 버전
- 영구 볼륨: CSI 드라이버 기반 Azure Disk (Standard HDD, Standard SSD, Premium SSD)
- 백업 빈도: 최소 4시간 간격 (4, 6, 8, 12, 24시간 옵션)
- 클러스터 타입: 시스템 할당 또는 사용자 할당 관리 ID 사용 클러스터
- 네트워크: 퍼블릭, 프라이빗, 승인된 IP 기반 클러스터 모두 지원
제한 사항
AKS Backup 제한사항
기본 제한사항:
- Azure Files와 Blob Storage는 현재 지원되지 않음 (Azure Disk만 지원)
- In-tree 볼륨 플러그인은 지원되지 않음 (CSI 드라이버만 지원)
- 서비스 주체 기반 클러스터는 지원되지 않음
- 백업 완료 시간: 스케줄된 시작 시간으로부터 2시간 이내
3. 사전 요구사항
CLI 및 도구 요구사항
필수 버전
- Azure CLI: 2.41.0 이상
- kubectl: 현재 지원되는 Kubernetes 버전과 호환
Resource Provider 등록
백업 Extension과 Trusted Access를 사용하기 위해 AKS가 존재하는 구독에 필요한 Resource Provider를 등록해야 합니다.
# Microsoft.KubernetesConfiguration 등록
az provider register --namespace Microsoft.KubernetesConfiguration
# 등록 상태 확인
az provider show --namespace Microsoft.KubernetesConfiguration --query "registrationState"
4. 구현 프로세스 및 Azure 리소스 생성
AKS 백업 구현은 다음과 같은 단계로 진행됩니다. 각 단계는 이전 단계의 완료를 전제로 하므로 순서를 지켜 진행해야 합니다.
구성 프로세스
5. 백업 구성 방법
AKS 백업을 구성하는 방법은 크게 두 가지입니다.
대부분의 사용자에게는 Azure Portal 사용을 권장하며, 자동화나 대량 배포가 필요한 경우 Azure CLI를 사용할 수 있습니다.
Azure Portal을 사용하면 복잡한 단계들이 마법사 형태로 자동화되어 쉽게 백업을 구성할 수 있습니다.
(본 가이드에서는 Azure Portal을 통하여 구성을 진행합니다.)
Portal 사용의 장점
- 간편한 설정: 백업 마법사로 단계별 가이드 제공
- 권한 자동 구성: RBAC 및 Trusted Access 자동 설정
사전 준비 단계
리소스 그룹 생성
스냅샷을 저장할 리소스 그룹을 먼저 생성합니다.

스토리지 계정 생성
백업 메타데이터를 저장할 스토리지 계정을 생성합니다.
중요 설정:
- 계정 유형: Standard_LRS (Local Redundant Storage)
- 성능: 표준
- 복제: LRS (개발), GRS (프로덕션)

데이터를 저장할 컨테이너도 하나 생성합니다.

AKS 백업 확장 설치
백업 확장 설치 시작
AKS 클러스터에서 백업 확장 설치를 시작합니다.
- Azure Portal에서 AKS 클러스터로 이동
- 왼쪽 메뉴에서 "Backup" 선택
- "확장 설치" 버튼 클릭

스토리지 계정 선택
백업 마법사에서 이전 단계에서 생성한 스토리지계정을 선택합니다.

확장 설치 진행 및 확인
Backup Extension 설치 과정을 진행합니다.

Extension이 정상적으로 설치되었는지 확인합니다.

백업 구성 시작
이제 실제 백업 설정을 구성합니다.

Backup Vault 구성
Backup Vault 생성
백업을 관리할 Backup Vault를 생성합니다.
Backup Vault 설정:
- 지역 간 복원을 위한 GeoRedundant 권장하나, 본 가이드에서는 테스트 목적이므로 "로컬 중복"

관리 ID 활성화
시스템 할당 관리 ID를 활성화합니다.

Trusted Access 권한 설정
Backup Vault와 AKS 클러스터 간 Trusted Access를 설정합니다.

백업 정책 생성 및 구성
백업 정책 생성

백업 스케줄과 보존 기간을 설정합니다.
기본 설정 옵션:
- 백업 주기: 매일, 4시간마다, 8시간마다 등
- 보존 기간: 7일, 30일, 90일 등
- 시간대: 로컬 시간대 설정 가능

백업 인스턴스 생성
백업할 리소스 선택을 위해 "추가" 클릭합니다.

백업 인스턴스 이름을 정의하고 백업할 네임스페이스와 리소스를 선택합니다.

스냅샷 리소스 그룹 및 권한 설정
스냅샷이 저장될 리소스 그룹을 선택하고 "누락된 역할 할당"을 클릭하여 권한을 부여합니다.

Snapshot 리소스 그룹의 역할
- 목적: PV(Persistent Volume)의 Azure Disk 증분 스냅샷 저장
- 중요성: Operational Tier 백업의 핵심 구성 요소
- 권장 사항: AKS 클러스터와 동일한 지역에 생성하여 성능 최적화
백업 구성 완료
권한 부여가 모두 진행되었으면, 이후 과정을 진행해서 백업 구성을 완료합니다.

백업 구성 직후에는 보호 상태가 "보호 구성"으로 되어 있으나, 일정시간 지난 후 "구성됨"으로 변경됩니다.

6. 백업 작업 관리
수동 백업 실행 (온디맨드)
Backup Vault에서 백업 인스턴스 클릭

"지금 백업"을 클릭하면 수동백업을 진행할 수 있습니다.

백업이 완료되면 스토리지 계정과 스냅샷 리소스 그룹에 백업데이터가 생성됩니다.


7. 복원 프로세스
백업된 AKS 클러스터 리소스를 복원하는 과정을 단계별로 진행합니다.
Azure Portal을 사용하면 직관적이고 안전하게 복원 작업을 수행할 수 있습니다.
복원 프로세스 단계
Azure Portal을 통한 복원 과정은 다음 단계로 진행됩니다:
단계별 복원 실행
1. 복원 테스트를 위한 기존 네임스페이스 삭제
복원 테스트를 위해 백업된 네임스페이스를 먼저 삭제합니다.

2. AKS 메뉴에서 복원 클릭
Azure Portal에서 AKS 클러스터로 이동한 후, 왼쪽 메뉴의 백업에서 "복원" 클릭.

3. 복원 지점 선택
데이터 원본 유형을 "Kubernetes 서비스"로 선택 후 사용 가능한 백업 복원 지점 목록에서 복원할 시점을 선택합니다.


4. 유효성 검사 진행
복원 작업 전에 시스템이 자동으로 유효성 검사를 수행합니다.

5. 복원 진행
유효성 검사가 성공하면 실제 복원 작업을 시작합니다.

6. 완료된 후 삭제된 리소스 복원됨 확인
복원 작업이 완료되면 삭제되었던 네임스페이스와 모든 관련 리소스가 정상적으로 복원되었는지 확인합니다.


복원 시 주의사항
- 타겟 네임스페이스가 이미 존재하고 리소스가 있다면 복원이 실패할 수 있습니다
- 기존 리소스와 이름이 충돌하는 경우 "Skip" 또는 "Patch" 옵션을 사용하세요
- 복원 완료 후 애플리케이션의 정상 작동 여부를 반드시 확인하세요
8. 비용 최적화
백업 비용 구성 요소
AKS 백업의 비용은 다음과 같은 계층화된 구조로 구성됩니다:
비용 계산 예시
다음은 실제 운영 환경에서의 월간 비용 예시입니다:
시나리오 | Protected Instances | 스냅샷 데이터 | Vault 스토리지 | 월 예상 비용 |
---|---|---|---|---|
소규모 개발 | 2개 네임스페이스 | 100GB | 10GB | $45-60 |
중간 프로덕션 | 5개 네임스페이스 | 500GB | 50GB | $120-150 |
대규모 엔터프라이즈 | 10개 네임스페이스 | 2TB | 200GB | $300-400 |
비용 구성 요소 상세
- Protected Instance 비용: 네임스페이스당 월 정액 요금 (지역별 $15-30)
- Operational Tier: Azure Disk 증분 스냅샷 ($0.05/GB/월)
- Vault Tier: 메타데이터 백업 스토리지 ($0.10/GB/월)
- Archive Tier: 6개월+ 장기 보관 ($0.002/GB/월, 180일 조기 삭제 기간)
- Cross-Region Transfer: 지역 간 복원 시 아웃바운드 요금 ($0.087/GB)
정확한 가격: Azure Backup 가격 페이지에서 최신 지역별 가격 확인
비용 최적화 전략
- 네임스페이스 선택 최적화: 필요한 네임스페이스만 백업하여 Protected Instance 비용 최소화
- 백업 빈도 조정: 중요도에 따라 4시간/24시간 선택
- 보존 정책 최적화: Archive Tier 활용으로 장기 보존 비용 절감
- 스토리지 중복성 선택: 개발/테스트는 LRS, 프로덕션은 GRS 사용
- Reserved Capacity 활용: 대규모 백업 시 1년/3년 약정으로 비용 절감 (100TB/1PB 단위)
✨ 결론
Azure Backup for AKS는 Kubernetes 환경에서 포괄적인 백업 및 재해복구 솔루션을 제공합니다.
이 가이드를 통해 구현한 백업 전략은 다음과 같은 이점을 제공합니다:
- 완전 자동화: 스케줄 기반 백업으로 수동 개입 최소화
- 세밀한 제어: 네임스페이스 및 리소스 레벨 백업 구성
- 비용 효율성: 계층화된 스토리지를 통한 최적화된 비용 구조
정기적인 백업과 복원 테스트를 통해 중요한 워크로드를 안전하게 보호하고, 예상치 못한 장애 상황에서도 신속한 서비스 복구가 가능한 견고한 인프라를 구축하시기 바랍니다.
이 포스트는 2025년 8월 기준 최신 Azure 공식 문서를 바탕으로 작성되었습니다. 최신 정보는 Microsoft Learn - Azure Backup for AKS에서 확인하실 수 있습니다.