GH GambleHub

Felaket kurtarma planı

1) Amaç, kapsam ve ilkeler

Amaç: Afetlerden sonra (bunlar, siber, satıcı, jeopolitik) BT platformunun yasal gereklilikleri, sözleşmeleri ve oyuncu beklentilerini ihlal etmeden zamanında kurtarılmasını sağlamak.
Alan: üretken ortamlar (oyun devresi, ödemeler, KYC/AML, dolandırıcılık önleme, DWH/BI vitrinleri), entegrasyonlar (PSP, KYC, CDN, stüdyolar/toplayıcılar), altyapı (cloud/K8s, ağlar, sırlar/anahtarlar), veriler (veritabanları, dosyalar, günlükler).
İlkeler: Önce güvenlik, RTO/RPO minimizasyonu, otomasyon ve tekrarlanabilirlik (IaC), "varsayılan olarak kanıtlanabilirlik", düzenli egzersizler.


2) Sistem sınıflandırma ve kurtarma hedefleri

2. 1 Kritiklik seviyeleri

Tier-1 (hayati): ödemeler/cashouts, çekirdek oyunlar, giriş/kimlik doğrulama, ICC/yaptırımlar.
Tier-2: gerçek zamanlı analitik, pazarlama/CRM, DWH raporlama.
Tier-3: dahili portallar, yardımcı hizmetler.

2. 2 Hedefler

RTO - Kurtarma Süresi Hedefi

Kurtarma Noktası Hedefi (RPO) - verilerin izin verilen zaman kaybı.
RTA (Recovery Time Actual )/RPA (Recovery Point Actual) - gerçek değerler raporlara kaydedilir.
MTO/MBCO: maksimum tolere edilebilir duruş süresi/minimum kabul edilebilir hizmet seviyesi (bozulmuş mod).

Örnek hedefler (referans için):
  • Tier-1 - RTO ≤ 30-60 dakika, RPO ≤ 15 dakika; Tier-2 - RTO ≤ 4 ч, RPO ≤ 1 ч; Tier-3 - RTO ≤ 24 ч, RPO ≤ 24 ч.

3) DR Stratejileri ve Mimarisi

3. 1 Topolojiler

Aktif-Aktif (çok bölgeli): Minimum RTO/RPO, tutarlılık ve çatışma çözümü gerektirir.
Aktif-Bekleme (sıcak/sıcak/soğuk): maliyet/hız dengesi.
Verilerin ve anahtarların coğrafi ayrımı: Bölge başına KMS/HSM, BYOK, bağımsız çoğaltma yolları.

3. 2 Veri ve yedeklemeler

PITR (point-in-time recovery): işlem günlükleri, arşivleme aralıkları ≤ Tier-1 için 5-15 dakika.
Anlık görüntüler/tam yedeklemeler: günlük/saatlik, 3-2-1 şemasına göre depolama (3 kopya, 2 ortam, 1 çevrimdışı/site dışı).
Değişmezlik: WORM/nesne kilitleri, eserlerin imza/karma zincirleri.
Kurtarma kataloğu: yedek envanter, bütünlük, son kullanma tarihi, test şifre çözme.

3. 3 Uygulamalar ve entegrasyonlar

Statles Services - IaC/CI aracılığıyla hızlı dağıtım

Durum bileşenleri: tutarlı anlık görüntüler, fırlatma sırasının düzenlenmesi.
Entegrasyonlar (PSP/KYC/toplayıcılar): çift kredi, geri dönüş uç noktaları, imzalı webhook'lar, yeniden teslim kontrolü (idempotency).


4) Kurtarma sırası (genel runbook)

1. Bir DR betiği bildirmek - DR Olay Komutanını (DR-IC) atamak, bir savaş odası başlatmak.
2. Hasar değerlendirmesi: etkilenen bölgeler/alt sistemler, mevcut RTA/RPA, feilover'ı etkinleştirme kararı.
3. İzolasyon/sınırlama: orijinal nedenleri engelleme (ağ ACL'leri, sırlar, sağlayıcının bağlantısını kesme).

4. DR başlatılıyor:
  • ağ/sırlar/KMS
  • DB/Vault/Cache
  • API/services - front/CDN - external integrations.
  • 5. Bütünlük kontrolü: sayaç. miktarlar, "kuru" istekler, sağlık örnekleri.
  • 6. Finans/oyunların uzlaştırılması: ödemelerin, bahislerin, bakiyelerin uzlaştırılması, işlemlerin idempotent tekrarı.
  • 7. İletişim: durum sayfası, oyuncular/ortaklar/düzenleyiciler; Zaman çizelgesini güncelle.
  • 8. Gözlem ve stabilizasyon: Normalizasyon ilerledikçe bozulmanın devre dışı bırakılması.
  • 9. Ölüm sonrası: RCA, CAPA, DRP güncellemesi.

5) Uzman runbook'lar (snippet'ler)

