Velero와 Restic 활용
7️⃣ Velero와 Restic 활용
1. Restic 개요 및 사용 이유
Restic은 파일 단위 백업을 지원하는 오픈소스 백업 솔루션으로, Velero와 함께 사용하여 Kubernetes의 Persistent Volume(PV) 백업을 더욱 유연하게 수행할 수 있습니다.
-
사용 이유
- 기존 볼륨 스냅샷 방식(CSI)과 다르게, 스토리지 종류에 관계없이 백업 가능
- 블록 단위가 아닌 파일 단위 백업 지원
- 자체적인 암호화 및 중복 제거(Deduplication) 기능 제공
- 클라우드 환경뿐만 아니라 로컬 및 원격 저장소 지원
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와 함께 사용하면 더욱 유연한 백업 및 복구 전략을 구성할 수 있습니다.
마지막 수정일자