Velero와 Restic 활용

Velero와 Restic 활용

7️⃣ Velero와 Restic 활용

1. Restic 개요 및 사용 이유

Restic은 파일 단위 백업을 지원하는 오픈소스 백업 솔루션으로, Velero와 함께 사용하여 Kubernetes의 Persistent Volume(PV) 백업을 더욱 유연하게 수행할 수 있습니다.

  • 사용 이유

    • 기존 볼륨 스냅샷 방식(CSI)과 다르게, 스토리지 종류에 관계없이 백업 가능
    • 블록 단위가 아닌 파일 단위 백업 지원
    • 자체적인 암호화 및 중복 제거(Deduplication) 기능 제공
    • 클라우드 환경뿐만 아니라 로컬 및 원격 저장소 지원

    Restic 개요

2. Restic 기반의 파일 레벨 백업 및 복구

2.1 Restic 백업 설정

Velero에서 Restic을 활성화하려면, Velero 설치 시 --use-restic 옵션을 추가합니다.

velero install \
    --provider aws \
    --bucket velero-backups \
    --use-restic

이후, Restic을 사용하여 특정 네임스페이스의 PVC를 백업하려면 아래와 같이 실행합니다.

kubectl annotate pod <pod-name> backup.velero.io/backup-volumes=<volume-name>
velero backup create my-backup --include-namespaces=my-namespace

2.2 Restic 복구 실행

백업된 데이터를 복구하려면 Velero의 restore 명령어를 사용합니다.

velero restore create --from-backup my-backup

3. Restic과 CSI 기반 볼륨 스냅샷 비교

비교 항목 Restic CSI 기반 볼륨 스냅샷
백업 방식 파일 단위 블록 단위
스토리지 종속성 없음 특정 CSI 드라이버 필요
백업 속도 느림 빠름
데이터 복구 개별 파일 가능 전체 볼륨 단위 복구

👉 Restic은 다양한 스토리지에서 유연하게 백업이 가능하지만, 속도가 느린 단점이 있습니다.

4. Restic 성능 최적화 및 보안 강화

  • 성능 최적화

    • --compression max 옵션을 활용하여 데이터 압축
    • --exclude 옵션을 활용하여 불필요한 파일 제외
    • 빠른 복구를 위해 백업을 여러 개의 스냅샷으로 나누어 수행
  • 보안 강화

    • Restic 저장소를 암호화하여 데이터 보호
    • IAM 권한 최소화
    • TLS 및 네트워크 보안 강화

5. Restic 백업 시 주의할 점

  • CPU 및 메모리 사용량이 높음 → 리소스 조정 필요
  • 네트워크 대역폭 고려 → 대용량 백업 시 제한 설정 필요
  • 장기 보관 전략 설정 → 백업 유지 기간 정책을 명확히 설정

결론

Restic은 Kubernetes 환경에서 스토리지와 무관하게 파일 단위 백업을 가능하게 해주는 강력한 도구입니다. Velero와 함께 사용하면 더욱 유연한 백업 및 복구 전략을 구성할 수 있습니다.

RSS Feed
마지막 수정일자