Ռուսական վերականգնման սցենարները
1) Ինչո՞ ւ է անհրաժեշտ DR և ո՞ րն է նպատակը։
Diaster Recovery-ը (DR) ճարտարապետությունների, գործընթացների և ուսուցման մի շարք է աղետից հետո ծառայությունների վերականգնման համար (Դանատորի/տարածաշրջանի հրաժարվելը, տվյալների կորուստները, զանգվածային միգրացիոն սխալները)։ DR-ի նպատակն է կատարել RTO/RPO կոդերը վերահսկվող արժեքով և ռիսկով, պահպանելով հաճախորդների վստահությունը և համապատասխանեցնել կարգավորող։
RTO (Recovery Time Objective) 'թույլատրելի ժամանակը։
RPO (Recovery Point Objective) 'տվյալների թույլատրելի կորուստ (ժամանակը վերջին կոնսիստենտից)։
RLO (Recovery Level Objective) 'ֆունկցիոնալի մակարդակը, որը պետք է վերադառնա առաջին (նվազագույն կենսունակ ծառայություն)։
2) Քննադատության համակարգերի դասակարգումը
Tier 0 (կենսական կարևոր) 'վճարումները, լոգինը, KYC, գործարքների միջուկը ՝ RTO 3515 րոպե, RPO 351-5։
Tier 1 (բարձր) 'վիրահատական վահանակներ, D-1 հաշվետվություններ - RTO 241 ժամ, RPO 2415-60 ռուբլիներ
Tier 2 (միջին) 'back գրասենյակը, near-real-time վերլուծաբանը - RTO 244-8 ժամ, RPO 244-8։
Tier 3 (ցածր), ոչ քննադատական կոմպոզիցիաներ 'RTO 2424-72 ժամ, RPO 2424 ռուբլիներ
Յուրաքանչյուր ծառայություն նշանակել Tier + www.RTO/RPO ծառայություններում։ որոշումներն ու բյուջեները հենց իրենց հետ են։
3) Սպառնալիքների և սցենարների մոդել
Տեխնոգեն 'AZ/տարածաշրջանի/պրովայդերի մերժումը, ցանցի/RF-ի քայքայումը, BD/պահեստավորման ձախողումը, զանգվածային բագը։
Մարդկային գործոնը 'սխալ եզրեր/IaC, տվյալների հեռացում, վարկաբեկում։
Բնական/արտաքին 'հրդեհը/ջրհեղեղը, էներգիայի ընդհատումները, իրավական արգելափակումները։
Բոլորի համար 'գնահատել հավանականությունը/իմպակտը, կապել DR սցենարին և պլեյբուկին։
4) DR ճարտարապետության պատրանքները
1. Active-Action (Multi-Region). Երկու տարածաշրջանները ծառայում են ռուսական։
Պլյուսներ ՝ նվազագույն RTO/RPO, բարձր կայունություն։
Մինուսները 'տվյալների բարդությունը/կոնսիստենտությունը, բարձր գինը։
Որտեղ 'կարդալ-ծանր, քեշիրացված բեռներ, stateless-ծառայություններ, multi-winter DB (հակամարտությունների խիստ կանոնները)։
2. Active-Passive (Hot Standby): «տաք» լոկոմոտիվը պահում է ամբողջովին տաքացված պատճենը։
RTO: րոպե; RPO: րոպե։ Պահանջում է ավտոմատացված failover և վերարտադրում։
3. Warm Standby-ը 'ծանրության ռեսուրսների մի մասը, ավտովթարի ժամանակ մեծացումը։
RTO 'տասնյակ րոպե; RPO: 15-60 ռուբլիներ Տնտեսական, բայց ավելի երկար։
4. Pilot Light: նվազագույն «կայծ» (մետատվյալներ/պատկերներ/ջութակներ) + արագ շրջադարձ։
RTO: ժամացույց; RPO 'ժամացույց։ Էժան, հարմար է Tier 2-3 համար։
5. Backup & Restore: offfline bakaps + ձեռքի տաքացում։
RTO/RPO 'ժամացույց-օր։ Միայն ցածր քննադատության և արխիվների համար։
5) Տվյալները և ներդաշնակությունը
Repacation BD
Սինխրոնը գրեթե զրոյական RPO է, բայց արտադրում է լատենտ/արժեքը։
Ասինխրոն 'ավելի լավ արտադրողականություն, RPO> 0 (ամսագրերի պոչը)։
Համաձայնություն 'ընտրեք մոդել (strong/eventium/causal)։ Վճարումների համար խիստ է, վերլուծության համար 'eventa.ru։
Sreess (wwww.apshots): Պարբերաբար ստեղծեք խորհրդատվական կետեր + պահեք ամսագրերը (WAL/redo)։
Քրոս-ռեգիոնային գործարքներ 'խուսափեք 2PC-ից։ օգտագործեք idempotent վիրահատություններ, dei-i-կրկնեք (retry's deduplication), event sourcing։
Հերթերը/անվադողերը 'կրկնօրինակումը/հացահատիկը, DLQ, պատվեր և կոնսուումենտալ։
6) Ցանցը, ցանցը և RF-ը
GSLB/Anycript/RF: failover/failback քաղաքականությունները, ցածր TTL (բայց ոչ չափազանց), health-winks մի քանի տարածաշրջաններից։
L7-միկրոօրգանիզացիա 'տարածաշրջանային քարտեզներ, ֆիչի դրոշներ դեգրադացիայի (գործառույթների սահմանափակում)։
Private-links/MSN 'պահեստային ալիքները պրովայդերների (PMS/KYC/CDN)։
Rate limiting 'պաշտպանություն փոթորիկից վերականգնման ժամանակ։
7) Stateful vs Stateless
Stateless-ը փոխանցվում է ջութակով/ավտոսկեյլ; Stateful-ը պահանջում է համաձայնեցված տվյալների ռազմավարություն (կրկնօրինակում, սարքավորումներ, կրկնօրինակումներ, քվորում)։
Քաշ/նստաշրջան 'արտաքին (Redis/Memcached) քրոսային-ռեգիոնային կրկնօրինակմամբ կամ re-seed ամսագրերով։ նստարաններ պահել հոսանքներում (JWT) կամ ընդհանուր պահեստում։
8) Triggers և DR ավտոմատիզացիա
SLO-gardrails-ը և զոնդերի քվորումը ավտոմատ region-failover runbook են։
Change freeze-ը ավտովթարի ժամանակ 'մենք արգելափակում ենք ոչ ռելեվանտային ֆորումները/2019։
Infrastructure as Code: Infrastructure as Code: Infrastrastructure as Code
Դերերը 'ավտոմատ promote կրկնօրինակներ BD + writers/գաղտնիքները։
9) Հաղորդակցություն և ընկերակցություն
War-room: IC/TL/Comms/Scribe; SEV-ի միջանցքների ընդմիջումները։
Կարգավիճակ-էջ 'ազդեցության երկրագրությունը, ETA-ը, շրջանցիկ ճանապարհները։
Կարգավորիչ 'ծանուցումների ժամանակը, տվյալների անվտանգությունը, անփոփոխ evidence պահպանումը։
Գործընկերներ/պրովայդերներ 'հաստատված կապ, որը հատկացված է ջրանցքին։
10) DR թեստեր և ուսուցումներ
Tabletop 'քննարկում ենք սցենարը և լուծումները։
Game Day (steige/prod-lit) 'AZ/տարածաշրջանների ձախողման իմիտացիա, պրովայդերի անջատումը, RF-ի նետումը։
Restore-թեստեր 'պարբերաբար վերականգնում ենք բեքապները մեկուսացման մեջ և վալիդուրացնում ենք ամբողջականությունը։
Chaos/Failure inject: Ցանցի/հանգույցների/կախվածության վերահսկվող ձախողումները։
KPI ուսուցումները ՝ www.RTO/RPO, պլեյբուսների թերություններ, CAPA։
11) Ֆինանսներ և ռազմավարության ընտրություն (FinOps)
Համարեք ԱՄՆ դոլարը կրճատված RPO/RTO-ի համար, որքան ավելի ցածր է նպատակից, այնքան թանկ են ալիքները, լիցենզիաները, պահուստները։
Հիբրիդ ՝ Tier 0 - action/hot; Tier 1 — warm; Tier 2–3 — pilot/backup.
Տվյալները թանկ են 'օգտագործեք սառը շերտեր (արխիվ/S3/GLACIER), ռեմենտալ կեղևներ, դեդուպլիկացիա։
Ծախսերի և հավաստագրերի պարբերական հոսքը/DR-infra։
12) DR հասունության մետրերը
RTO (փաստ) և RPO (փաստ) յուրաքանչյուր Tier-ում։
DR Coverage: Ծառայությունների տոկոսը կազմված սցենարի/պլեյբուկի/թեստ։
Backup Success & Restore Success-ը ամենօրյա հաջողությունն է և ստուգված վերականգնումները։
Time-To-Declare Diaster-ը failover որոշման կայացման արագությունն է։
Failback Time: Ստանդարտ նորմալ տեղաբանության համար։
AleksandRate Ուսուցումները 'գտած օրինագծերը/ուսմունքները։
Compliance Evidence Completeness-ը արտեֆակտների ամբողջությունն է։
13) Չեկ թերթերը
Նախքան DR ներդրումը
- Ծառայողական-կատալոգը պարունակում է Tier, RTO/RPO, կախվածությունը և սեփականատերերը։
- Ընտրվել է (AA/AP/WS/PL/IV) Tier-ում և։
- Կոնսիստենտության և վերարտադրության համաձայնագրերը հետևյալն են։
- GSLB/IV/միկրոօրգանիզացիա և health-winks լուծված և փորձարկվել են։
- Bakaps, դիպուկահարներ, փոփոխությունների ամսագրեր, ներառված, ստուգված են restore-ում։
- Պլեյբուկի DR և պրովայդերների շփումները իրական տեսքով։
Պատահականության ժամանակ (հակիրճ)
- Հայտարարեք SEV-ը և հավաքեք war-room; սառեցնել ածխաջրերը։
- Ստուգել զոնդերի կվորումը; ամրագրել իմպակտը/աշխարհագրությունը։
- Կատարել Failover Runbook: 108, BD-promushen, հերթեր, kash։
- Ներառեք degrade-UX/limita; հրապարակել apdayts SLA-ով։
- Հավաքել evidence (timline, գրաֆիկա, լոգներ, թիմեր)։
Վթարից հետո
- Դիտեք SLO N ընդմիջումները; կատարել failback ըստ պլանի։
- Անցկացնել AAR/RCA; նախագծել CAPA-ն։
- Թարմացնել պլեյբուսները, ալերտների կատալիզատորները, DR թեստային քեյսները։
- Զեկուցել սթեյքհոլդերներին/կարգավորողներին (եթե անհրաժեշտ է)։
14) Օրինաչափություններ
14. 1 DR-սցենարի քարտ (օրինակ)
ID: DR-REGION-FAILOVER-01
Scope: prod EU ↔ prod US
Tier: 0 (Payments, Auth)
Targets: RTO ≤ 15m, RPO ≤ 5m
Trigger: quorum(probes EU, US) + burn-rate breach + provider status=red
Actions:
- Traffic: GSLB shift EU→US (25→50→100% with green SLIs)
- DB: promote US-replica to primary; re-point writers; freeze schema changes
- MQ: mirror switch; drain EU DLQ; idempotent reprocess
- Cache: invalidate region-specific keys; warm critical sets
- Features: enable degrade_payments_ux
- Comms: status page update q=15m; partners notify
Guardrails: payment_success ≥ 98%, p95 ≤ 300ms
Rollback/Failback: EU green 60m → 25→50→100% with guardrails
Owners: IC @platform, DB @data, Network @netops, Comms @support
14. 2 Runbook «Promote կրկնօրինակներ BD» (հատված)
1) Freeze writes; verify WAL applied (lag ≤ 30s)
2) Promote replica; update cluster VIP / writer endpoint
3) Rotate app secrets/endpoints via remote config
4) Validate: read/write checks, consistency, replication restart to new secondary
5) Lift freeze, monitor errors p95/5xx for 30m
14. 3 DR ուսուցումների պլանը (հակիրճ)
Purpose: to check RTO/RPO Tier 0 in case of EU failure
Scenario: EU incoming LB down + 60s replication delay
Success criteria: 100% traffic in US ≤ 12m; RPO ≤ 5m; SLI green 30m
Artifacts: switching logs, SLI graphs, step times, command output
15) Anti-patterna
«Բեքապներ կան» առանց ռուսական հետազոտական թեստերի։
Գաղտնիքները/էնդպոինտները ինքնաբերաբար չեն փոխվում։
Idempotenty-ի բացակայությունը կրկնապատկվում է/կորցրած գործարքները ռուսական առաքման ժամանակ։
Նույն կիսագունդները տարածաշրջանների համար առանց ֆիչի դրոշների դեգրադացիայի։
Երկար Time-to-Declare-ը «կեղծ անհանգստության» վախի պատճառով։
Մոնոիդային պրովայդերներ (PFC/KYC) առանց այլընտրանքի։
Չկա failback պլան, մենք ապրում ենք «հավիտյան» արտակարգ տեղաբանության մեջ։
16) Ճանապարհի քարտեզը (6-10 շաբաթ)
1. Մոսկվան։ 1-2 'Tier-ի ծառայությունների դասակարգումը, RTO/RPO կոդավորման տեղադրումը, DR արտոնագրերի ընտրությունը։
2. Մոսկվան։ 3-4 'կրկնօրինակման/bakas, GSLB/IV, առաջընթացի ընթացակարգեր։ պլեյբուսներ և runbook '2019
3. Մոսկվան։ 5-6: առաջին DR ուսուցումները (tabletop no stage), մետրիկի և CAPA-ի ամրագրումը։
4. Մոսկվան։ 7-8 'ուսման պրո-լայթ, սահմանափակ կրակով; ավտոմատիզացիա failover.
5. Մոսկվան։ 9-10 'ծախսերի օպտիմիզացումը (FinOps), Tier 0 տեղափոխումը hot/AA, եռամսյակային ուսուցումների և հաշվետվությունների կարգավորումը։
17) Արդյունքը
MeDR-ը ոչ միայն bekaps-ն է։ Սա համաձայնեցված ճարտարապետություն է, failover/failback ավտոմատիզացիա, տվյալների կարգապահություն (idempotention/վերարտադրություն), վերապատրաստում և թափանցիկ հաղորդակցություններ։ Երբ RTO/RPO-ն իրական է, պլեյբուսները զարգանում են, իսկ ստալինի ուսմունքները վերածվում են կառավարվող իրադարձության, որից հետո ծառայությունները արագ և կանխատեսելիորեն վերադառնում են նորմալ։