GH GambleHub

Yedeklemeler ve felaket kurtarma

Yedeklemeler ve Felaket Kurtarma

1) Tanımlar ve hedefler

Yedekleme - sonraki kurtarma için veri/yapılandırmaların tutarlı bir kopyası (kazara silme, hatalar, kriptoloserler, felaketler).
DR (Felaket Kurtarma) - büyük bir kazadan sonra çalışan SLO'lara altyapıyı/hizmetleri geri yükleme süreci (yangın, bölge kaybı, büyük uzlaşma).
RPO (Recovery Point Objective - Kurtarma Noktası Hedefi) - zaman içinde izin verilen maksimum veri kaybı (örneğin, 15 dakika).
RTO (Recovery Time Objective - Kurtarma Süresi Hedefi) - hizmet kurtarma süresi hedefi (örneğin, 30 dakika).

Anahtar ilke: çoğaltma ≠ yedekleme. Çoğaltma, tüm kopyalarda hataları ve şifrelemeyi hızla yayar. Bir yedekleme, izole edilmiş, doğrulanmış, potansiyel olarak değiştirilemez bir kopyadır.

2) Veri sınıflandırma ve kritiklik seviyeleri

Varlıkları sınıflara bölün:
  • Tier-0 (hayati): işlem veritabanları, ödemeler, bilanço muhasebesi, sırlar/PKI.
  • Tier-1 (kritik): hizmet yapılandırmaları, kuyruklar, CI/CD artifaktları, konteyner kayıtları.
  • Tier-2 (önemli): analitik, raporlar, ikincil endeksler, günlük arşivleri.
  • Tier-3 (yardımcı): önbellekler, zaman verileri (yeniden yapılandırılarak geri yüklenebilir).

Her sınıf için RPO/RTO, tutma süresi, değişmezlik gereksinimleri ve konumu tanımlayın.

3) Tutma Stratejileri: Kural 3-2-1-1-0

3 veri kopyası (prod + 2 yedekleme).
2 farklı ortam/depolama türü.
1 site dışı kopya (farklı bölge/bulut).
1 değişmez/hava boşluğu (WORM/Nesne Kilidi/Teyp).
Kurtarma kontrollerinde 0 hata (düzenli testler).

4) Yedekleme türleri

Tam - tam kopya. yavaş/pahalı ama tüm stratejiler için temel.
Artımlı - son herhangi bir yedekleme ile fark. Hacim olarak optimal.
Diferansiyel - son dolu ile fark. Daha hızlı iyileşme, daha fazla alan.
Anlık görüntü - bir birimin/diskin anlık görüntüsü (EBS/ZFS/LVM). Uygulama tutarlı anlık görüntülere ihtiyacımız var (sessiz).
PITR (Point-in-Time Recovery) - tam zaman/LSN geri alma için temel yedekleme + günlükleri (WAL/binlog).
Nesne/dosya/figüratif - belirli veri türleri için (VM görüntüleri, S3 nesneleri, DB dökümü).

5) Yedeklemelerin tutarlılığı

Çökme tutarlılığı: ani bir kapanmadan sonra olduğu gibi - durumsuz/günlüklü FS için uygundur.
Uygulama tutarlı: uygulama "donar" işlemleri (fsfreeze/pre-post komut dosyaları) - garantili bütünlüğü.
Veritabanı tutarlılığı: Yedekleme aracının API'si (pgBackRest, XtraBackup), hot-backup modları, donma kontrol noktaları.

6) Şifreleme, anahtarlar ve erişim

Tüm kopyalar için at-rest ve transit şifreleme.
KMS/HSM'deki anahtarlar, politikaya göre döndürme (90/180 gün), ortama göre ayrı anahtarlar.
Görevlerin ayrılması: Yedeklemeleri kim oluşturur/kaldırır ≠ bunları kim çözebilir/okuyabilir.
Şifre çözme anahtarlarını hedef kopyalarla aynı güven etki alanında tutmayın.

7) Değiştirilemez kopyalar ve fidye yazılımı koruması

Tutma ve Yasal Tutma ile Nesne Kilidi/WORM (Uyumluluk/Yönetişim).
Air-gap: yalıtılmış/çevrimdışı depolama (besleme, çevrimdışı bulut/hesap).
"Gecikmeli etkinleştirme" silme politikaları, MFA-Delete, yedek kovalar için ayrı hesap, kamu erişiminin yasaklanması.
Kötü amaçlı yazılım/montaj öncesi uzlaşma göstergeleri için doğrulama.

8) Frekans, zamanlama ve tutma

GFS (Büyükbaba-Baba-Oğul): günlük artışlar, haftalık tam/diff, aylık uzun depolama ile dolu.
RPO, artışların sıklığını ve WAL/binlog arşivlemeyi (örneğin, her 5-15 dakikada bir) belirler.
Depolama: Kritik - ≥ 35-90 gün + 12-36 ay boyunca aylık (yasal gereksinimler).
Mevsimsel zirveler ayrı kontrol noktalarıdır (promosyonlardan/sürümlerden önce).

9) DR modelleri ve senaryoları

