GH GambleHub

Planul de recuperare în caz de dezastre

1) Scop, domeniu de aplicare și principii

Scopul: de a asigura recuperarea la timp a platformei IT după dezastre (cele, cibernetice, furnizoare, geopolitice) fără a încălca cerințele de reglementare, contractele și așteptările jucătorilor.
Zona: medii productive (circuit de jocuri, plăți, KYC/AML, antifraudă, storefronturi DWH/BI), integrări (PSP, KYC, CDN, studiouri/agregatoare), infrastructură (cloud/K8s, rețele, secrete/chei), date (baze de date, fișiere, jurnale).
Principii: safety-first, RTO/RPO minimizare, automatizare și reproductibilitate (IaC), „provability by default”, exerciții regulate.


2) Clasificarea sistemului și obiectivele de recuperare

2. 1 Niveluri critice

Nivelul 1 (vital): plăți/încasări, jocuri de bază, autentificare/autentificare, ICC/sancțiuni.
Tier-2: analiză în timp real, marketing/CRM, raportare DWH.
Tier-3: portaluri interne, servicii auxiliare.

2. 2 Obiective

RTO - Obiectivul timpului de recuperare

Recovery Point Obiectiv (RPO) - pierdere de timp permisă a datelor.
RTA (Timpul de recuperare Real )/RPA (Punct de recuperare Real) - valorile reale sunt înregistrate în rapoarte.
MTO/MBCO: downtime maxim tolerat/nivel minim de serviciu acceptabil (mod degradat).

Obiective exemplu (de referință):
  • Nivel-1 - RTO ≤ 30-60 min, RPO ≤ 15 min; - RTO 4 , RPO 1; Tier-3 - RTO ≤ 24 ч, RPO ≤ 24 ч.

3) DR Strategii și arhitectură

3. 1 Topologii

Activ-activ (multi-regiune): RTO/RPO minim, necesită consecvență și rezolvarea conflictelor.
Active-Standby (cald/cald/rece): echilibru cost/viteză.
Geo-separarea datelor și cheilor: KMS/HSM pe regiune, BYOK, căi independente de replicare.

3. 2 Date și copii de rezervă

PITR (point-in-time recovery): jurnale de tranzacții, intervale de arhivare ≤ 5-15 minute pentru Tier-1.
Instantanee/backup complet: zilnic/oră, stocare în conformitate cu schema 3-2-1 (3 copii, 2 medii, 1 offline/offsite).
Imutabilitate: încuietori WORM/obiect, lanțuri semnătură/hash de artefacte.
Catalog de recuperare: inventar de rezervă, integritate, data expirării, decriptări de testare.

3. 3 Aplicații și integrări

Servicii Statles - Implementare rapidă prin IaC/CI

Componente statefull: instantanee consistente, orchestrarea secvenței de lansare.
Integrări (PSP/KYC/agregatoare): credite duble, puncte finale de rezervă, cărți web semnate, control re-livrare (idempotență).


4) Ordinea de recuperare (runbook general)

1. Declararea unui script DR → atribuirea DR Incident Commander (DR-IC), lansarea unui război-cameră.
2. Evaluarea daunelor: regiunile/subsistemele afectate, actualele RTA/RPA, decizia de activare a feilover-ului.
3. Izolare/izolare: blocarea cauzelor originale (ACL-uri de rețea, secrete, deconectarea furnizorului).

4. Iniţializarea DR:
  • rețea/secrete/KMS →
  • DB/Vault/memorie cache →
  • API/servicii → integrări frontale/CDN → externe.
  • 5. Verificare integritate: contra. cantități, cereri „uscate”, mostre de sănătate.
  • 6. Reconcilierea finanțelor/jocurilor: reconcilierea plăților, pariurilor, soldurilor, repetarea idempotentă a tranzacțiilor.
  • 7. Comunicaţii: status page, jucători/parteneri/autorităţi de reglementare; actualizați cronologia.
  • 8. Observarea și stabilizarea: dezactivarea degradării pe măsură ce normalizarea are loc.
  • 9. Post-mortem: RCA, CAPA, actualizare DRP.

5) Runbooks de specialitate (fragmente)

5. 1 Active-Standby → Standby

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 Corupția DB/Recuperarea de la PITR

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. 3 PSP degradare în modul DR

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) Integritatea datelor și reconcilierea

Finanțe: reconcilierea depozitelor/plăților/comisioanelor, re-trimiterea notificărilor și a cărților web cu eliminarea duplicatelor (chei de idempotență).
Conturul jocului: recuperarea stărilor rotunde, repetarea așezărilor, dacă este necesar, protecția împotriva dublei taxe/taxe.
Jurnale/audituri: înainte/după maparea jurnalului WORM, semnături/hash-uri, rapoarte de consistență.
DPO/Raport de conformitate: În caz de impact PII, scala de captare, cronologie și notificări.


7) DR pentru tehnologii cheie (exemple)

DBMS (relațional): replicare sincronă/asincronă, sloturi WAL, promova rapid, standbys fierbinte.
NoSQL/caches: multicluster, TTL-handicap, umplere la rece, respingerea transversală scrie fără conflict-rezoluție.
Cozi/fluxuri: topicaluri/clustere în oglindă, control offset, eliminarea duplicatelor consumatorilor.
Stocarea obiectelor: versioning, replicarea buncărului, inventarul obiectelor și politicile de păstrare.
CI/CD/artefacte: replici ale registrelor, semnătura artefactelor, copii offline ale containerelor critice.
Secrete/chei: KMS pe regiune, taste independente rădăcină, sparge-sticlă cu logare și TTL.