5. 1 Aktif Bekleme - Bekleme

yaml trigger: "loss_of_region_primary OR quorum_fail >= 5m"
prechecks:
- "secondary region green"
- "replication_lag <= 15m"
steps:
- DR-IC approves region_failover
- Platform: GSLB switch → secondary
- Data: promote replicas, enable PITR streams
- Apps: redeploy with region vars; warm caches
- QA: smoke tests (login, deposit, bet, payout)
- Comms: status-page + partner notice rollback: "switch-back after 60m stability window"

5. 2 Yolsuzluk DB/PITR'den Kurtarma

yaml trigger: "data_corruption_detected OR accidental_drop"
steps:
- Freeze writes (feature flag), snapshot evidence
- Restore to timestamp T (<= RPO)
- Reindex/consistency checks
- Replay idempotent events from queue (from T)
- Reopen writes in throttle mode validation: ["checksum_ok", "balance_diff=0", "orders_gap=0"]

5. DR modunda 3 PSP bozulması

yaml trigger: "auth_rate_psp1 < baseline-3σ for 15m"
steps:
- Route X%→psp2, cap payouts, enable manual VIP
- Reconciliation plan T+0, alerts Finance
- Notify players in cashier; vendor escalation

6) Veri bütünlüğü ve uzlaşma

Finans: depozitoların/ödemelerin/komisyonların mutabakatı, veri tekilleştirme ile bildirimlerin ve web kitaplarının yeniden gönderilmesi (idempotency-keys).
Oyun konturu: yuvarlak durumların geri kazanılması, gerekirse yerleşimlerin tekrarlanması, çift ücretlere/ücretlere karşı koruma.
Günlükler/denetimler: WORM günlüğü eşlemesinden önce/sonra, imzalar/karmalar, tutarlılık raporları.
DPO/Uyumluluk Raporu: PII etkisi durumunda, yakalama ölçeği, zaman çizelgesi ve bildirimler.


7) Anahtar teknolojiler için DR (örnekler)

DBMS (ilişkisel): senkron/asenkron çoğaltma, WAL yuvaları, hızlı teşvik, sıcak standbys.
NoSQL/önbellekler: multicluster, TTL-disability, cold filling, conflict-resolution olmadan bölgeler arası yazının reddi.
Kuyruklar/akışlar: ayna topikalleri/kümeleri, ofset kontrolü, tüketici veri tekilleştirme.
Nesne Depolama: sürüm oluşturma, bunker çoğaltma, nesne envanteri ve saklama ilkeleri.
CI/CD/artifacts: Kayıt kopyaları, eserlerin imzası, kritik konteynerlerin çevrimdışı kopyaları.
Sırlar/anahtarlar: Bölge başına KMS, bağımsız kök anahtarları, günlüğe kaydetme ve TTL ile kırılma camı.


8) DR'da güvenlik ve gizlilik

En az hak ilkesi: Bireysel rollere/profillere göre DR erişimleri (JIT/PAM).
Değişmez yedeklemeler: çevrimdışı/tesis dışı, kurtarma ve şifre çözme testi.
Düzenleyici pencereler: Yasal/DPO ile birlikte olay yakalama ve bildirim kararı (düzenleyici/banka/PSP/kullanıcılar).
İzlenebilirlik: Tam DR komutu etkinlik günlüğü, zaman çizelgesi imzası.


9) Egzersizler ve test türleri

Walkthrough/İnceleme: Belge/Rol/İletişim İncelemesi (Üç Aylık).
Masa üstü: Çatışma çözümü ile "kuru" senaryoları çalıştırın.
Teknik kısmi: Tek bir hizmet/veritabanının kurtarılması.
Tam yük devretme/anahtar değiştirme - trafiğin ve verilerin yedekleme bölgesine aktarılması.
Kaos günleri (kontrollü): Otomatikleri kontrol etmek için arıza/arıza enjeksiyonu.

Her test bir RTA/RPA, sapma listesi, CAPA ve DRP güncellemesi içeren bir rapordur.


10) Metrikler (KPI/KRI)

RTA/RPA vs RTO/RPO (Tier-1): %95 eşleşme ≥.
DR Test Kapsamı: ≥ 2 tam DR testleri/yıl + düzenli kısmi.
Time-to-First-Status: DR duyurusundan ≤ 15 dakika sonra.
Uzlaşma Zero-Diff: Tutarsızlıklar olmadan tüm nakit ve oyun mutabakatları.
Yedekleme Bütünlüğü: Spot geri yüklemelerin %100'ü bir çeyrekte başarılı olur.
Yapılandırma Sürüklenmesi: Birincil/ikincil (IaC karşılaştırması) arasında 0 sürüklenme.
DR'de güvenlik: Günlük ve onay ile %100 DR etkinlikleri.