Aktif-Aktif: Her iki bölge de trafiğe hizmet eder. Minimum RTO, veri çöküşü sıkı bir çatışma politikası gerektirir.
Aktif-Pasif (sıcak/ılık): Sıcak - açılmamış ve senkronize (RTO dakika), sıcak - kısmen hazır (RTO saat).
Soğuk: mağaza kopyaları ve Terraform/Ansible/images, talep üzerine yükseltmek (RTO gün +).
DRaaS: VM'lerin/ağların/adreslerin başka bir bölgedeki sağlayıcı orkestrasyonu.

10) Feilover orkestrasyonu ve kurtarma öncelikleri

Başlangıç önceliği: ağ/VPN/DNS - sırlar/KMS - veritabanları/kümeler - kuyruklar/önbellek - uygulamalar - çevre/CDN - analizler.
Otomasyon: DR ortamı için komut dosyaları/runbook eylemleri, Terraform/Ansible/Helm/ArgoCD profilleri.
Veri: DB PITR, reindex/replica, sıcak önbellek, şema uyumluluk bayrakları ile hizmetleri başlatıyor.
DNS/GSLB: TTL önceden düşürün, senaryoları doğrulama ile değiştirin.

11) Yedekleme doğrulama testleri

Testleri bir zamanlamaya göre geri yükle: Örnekleme yedeklemelerin N %'si, sandbox dağıtımı, otomatik şema/değişmez kontroller.
Tam DR-matkap (oyun günü): bölge/AZ'yi devre dışı bırakma, canlı trafikte (veya trafik gölgelerinde) RTO/RPO'yu kontrol etme.
Bütünlük testleri: karma dizinleri, sağlama toplamları, tüm katmanları okumaya çalışın (tam + zincir).
Belge raporu: zaman, adımlar, anomaliler, hedeflerden boşluk boyutu, düzeltmeler.

12) Temel teknolojiler için uygulama

Veritabanları

PostgreSQL: temel yedekleme + WAL arşivi (PITR), pgBackRest/Barman araçları; Çoğaltma yuvaları, izleme 'lsn'.
MySQL/MariaDB: Percona XtraBackup/Enterprise Backup, binlog arşivleme.
MongoDB: Büyük kümeler için mantıksal kopya + anlık görüntü için 'mongodump'; PITR için Oplog.
Redis: Kritik için RDB/AOF (Redis sadece önbellek değilse), ancak daha sık - kazalar için kaynak + anlık görüntüden mantıksal yeniden yapılandırma.
Kafka/Pulsar: meta veri yedekleme (ZK/Kraft/BookKeeper), disk anlık görüntüleri, konu/günlük yansıtma.

Kubernetes

etcd snapshot + Kaynaklar/birimler için Velero (CSI snapshot'ları).
Yedekleme sırları/PKI ayrı ayrı (Vault snapshot).
Resimlerin ayrı kaydı: değişmez etiketler.

VM'ler ve Dosya Sistemleri

ZFS: 'zfs snapshot' + 'zfs send | zstd | send-recv' artışları, 'scrub' işaretleniyor.
Öncesi/sonrası komut dosyaları ile LVM/EBS anlık görüntüleri (uygulama tutarlı).
Nesne Depoları - Sürümler + Nesne Kilidi.

13) Yedeklerin kataloglanması ve sürüm kontrolü

Dizin (meta veri kataloglama): ne, nerede, ne zaman, bitti, karma, KMS anahtarı, sahibi, tutma süresi.
Метки/теги: 'env = prod' stage ',' system = db 'k8s' vm ',' tier = 0 | 1 | 2 ',' retention = 35d | 1y '.
Altın kontrol noktaları: geçişlerden önce/DDL/büyük ölçekli sürümler.

14) Gözlemlenebilirlik ve metrikler

İş başarı oranı: % başarılı/başarısız, nedenler.
Yedekleme/geri yükleme süresi, pencere genişliği.
RPO-aktüel: günlük arşiv günlüğü (WAL/binlog) p95.
Bütünlük: Test edilen zincirlerin oranı, karma mutabakat hataları.
Maliyet: Sınıfa göre depolama kapasitesi, veri tekilleştirme/sıkıştırma oranı.
DR-hazırlık: egzersizlerin sıklığı ve sonucu (geç/başarısız).

15) Erişim ve uyum politikaları

Yedek depolama için ayrı hesaplar/projeler; NaC ilkesine göre erişim (üretim hesaplarından silme/şifrelemeye izin vermiyoruz).
Erişim/değişiklik günlükleri (denetim izi), toplu silme/retshn değişiklikleri için uyarılar.
Uyumluluk: GDPR (arşivlere karşı silme hakkı), PCI DSS (şifreleme, anahtarlar, segmentasyon), yerel düzenleyiciler.

16) Anti-desenler

