GH GambleHub

Disaster Recovery Plan

1) Мақсаты, саласы және қағидаттары

Мақсаты: ойыншылардың реттеу талаптарын, шарттарын және күтулерін бұзбай, апаттардан (техникалық, кибер, вендорлық, геосаяси) кейін АТ-платформасын уақтылы қалпына келтіруді қамтамасыз ету.
Саласы: өнімді орта (ойын контуры, төлемдер, KYC/AML, антифрод, DWH/BI витриналары), интеграция (PSP, KYC, CDN, студиялар/агрегаторлар), инфрақұрылым (бұлт/K8s, желілер, құпиялар/кілттер), деректер (ДБ, файлдар), логи).
Қағидаттары: safety-first, RTO/RPO-ны барынша азайту, автоматтандыру және жаңғыртылу (IaC), «әдепкі бойынша дәлелдену», тұрақты жаттығулар.


2) Жүйелерді жіктеу және қалпына келтіру мақсаттары

2. 1 Сындылық деңгейлері

Tier-1 (өмірлік маңызы бар): төлемдер/кассауттар, core-ойындар, логин/аутентификация, КБК/санкциялар.
Tier-2: нақты уақыт талдауы, маркетинг/CRM, DWH есептілігі.
Tier-3: ішкі порталдар, қосалқы сервистер.

2. 2 Нысаналы көрсеткіштер

RTO (Recovery Time Objective): сервисті қалпына келтіруге дейінгі уақыт.
RPO (Recovery Point Objective): уақыт бойынша деректердің жарамды жоғалуы.
RTA (Recovery Time Actual )/RPA (Recovery Point Actual): нақты мәндері есептерде тіркеледі.
MTO/MBCO: ең ұзақ бос тұру уақыты/ең аз қолайлы қызмет деңгейі (degraded mode).

Мақсаттар мысалы (бағдар үшін):
  • Tier-1 - RTO ≤ 30-60 мин, RPO ≤ 15 мин; Tier-2 — RTO ≤ 4 ч, RPO ≤ 1 ч; Tier-3 — RTO ≤ 24 ч, RPO ≤ 24 ч.

3) DR стратегиялары және сәулет

3. 1 Топологиялар

Active-Active (мульти-өңір): ең аз RTO/RPO, консистенттілікті және қақтығыс-қарама-қайшылықты талап етеді.
Active-Standby (ыстық/жылы/суық): шығындар/жылдамдық балансы.
Деректер мен кілттерді гео-бөлу: KMS/HSM per-region, BYOK, тәуелсіз репликалау жолдары.

3. 2 Деректер мен бэкаптар

PITR (point-in-time recovery): транзакция журналдары, мұрағаттау аралықтары ≤ Tier-1 үшін 5-15 мин.
Снепшоттар/фулл-бэкаптар: күнделікті/сағаттық, 3-2-1 схемасы бойынша сақтау (3 көшірме, 2 тасымалдағыш, 1 оффлайн/оффсайт).
Иммутабельділік: WORM/объектілік лактар, қолтаңба/артефактілердің хэш-тізбектері.
Қалпына келтіру каталогы: бэкап мүкәммалы, тұтастығы, жарамдылық мерзімі, тестілік таратып жазу.

3. 3 Қосымшалар мен интеграциялар

Стейтлес-сервистер: IaC/CI арқылы жылдам өрістету.
Стейтфул-компоненттер: келісілген снапшоттар, іске қосу кезектілігін оркестрлеу.
Интеграциялар (PSP/KYC/агрегаторлар): қосарлы кредитеншли, fallback-эндпоинттер, қол қойылған вебхактар, қайта жеткізуді бақылау (іспеттілік).


4) Қалпына келтіру тәртібі (жалпы runbook)

1. DR сценарийін жариялау → DR Incident Commander (DR-IC) тағайындау, war-room іске қосу.
2. Зақымдануларды бағалау: зақымдалған аймақтар/кіші жүйелер, өзекті RTA/RPA, фейловерді жандандыру туралы шешім.
3. Оқшаулау/контейнмент: бастапқы себептерді бұғаттау (желілік ACL, құпиялар, провайдерді ажырату).