11) RACI (büyütülmüş)

AktiviteDR-ICPlatform/SREVeri/DBAGüvenlik/DPOÖdemelerRisk/KYCÜrün/Engİletişim/PRYasal/Uyumluluk
DR DuyurusuA/RCCCCCCCC
Feilover/AsansörCA/RRCCCRBENBEN
Doğrulama/SağlıkCRA/RCCCRBENBEN
UzlaşmaBENRA/RBENRRRBENBEN
İletişimBENBENBENCCCBENA/RC
Düzenleyiciler/PSPBENBENBENA/RRRBENCR
Ölüm sonrası/CAPAA/RRRRRRRCC

12) Kontrol listeleri

12. 1 DR hazırlık

  • DR Ekibi/Satıcı/Düzenleyici kişileri güncellendi
  • Çoğaltma yeşil, PITR etkin, yedeklerin şifresinin çözülmesini test edin
  • JIT/PAM erişimleri, kırılma camı doğrulandı
  • Sahte oyun kitapları ve ortam değişkenleri geçerlidir
  • PSP/KYC Çift Kredi/Webhooks, Alternatif Rotalar
  • Durum Sayfası/Mesaj Şablonları Hazır

12. 2 DR sırasında

  • DR-IC atanmış, savaş odası açık, olay zaman çizelgesi
  • Neden izolasyon, betik, runbooks çalışan
  • Bütünlük kontrolleri, sağlık testleri, duman testleri
  • İlk genel güncelleme ≤ 15 dakika; SLA'larda ortaklara/düzenleyicilere bildirimler
  • Soruşturma için eserleri yakalama

12. 3 DR'dan sonra

  • Para/oyun ve dergilerin tam mutabakatı
  • Post-mortem, RCA, tarih ve sahipleri ile CAPA
  • DRP/BIA/İletişim/IaC Güncelleme
  • Yeniden test planını düzeltir

13) Şablonlar (parçalar)

13. 1 Hizmet kartı (DR pasaportu)

yaml service: payments-api tier: 1 dependencies: [auth, ledger-db, psp1, psp2, kms-eu]
rto: "45m"
rpo: "15m"
backups: {pitr: true, snapshots: "hourly", immutability: "7d"}
failover: {mode: "active-standby", regions: ["eu1","eu2"]}
runbooks: ["rb_failover_region", "rb_psp_degradation"]
health_checks: ["/healthz","/readyz"]

13. 2 DR test raporu (maruz kalma)

yaml test_id: DR-2025-10 scope: "Full switch-over eu1→eu2"
rta: "27m"
rpa: "11m"
issues:
- id: CAPA-117, desc: "долгое прогревание кэша", due: 2025-11-20, owner: SRE
- id: CAPA-118, desc: "устаревший webhook PSP#2", due: 2025-11-12, owner: Payments reconciliation: {finance: "ok", games: "ok"}
management_signoff: "2025-11-02"

13. 3 Durum mesajı şablonu


[UTC+02] Идет аварийное переключение в резервный регион. Игры доступны, выводы временно ограничены. Средства игроков в безопасности. Следующее обновление через 15 минут.

14) Uygulama Yol Haritası (6-8 hafta)

Hafta 1-2: Hizmetlerin ve bağımlılıkların envanteri, Katman sınıflandırması, RTO/RPO hedefleri, topoloji seçimi, DR pasaportları.
3-4. Haftalar: yedeklemelerin uygulanması/PITR/değişmezlik, gizli çoğaltma/KMS, runbookların hazırlanması ve durum.
Hafta 5-6: Kısmi teknik testler (veritabanı/önbellek/kuyruklar), PSP/KYC/bölge senaryolarına göre masa üstü.
7-8. Haftalar: tam geçiş (mümkünse), RTA/RPA, CAPA, DRP güncellemesi ve düzenli test planı ile rapor verin.


15) Diğer wiki bölümleriyle entegrasyon

Bağlantı: BCP, Risk Kaydı, Olay Yönetimi, Günlük Politikası (WORM), TPRM ve SLA, ISO 27001/27701, SOC 2, PCI DSS, RBAC/En Az Ayrıcalık, Şifre Politikası ve MFA, Değişim/Yayın Yönetimi.


TL; DR

Çalışma DRP = Katman tarafından açık RTO/RPO - Aktif-Aktif/Bekleme mimarisi + değişmez yedeklemeler/PITR - oynanabilir runbooklar ve feilover - para/oyunların uzlaştırılması - düzenli egzersizler ve CAPA'lar. Daha sonra herhangi bir büyük başarısızlık, öngörülebilir kurtarma süreleri ve düzenleyiciler ve oyuncular için sıfır sürprizle yönetilebilir bir prosedüre dönüşür.

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.