"Bir kopyası var, yani bir yedeğe ihtiyacınız yok".
Değişmez/hava boşluğu yok: bir hata/kötü amaçlı yazılım her şeyi siler.
Prod ile aynı hesap/bölgedeki yedeklemeler.
Asla kurtarmayı kontrol etmeyin ("kontrol etmeden önce ölü" yedekleme).
Kataloglama ve sürüm kontrolü yok - bir kazada kaos.
Tüm ortamlar için paylaşılan şifreleme anahtarları.
Veritabanı için uygulama tutarlı modu olmayan anlık görüntüler.
Yedekleme penceresi zirvelerle kesişir (p99 ve SLO'yu etkiler).

17) Uygulama kontrol listesi (0-60 gün)

0-10 gün

Sistem/veri envanteri, kritiklik sınıfları.
RPO/RTO hedeflerini sınıfa göre ayarlayın.
Tier-0/1, WAL/binlog arşivi için tam + artımlı özelliği etkinleştirin.
Post yedeklemeleri: ayrı bölge/hesap + KMS şifrelemesini etkinleştir.

11-30 gün

Kritik kopyalar için değişmez (Nesne Kilidi/WORM) yapılandırın.
Kataloglamayı, etiketleri, raporlamayı girin; arızalara ve gecikme dergilerine karşı uyarır.
İlk DR-drill: yalıtılmış bir ortamda bir yedekten ayrı bir hizmeti geri yükleyin.

31-60 gün

Çalışma kitabını otomatikleştirin: Terraform/Ansible/Helm profilleri DR.
Düzenli geri yükleme testleri (hafta/ay) + üç aylık tam DR senaryosu.
Maliyet tekilleştirme/sıkıştırma/depolama yaşam döngülerini optimize edin.

18) Vade metrikleri

Testleri geri yükle: ≥ için 1/hafta Tier-0 (seçici), ≥ 1/ay - tam senaryo.
Değişmez kapsama alanı для Tier-0/1 = %100.
RPO-gerçek p95 ≤ hedefi (örneğin ≤ 15 dakika).
RTO-gerçek DR-egzersizleri ≤ hedef (örneğin ≤ 30 dakika).
Dizin bütünlüğü = %100 (her yedekleme tanımlanır ve kontrol edilir).
Olay-geri yükleme - Tespitten kurtarma işlemine kadar geçen süre.

19) Örnekler (snippet'ler)

PostgreSQL - PITR politikası (fikir):
bash base backup once a day pgbackrest --stanza = prod --type = full backup archive WAL every 5 minutes pgbackrest --stanza = prod archive-push restore to time pgbackrest --stanza = prod restore --type = time --target =" 2025-11-03 14:00:00 + 02"
MySQL - artımlı döngü:
bash xtrabackup --backup --target-dir=/backup/full-2025-11-01 xtrabackup --backup --incremental-basedir=/backup/full-2025-11-01 --target-dir=/backup/inc-2025-11-02 xtrabackup --prepare --apply-log-only --target-dir=/backup/full-2025-11-01 xtrabackup --prepare --target-dir=/backup/full-2025-11-01 --incremental-dir=/backup/inc-2025-11-02
Kubernetes - Velero (manifesto fikirleri):
yaml apiVersion: velero. io/v1 kind: Backup metadata: { name: prod-daily }
spec:
includedNamespaces: ["prod-"]
ttl: 720h storageLocation: s3-immutable
S3 Nesne Kilidi (örnek yaşam döngüsü ilkesi):
json
{
"Rules": [{
"ID": "prod-immutable",
"Status": "Enabled",
"NoncurrentVersionExpiration": { "NoncurrentDays": 365 }
}]
}

20) İletişim ve operasyonel roller

Olay Komutanı, İletişim Kurşun, Operasyon Kurşun, DB Kurşun, Güvenlik.
Paydaşlar/düzenleyiciler/kullanıcılar için mesaj şablonları.
Eylemlerle ölüm sonrası: nerede dakika kaybettikleri, otomasyonun nerede geliştirileceği.

21) Sonuç

Yedeklerin ve DR'nin güvenilir bir döngüsü bir "kopya yapmak'değil, bir döngüdür: sınıflandırma, hedefler, RPO/RTO, çok seviyeli ve değişmez kopyalar, otomatik runbook'lar, düzenli geri yüklemeler ve alıştırmalar. 3-2-1-1-0'a uyun, yedeklemelerden çoğaltmayı ayırın, anahtarları şifreleyin ve izole edin, belgeleyin ve doğrulayın. Daha sonra'siyah kuğu "bile öngörülebilir kesinti süresi ve minimum veri kaybı ile yönetilebilir bir sürece dönüşecektir.

Contact

Bizimle iletişime geçin

Her türlü soru veya destek için bize ulaşın.Size yardımcı olmaya her zaman hazırız!

Entegrasyona başla

Email — zorunlu. Telegram veya WhatsApp — isteğe bağlı.

Adınız zorunlu değil
Email zorunlu değil
Konu zorunlu değil
Mesaj zorunlu değil
Telegram zorunlu değil
@
Telegram belirtirseniz, Email’e ek olarak oradan da yanıt veririz.
WhatsApp zorunlu değil
Format: +ülke kodu ve numara (örneğin, +90XXXXXXXXX).

Butona tıklayarak veri işlemenize onay vermiş olursunuz.