2024-12-25Hünkar Döner

EKS Backup Stratejileri: Velero ile Yedekleme ve Kurtarma

BackupVeleroEKSDisaster Recovery
E

EKS Backup Stratejileri: Velero ile Yedekleme ve Kurtarma

"Kubernetes durumsuz (stateless) uygulamalar içindir, yedeğe gerek yok" algısı yanlıştır. Amazon EKS üzerinde çalışan StatefulSet'ler, veritabanları ve kritik konfigürasyonlar (YAML) yedeklenmelidir. Birisi yanlışlıkla kubectl delete namespace production komutunu çalıştırırsa ne yapacaksınız?

Cevap: Velero. VMware tarafından geliştirilen Velero, Kubernetes yedekleme dünyasının standart aracıdır.

Velero Ne Yapar?

  1. Küme Kaynakları: Tüm YAML dosyalarını (Deployment, Service, ConfigMap) yedekler.
  2. Kalıcı Veriler (Persistent Volumes): EBS snapshot'larını alarak diskteki veriyi yedekler.

EKS Üzerinde Velero Kurulumu

1. S3 Bucket ve IAM Hazırlığı

Yedeklerin saklanacağı bir Amazon S3 bucket oluşturun. Velero'nun bu bucket'a yazabilmesi için bir IAM kullanıcısı veya IRSA (IAM Role) oluşturun.

2. Velero CLI ve Sunucu Kurulumu

Bilgisayarınıza Velero CLI kurun ve ardından EKS kümesine sunucuyu yükleyin:

velero install     --provider aws     --plugins velero/velero-plugin-for-aws:v1.6.0     --bucket my-eks-backups     --backup-location-config region=eu-central-1     --snapshot-location-config region=eu-central-1     --secret-file ./credentials-velero

Yedek Alma ve Dönme

  • Yedekleme: velero backup create my-backup --include-namespaces production
  • Zamanlanmış Yedekleme: velero schedule create daily-backup --schedule="0 1 * * *" (Her gece 01:00'de).
  • Geri Yükleme (Restore): velero restore create --from-backup my-backup

Velero, EKS sürüm güncellemeleri (Upgrade) öncesinde de hayat kurtarıcıdır. Bir sorun çıkarsa eski sürüme ve verilere anında dönebilirsiniz.