تخطَّ إلى المحتوى

Backup و Restore باستخدام Velero

ستتعلم ما الذي يمكن نسخه في Kubernetes، الفرق بين resource backup و volume snapshot، وكيف تصمم restore test.

Velero ينسخ Kubernetes resources ويمكنه التعامل مع volume snapshots حسب provider. لكن backup غير مجرب لا يكفي. يجب تنفيذ restore test دوري.

العنصرالطريقة
Deployments و Services و ConfigMapsKubernetes resource backup
Secretsresource backup مع تشفير وحماية التخزين
PVC dataCSI snapshots أو file-system backup
قواعد البياناتbackup منطقي من database غالبا بجانب Velero
Terminal window
velero backup create web-backup --include-namespaces web-prod
velero backup describe web-backup
velero backup logs web-backup
velero restore create web-restore --from-backup web-backup
velero restore describe web-restore

Expected output:

Backup completed with status: Completed
Restore completed with status: Completed
flowchart LR
B[Create Backup] --> N[New Namespace]
N --> R[Restore]
R --> V[Verify App]
V --> D[Document RTO/RPO]
apiVersion: v1
kind: Namespace
metadata:
name: web-prod
---
apiVersion: v1
kind: ConfigMap
metadata:
name: app-config
namespace: web-prod
data:
APP_MODE: "prod"

Lab: تصميم restore test

المستوى: مبتدئ الوقت: 35 دقيقة الأدوات: velero, kubectl

الهدف: إنشاء backup لnamespace صغير، ثم كتابة خطوات restore والتحقق.

  • Velero مثبت ومضبوط مع object storage.
Terminal window
kubectl apply -f web-prod.yaml
velero backup create web-prod-test --include-namespaces web-prod
velero backup describe web-prod-test
velero restore create web-prod-restore --from-backup web-prod-test
velero restore describe web-prod-restore
Phase: Completed
Terminal window
kubectl delete namespace web-prod
velero backup delete web-prod-test
الخطأالنتيجة
نسخ الموارد فقط ونسيان dataالتطبيق يعود بدون بيانات
عدم تشفير backup storageتسريب Secrets
عدم اختبار restoreاكتشاف الفشل أثناء الكارثة