4. DR баптандыру:
  • желі/құпиялар/KMS →
  • DB/сақтау орны/кэш →
  • API/сервистер → фронт/CDN → сыртқы интеграциялар.
  • 5. Тұтастығын тексеру: қарсы. сомалар, «құрғақ» сұраулар, health-сынамалар.
  • 6. Қаржы/ойындардың Reconciliation: төлемдердi, ставкаларды, баланстарды салыстыру, операцияларды идемпотенттiк қайталау.
  • 7. Коммуникация: мәртебе-бет, ойыншылар/серіктестер/реттеушілер; жаңартулардың уақыты.
  • 8. Бақылау және тұрақтандыру: нормалануына қарай деградациялардың белсенділігін жою.
  • 9. Пост-мортем: RCA, CAPA, DRP жаңартуы.

5) Арнайы runbooks (фрагменттер)

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 Сыбайлас жемқорлық БД/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 DR режимінде PSP деградациясы

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) Деректердің тұтастығы және reconciliation

Қаржы: депозиттерді/төлемдерді/комиссияларды салыстыру, хабарламалар мен вебхуктарды қайта жіберу.
Ойын контуры: раундтардың жай-күйін қалпына келтіру, қажет болған жағдайда есептерді қайталау, қосарланған есептен шығарудан/есептен шығарудан қорғау.
Журналдар/аудит: WORM-логтарды «дейін/кейін», белгі/хэштерді салыстыру, қайшылықсыздық туралы есептер.
DPO/комплаенс есебі: PII әсер еткен жағдайда - масштабты, таймлайны және хабарламаларды тіркеу.


7) Негізгі технологиялар үшін DR (мысалдар)

СУБД (реляциялық): синхронды/асинхрондық репликация, WAL, fast-promote слоттары, ыстық стендбаи.
NoSQL/кэштер: мультикластер, TTL-мүгедектігі, салқын толтыру, қайшылықсыз cross-region write-ден бас тарту.
Кезектер/ағындар: айналы топиктер/кластерлер, орын ауыстыруларды бақылау, тұтынушыларды дедупликациялау.
Объектілік сақтау орны: нұсқалау, «бункерге» репликалау, объектілер мүкәммалы және retention саясаты.
CI/CD/артефактілер: тізілімдердің репликалары, артефактілердің қолы, сыни контейнерлердің оффлайн-көшірмелері.
Құпиялар/кілттер: KMS per-region, тәуелсіз тамыр кілттері, журналданған break-glass және TTL.


8) DR-дағы қауіпсіздік және құпиялылық

Ең аз құқықтар қағидаты: жеке рөлдермен/профильдермен (JIT/PAM) DR-қол жеткізу.
Иммутабельді бэкаптар: оффлайн/оффсайт, қалпына келтіру және таратып жазу тесті.
Реттеуші терезелер: Legal/DPO-мен бірге оқиғаларды тіркеу және хабарламалар туралы шешім (реттеуші/банк/PSP/пайдаланушылар).
Трассалануы: DR командасының толық әрекеті журналы, таймлайн қолтаңбасы.


9) Оқу-жаттығулар және тест түрлері

Walkthrough/Review: құжатты/рөлдерді/контактілерді тексеру (тоқсан сайын).
Tabletop: сценарийлерді қайшылықтарды шешумен «құрғақ» күйге жылжыту.
Technical partial: жеке сервисті/ДБ қалпына келтіру.
Full failover/switch-over: Трафикті және деректерді резервтік аймаққа тасымалдау.
Chaos-күндері (бақыланатын): автоматтарды тексеру үшін істен шығу/істен шығу инъекциялары.

Әрбір тест → RTA/RPA, ауытқу тізімі, CAPA және DRP жаңартуы бар есеп.


10) Өлшемдер (KPI/KRI)

RTA/RPA vs RTO/RPO (Tier-1): 95% сәйкестік ≥.
DR Test Coverage: ≥ 2 толық DR-тест/жыл + тұрақты ішінара.
Time-to-First-Status: DR хабарландыруынан кейін 15 мин ≤.
Reconciliation Zero-Diff: айырмашылықтарсыз барлық ақшалай және ойын салыстырулары.
Backup Integrity: 100% ішінара қалпына келтіру тоқсан ішінде табысты болды.
Config Drift: primary/secondary (IaC-салыстыру) арасындағы 0 дрейф.
Security in DR: 100% DR әрекеттері журналмен және растаумен.


11) RACI (ірілендірілген)

