본문 바로가기
T./Data Protection-Veeam

[DR to Azure] 백업이 없으면, 비즈니스도 없다!

by IT Journeyman 2026. 3. 21.

TL;DR

Veeam Software를 활용해서

1. OnPrem 환경의 백업을 Azure Blob으로 받아서

2. 그 백업을 리스토어 하지 않고(빠른 업무 개시를 위해서)

3. 바로 백업에서 즉시 복구하여 VM을 기동하고

4. DR(Azure)에서 "즉시복구VM"으로 서비스(오라클DB)를 재개하고

5. 이후 Migrate to Production을 수행하여 Azure VM으로 Switchover하는 내용입니다.

자세한 내용은 생략하고 전반적인 소개입니다. (샘플 데이터 생성을 위한 SQL과 Data Flow 외의 모든 내용은, 좀 모자라지만 인간 지능으로 작성했습니다)

IT Journeyman

DR(재해 복구)를 운영한다는 것은 많은 투자가 필요합니다. 평소에는 사용하지 않는 유휴 서버와 스토리지 자원을 재해복구센터에 구축하여 재해 상황에 대비해야 하기 때문입니다. 아무리 클라우드가 대세인 세상입니다만, 아직도 많은 업무는 OnPrem에서 운영되고 있고, DR구축에 대한 필요성에 비해 현실적으로 구축이 어려운 것도 사실입니다.

 

평소에 클라우드로 백업만 보내 놓고, DR이 필요할 때 빠르게 서비스 재개를 할 수 있다면, 랜섬웨어 등등으로 보안 우려가 큰 상황에서 현실적이고 경제적인 대안이 될 수 있을 것이라고 생각합니다.  

 

아래는 이번 테스트(100GB Oracle Database on Oracle Linux)를 위해 지출된 경비입니다. 물리DR에 비해 아주 경제적입니다.

(빔 라이센스는 포함되지 않은 가격으로 순수히 이번 테스트를 위해 사용된 Azure 자원에 대한 비용입니다, Veeam VBR Server 1EA, Azure VM 1EA 등등)

 

0. ​​전체 테스트 Flow (DR to Azure)

0.1 High-Level Architecture Flow

[On-Premise]
 ┌──────────────────────────────┐
 │ Oracle DB (OLinux)           │
 │ - 100GB DB                   │
 │ - Online Backup              │
 └──────────────┬───────────────┘
                │
                │ Veeam Backup
                ▼
 ┌──────────────────────────────┐
 │ Veeam Backup & Replication   │
 │ (On-Prem VBR)                │
 └──────────────┬───────────────┘
                │
                │ Backup to Cloud
                ▼
 ┌──────────────────────────────┐
 │ Azure Blob Storage           │
 │ - Backup Repository          │
 │ - Full + Incremental         │
 └──────────────┬───────────────┘
                │
                │ Scan / Import
                ▼
 ┌──────────────────────────────┐
 │ Veeam VBR (Azure)            │
 │ - Repository Scan            │
 │ - Restore Points 인식         │
 └──────────────┬───────────────┘
                │
                │ Instant Recovery
                ▼
 ┌──────────────────────────────┐
 │ Azure VM (Instant Recovery)  │
 │ - Backup에서 직접 기동          │
 │ - Disk Restore 없이 실행       │
 └──────────────┬───────────────┘
                │
                │ DB Start
                ▼
 ┌──────────────────────────────┐
 │ Oracle DB on Azure           │
 │ - 서비스 즉시 재개               │
 └──────────────┬───────────────┘
                │
                │ Background Restore
                ▼
 ┌──────────────────────────────┐
 │ Azure Production Disk        │
 │ - Full Restore 진행           │
 └──────────────┬───────────────┘
                │
                │ Switchover
                ▼
 ┌──────────────────────────────┐
 │ Production VM (Azure)        │
 │ - 완전한 운영 환경 전환           │
 └──────────────────────────────┘

 

0.2 DB 변경 Flow (핵심 시나리오)

[Phase 1: 초기 구성 및 Full Backup]
 ┌──────────────────────────────┐
 │ Oracle DB (On-Prem)          │
 │ - V1 Table 생성               │
 │ - 초기 데이터 적재               │
 └──────────────┬───────────────┘
                │
                ▼
        Full Backup (100GB)
                │
                ▼
        Azure Blob 저장

────────────────────────────────

[Phase 2: DB 변경 + Incremental Backup]
 ┌──────────────────────────────┐
 │ Oracle DB (On-Prem)          │
 │ - V2 Table 생성               │
 │ - 데이터 변경 발생               │
 │ - Log Switch                 │
 └──────────────┬───────────────┘
                │
                ▼
      Incremental Backup 수행
                │
                ▼
        Azure Blob 저장