8) Securitate și confidențialitate în DR

Principiul celor mai puține drepturi: DR-accesează prin roluri/profiluri individuale (JIT/PAM).
Backup imuabil: offline/offsite, test de recuperare și decriptare.
Ferestre de reglementare: decizia de captare și notificare a evenimentelor (regulator/bancă/PSP/utilizatori) împreună cu Legal/DPO.
Trasabilitate: jurnal complet de activitate comandă DR, semnătură cronologie.


9) Exerciții și tipuri de teste

Walkthrough/Review: Document/Rol/Contact Review (trimestrial).
Tabletop: rulați scenarii pe „uscat” cu rezolvarea conflictelor.
Parțial tehnic: recuperarea unui singur serviciu/bază de date.
Failover/switch-over complet - transferul de trafic și date în regiunea de rezervă.
Haos-zile (controlat): injectarea de eșecuri/eșecuri pentru a verifica automatica.

Fiecare test → un raport cu o RTA/RPA, lista de abateri, CAPA și actualizarea DRP.


10) Valori (KPI/KRI)

RTA/RPA vs RTO/RPO (Tier-1): 95% meci ≥.
Acoperire de testare DR: ≥ 2 teste DR complete/an + parțială regulată.
Time-to-First-Status: ≤ 15 min după anunțul DR.
Reconcilierea Zero-Diff: toate reconcilierile cash și joc fără discrepanțe.
Integritate de rezervă: 100% din restaurările spot au succes într-un sfert.
Config Drift: 0 derivă între primar/secundar (comparație IaC).
Securitate în DR: 100% activități DR cu jurnal și confirmare.


11) RACI (mărită)

ActivitateDR-ICPlatformă/SREDate/DBASecuritate/DPOPlățiRisc/KYCProdus/EngComms/PRLegalitate/Conformitate
Anunt DRA/RCCCCCCCC
Feilover/LiftCA/RRCCCRII
Validare/SănătateCRA/RCCCRII
ReconciliereaIRA/RIRRRII
ComunicaţiiIIICCCIA/RC
Regulatoare/PSPIIIA/RRRICR
Post-mortem/CAPAA/RRRRRRRCC

12) Liste de verificare

12. 1 Pregătirea DR

  • Contactele echipei DR/Furnizor/Regulator actualizate
  • Verde replicare, PITR activat, test de decriptare de backup-uri
  • Accesorii JIT/PAM, verificate prin spargere
  • Cărțile de redare false și variabilele de mediu sunt valide
  • PSP/KYC Dual Credits/Webhooks, Rute alternative
  • Pagina de stare/Șabloane de mesaje gata

12. 2 În timpul DR

  • DR-IC atribuit, cameră de război deschis, cronologie eveniment
  • Provoca izolarea, scripting, rularea runbooks
  • Controale de integritate, teste de sănătate, teste de fum
  • Prima actualizare publică ≤ 15 min; notificări către parteneri/autorități de reglementare privind SLA
  • Capturarea artefactelor pentru investigare

12. 3 După DR

  • Reconcilierea completă a banilor/jocurilor și revistelor
  • Post-mortem, RCA, CAPA cu date și proprietari
  • DRP/BIA/Contact/IaC Actualizare
  • Remediază planul de retestare

13) Șabloane (fragmente)

13. 1 Card de serviciu (pașaport DR)

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 raport de testare DR (expunere)

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 Șablonul mesajului de stare


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

14) Foaie de parcurs de implementare (6-8 săptămâni)

Săptămânile 1-2: inventarul serviciilor și dependențelor, clasificarea nivelului, obiectivele RTO/RPO, selecția topologiei, pașapoartele DR.
Săptămânile 3-4: implementarea de backup-uri/PITR/imutabilitate, replicare secretă/KMS, pregătirea runbooks și starea.
Săptămânile 5-6: teste tehnice parțiale (baze de date/cache/cozi), tabletop conform scenariilor PSP/KYC/regiune.
Săptămânile 7-8: comutare completă (dacă este posibil), raport cu RTA/RPA, CAPA, actualizare DRP și plan de testare regulat.


15) Integrarea cu alte secțiuni wiki

Link către: BCP, Registrul riscurilor, Managementul incidentelor, Politica de jurnal (WORM), TPRM și SLA, ISO 27001/27701, SOC 2, PCI DSS, RBAC/Cel mai mic privilegiu, Politica de parole și MFA, Schimbare/Release Management.


TL; DR

Lucru DRP = clar RTO/RPO de nivel → Active-Active/Standby arhitectura + backup-uri imuabile/PIT → runbooks redate și feilover → reconcilierea banilor/jocuri → exerciții regulate și CAPA-uri. Apoi, orice eșec major se transformă într-o procedură ușor de gestionat cu timpi de recuperare previzibile și surprize zero pentru autoritățile de reglementare și jucători.

Contact

Contactați-ne

Scrieți-ne pentru orice întrebare sau solicitare de suport.Suntem mereu gata să ajutăm!

Pornește integrarea

Email-ul este obligatoriu. Telegram sau WhatsApp sunt opționale.

Numele dumneavoastră opțional
Email opțional
Subiect opțional
Mesaj opțional
Telegram opțional
@
Dacă indicați Telegram — vă vom răspunde și acolo, pe lângă Email.
WhatsApp opțional
Format: cod de țară și număr (de exemplu, +40XXXXXXXXX).

Apăsând butonul, sunteți de acord cu prelucrarea datelor dumneavoastră.