БелсенділікDR-ICPlatform/SREData/DBASecurity/DPOPaymentsRisk/KYCProduct/EngComms/PRLegal/Compliance
DR хабарландыруA/RCCCCCCCC
Фейловер/көтерілуCA/RRCCCRII
Валидация/ДенсаулықCRA/RCCCRII
ReconciliationIRA/RIRRRII
КоммуникацияIIICCCIA/RC
Реттегіштер/PSPIIIA/RRRICR
Пост-мортем/САРАA/RRRRRRRCC

12) Чек парақтары

12. 1 DR дайындығы

  • DR командасының/вендорлардың/реттеушілердің контактілері жаңартылды
  • Жасыл репликация, PITR қосылған, тесттік бэкап мағынасын ашу
  • JIT/PAM, «break-glass» рұқсаттары тексерілді
  • Фейловер-плейбуктер және ауыспалы орта валидті
  • Қос кредитеншли/PSP/KYC веб-хактар, баламалы бағыттар
  • Мәртебе-бет/хабар үлгілері дайын

12. 2 DR кезінде

  • DR-IC тағайындалған, war-room ашылған, оқиғалар уақыты
  • себептерін оқшаулау, сценарий таңдау, runbooks іске қосу
  • Тұтастығын тексеру, денсаулық сынамалары, smoke-тесттер
  • Алғашқы көпшілік жаңартуы ≤ 15 мин; SLA бойынша серіктестерге/реттеушілерге хабарламалар
  • Тексеру үшін артефактілерді басып алу

12. 3 DR кейін

  • Ақшаны/ойындарды және журналдарды толық салыстыру
  • Пост-мортем, RCA, CAPA күндерімен және иелерімен
  • DRP/BIA/контактілерді/IaC жаңарту
  • Қайталама фикс тестінің жоспары

13) Үлгілер (фрагменттер)

13. 1 Сервис карточкасы (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 DR-тест есебі (үзінді)

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 Мәртебе хабарының үлгісі


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

14) Енгізудің жол картасы (6-8 апта)

1-2 апталар: сервистер мен тәуелділіктерді түгендеу, Tier сыныптамасы, RTO/RPO мақсаттары, топологияларды таңдау, DR-паспорттар.
3-4 апталар: бэкаптарды/PITR/иммутабельділікті іске асыру, құпияларды репликалау/KMS, runbooks және мәртебені дайындау.
5-6 апта: ішінара техникалық тесттер (ДБ/кэш/кезек), PSP/KYC/өңір сценарийлері бойынша tabletop.
7-8 апта: full switch-over (мүмкіндігінше), RTA/RPA, CAPA-мен есеп беру, DRP-ны жаңарту және тұрақты тестілеу жоспары.


15) wiki басқа бөлімдерімен интеграциялау

Байланыстыру: BCP, Тәуекелдер тізілімі, Инцидент-менеджмент, Логтар саясаты (WORM), TPRM және SLA, ISO 27001/27701, SOC 2, PCI DSS, RBAC/Least Privilege, Құпия саясат және MFA, Басқару өзгертулермен/шығарулармен.


TL; DR

Жұмыс DRP = Tier бойынша анық RTO/RPO → Active-Active/Standby архитектурасы + иммутабельді бэкаптар/PITR → ойнатылатын runbooks және фейловер → ақша/ойындар reconciliation → тұрақты жаттығулар және CAPA. Сонда кез келген ірі сәтсіздік реттеушілер мен ойыншылар үшін болжамды қалпына келтіру уақыты мен нөлдік тосын сый болатын басқарылатын рәсімге айналады.

Contact

Бізбен байланысыңыз

Кез келген сұрақ немесе қолдау қажет болса, бізге жазыңыз.Біз әрдайым көмектесуге дайынбыз!

Интеграцияны бастау

Email — міндетті. Telegram немесе WhatsApp — қосымша.

Сіздің атыңыз міндетті емес
Email міндетті емес
Тақырып міндетті емес
Хабарлама міндетті емес
Telegram міндетті емес
@
Егер Telegram-ды көрсетсеңіз — Email-ге қоса, сол жерге де жауап береміз.
WhatsApp міндетті емес
Пішім: +ел коды және номер (мысалы, +7XXXXXXXXXX).

Батырманы басу арқылы деректерді өңдеуге келісім бересіз.