────────────────────────────────

[Phase 3: DR 기동 (Instant Recovery)]
 ┌──────────────────────────────┐
 │ Azure VM (Instant Recovery)  │
 │ - Full + Incremental 기반     │
 │ - 최신 상태로 VM 기동          │
 └──────────────┬───────────────┘
                │
                ▼
 ┌──────────────────────────────┐
 │ Oracle DB (Azure)            │
 │ - V1 + V2 Table 포함          │
 │ - 서비스 즉시 재개               │
 └──────────────┬───────────────┘

────────────────────────────────

[Phase 4: DR 환경에서 추가 변경]
 ┌──────────────────────────────┐
 │ Oracle DB (Azure)            │
 │ - V3 Table 생성               │
 │ - 운영 중 데이터 변경            │
 └──────────────┬───────────────┘

────────────────────────────────

[Phase 5: Background Restore + 전환]
 ┌──────────────────────────────┐
 │ Background Restore           │
 │ - Full Data to Production Disk│
 └──────────────┬───────────────┘
                │
                ▼
 ┌──────────────────────────────┐
 │ Switchover                   │
 │ - Instant → Production 전환   │
 │ - V1 + V2 + V3 유지           │
 └──────────────────────────────┘

1. ​​OnPrem Oracle을 백업하여 Azure Blob으로 보내기 

1. 1 오라클 데이터베이스 조회

Veeam VBR에는 백업을 위한 Catalog가 필요 없습니다.

(없는 것이 서운한 것은 아니지만, table name은 Veeam 기념품샵의 veeam_catalog로 만들었습니다.)

 

1.2. 해당 오라클 데이터베이스 온라인 백업

 

1.3. 백업 저장소를 Azure Blob으로 선택

 

1.4. 1차 백업 100GB 18분 소요

 

1.5. 테스트 테이블 복제 후 로그 스위치를 하여 DB에 변경 작업

 

1.6. 2차 백업(Incremental)은 3분 미만 소요

2. Azure에 설치한 Veeam VBR Server에 Backup Repository 등록 

2.1. Azure Blob을 등록

 

2.2. Backup Repository의 Owner에 대한 변경

 

2.3. Backup Repository의 스캔하여 백업 정보 스캔

 

2.4. Backup Repository의 스캔하여 백업 정보 확인(Restore Points가 2개임을 확인)

1.1에서 설명했듯이 Veeam은 백업을 위한 Catalog를 따로 관리하지 않고 Veeam 백업 파일을 스캔하면 관련 정보를 읽어 올 수 있다.

그래서 아래 GUI 화면처럼 백업 파일에 들어 있는 백업과 백업시점(Restore Points)들을 조회할 수 있다. 

 

2.5. 즉시 복구(Instant Recovery) 수행

 

2.6. Azure 환경에서의 서버 Shape 지정 및 네트워크 설정

(더 비싸고 빠른 Shape 지정 시 복구 속도가 더 빨라 질 수 있음)

3. Azure VM에서 서비스 기동 

3.1. 10여분 만에 "즉시 복구" 기능으로 Azure VM 기동 

 

4. Azure VM에서 오라클 데이터베이스 기동 및 데이터 확인 

4.1. Oracle을 기동하고 서비스 재개 

5. "즉시 복구"로 기동한 Oracle Database에 데이터 변경 

5.1. Oracle을 기동하고 V3 테이블 추가 

 

6. "즉시 복구"로 기동한 Oracle Database를 Production을 Background로 Restore 

6.1. "즉시 복구"로 빠르게 업무 재개를 하고 Production을 Background로 Restore

 

6.2. Background로 Restore 끝나면, 사용자 개입으로 Switchover하는 것으로 "Migrate to Production" 수행

 

6.3. Background로 Restore 완료

7. Oracle Database를 Production으로 Switchover 

7.1. Instant Recovery된 VM을 Switchover

 

7.2. Switchover 완료

 

8. Azure에 사용된 VM 목록 

 

9. 즉시 복구 후 변경된 DB table 확인 

10. 즉시 복구 VM과 Restore 된 VM의 차이

10.1 Instant Recovery VM vs. 정상 Restore VM

디스크 크기 1 GiB 101 GiB (원본 크기)
생성 방식 Import Upload (Full restore)
스토리지 의미 임시/캐시 디스크 실제 운영 디스크
데이터 위치 백업 저장소 Azure Managed Disk
태그 veeam-session-id 존재 없음

 

10.1 즉시 복구 VM의 스토리지 정보

10.2 정상 복구 VM의 스토리지 정보