Վիրահատությունների պլեյբուսներ
1) Ի՞ նչ է պլեյբուկը, և ի՞ նչ է այն տարբերվում runbook-ից։
Runbook-ը գծային հերթափոխային հրահանգն է տիպային վիրահատության/ալերտի համար («մեկ անգամ, երկու, երեք»)։
Պլեյբուկը լուծումների ծառն է, որը կապված է առաստաղների հետ, տարբեր ախտանիշներ են պարունակում տարբեր վարկածներ, որոնք պարունակում են տարբեր գործողությունների ճյուղեր։ Ներառում է ընտրության չափանիշներ, խաղային պայմաններ և fallback ճյուղեր։
Պլեյբուկի նշանակումը նվազեցնում է MTTA/MTTR-ը և իմպրովիզացիայի մակարդակը անորոշության դեպքում։
2) Որտե՞ ղ են պլեյբուսները առաջին հերթին անհրաժեշտ
Միջադեպերը 'SLO (availability/latency/success), բիզնես SLI-ի ձախողումը (փոխհատուցման/հաջողությունը)։
Փոփոխությունները ՝ օրինագծեր, ֆիչի դրոշներ, դելիգներ (canary/rollback)։
Ծառայության պատուհանները 'BD/brocers, հավաստագրերի հաշվարկներ։
Պրովայդերներ ՝ PMS/KYC/CDN/IDP - դեգրադացիա և սվիչ-օվեր։
Անվտանգությունը 'փոխկապակցված բանալին, կասկածելի ակտիվությունը։
Intel Ops-ը 'թարմության ուշացում, սխեմայի դեգրադացիա, pline-ի դեգրադացիա։
3) Պլեյբուկի ստանդարտները (նվազագույն կազմը)
1. Քարտեզ ՝ Lenta.ru, Տարբերակը/Ամսաթիվը, Սեփականատերը (թիմը/դերը), Ծառայություններ/շրջաններ/տենանտներ, որոնք կապված են քաղաքականության/ստանդարտների հետ։
2. Գործարկման նպատակը և պայմանները 'ինչ SLO/SLI-ն պաշտպանում ենք, թե ինչ ալտերտեր/ձգումներ են օգտագործվում։
3. Հիպոթեզային վարկածի ախտանիշները հետևյալն են.
4. Որոշումների ծառը 'փակցված, անվտանգության խաղացողներ, կանգառի չափանիշներ/։
5. Գործողություններ 'թիմերի/հղում runbook' 2019
6. Հաղորդակցություն 'ցիկկապդեյթ (Impack No. Ախտորոշում International Stream. ապդեյթ), ջրանցքներ և հաճախականություններ։
7. Արձագանք/ֆոլբեկ 'հստակ backout պլան, limits և UX դեգրադացիայի դրոշը։
8. Ավարտման չափանիշները 'չափումներ, դիտման ժամանակավոր պատուհաններ։
9. Evidence: Ինչ պահպանել (լոգներ, գրաֆիկներ, սքրինշոտներ, ID ticets)։
10. Փոփոխության պատմությունը 'changelog, հայտնի սահմանափակումներ։
4) Պլեյբուկի տաքսոնոմիա (օրինակ 108)
INC- միջադեպեր (SLO/SLI, պրովայդերներ, ենթակառուցվածքներ)։
REL- ալյումինե, արձագանքներ, դելիգներ/դրոշներ։
MW- ը ծառայության պատուհաններն են (DB/queue/com/OS)։
SEC- անվտանգություն (հասանելի, բանալիներ, կասկածելի գործողություններ)։
MSA- ն թարմ/որակ/սխեմա է։
PROV- ը արտաքին պրովայդերներ են (PMS/KYC/CDN/Email/SMS)։
5) Կյանքի ցիկլը և ունեցվածքը
1. Նախաձեռնություն 'մրցույթի/սիմվոլի/փոփոխության արդյունքների վրա։
2. Չեռնովիկ 'հեղինակը = մրցույթի սեփականատերը; revew: MSE/անվտանգություն/տվյալներ (օրինագծով)։
3. Օդաչուն 'tabletop/game-day; ժամանակի և թերությունների ամրագրում։
4. Հրապարակումը 'ռեպո (Docs-as-Code), տարբերակը, թեգերը, հղումները dashbords։
5. Թարմացում ՝ RCA/CAPA, առնվազն մեկ անգամ թաղամասում։ SLA թարմություն։
6. Արխիվը/դեպրեսիան 'փոխարինելով/կորցնելով արդիականությունը։
6) Ինտեգրումը գործիքների հետ
Alts-ը Playbook-ն է 'յուրաքանչյուր Page կանոնները կատարվում են հենց մեկ հիմնական պլեյբուկի վրա։
ChatOps: «/play start
CMDB/կատալոգը ունի ռելեվանտային պլեյբուսների ցանկը, սեփականատերերը, SLO, dashbords։
GitOps: Pleybuks և runbook "և ապրում են Git-ում, անցնում են PR-ռևվ և ոսպնյակներ։
7) Պլեյբուսների որակի մետրիկները
Actionability: Գործարկման 3690 տոկոսը հանգեցնում է ֆինանսական գործողություններին առանց «անզգայացման»։
Time-to-first-acion: րոպե-երկուսը Page-ից մինչև առաջին իմաստալից։
Coverage: % Page-alerts, որոնք կապված են (նպատակը 100%)։
Freshness: Պլեյբուսների մասը թարմ 90 օր է։
Windowrate: Դիտողությունները 100 պլեյբուսի վրա/սիմուլյացիաներում։
Reuse 'քանի անգամ պլեյբուկը իրականում օգտագործվել է (և ի՞ նչ արդյունքներ է բերել)։
8) Anti-patterna
«Պլեյբուկ-հանրագիտարանը» 20 էջով առանց որոշումների ծառի։
Թիմերը առանց արդյունք ակնկալելու («կատարել X», իսկ ի՞ նչ պետք է փոխվի)։
Չկա backout պլան և լիմիտներ, խնդրի էսկալացիայի ռիսկ։
Հաղորդակցության ալիքները/ընդմիջումները նշված չեն 'PR ռիսկերի աճը։
Պլեյբուկը առանց սեփականատիրոջ/նորարարության ամսաթվի, ոչ ոք չի հավատում նրա արդիականությանը։
Տասնյակ նման պլեյբուսներ մեկ կիսագնդի փոխարեն։
9) Մինի-ձևանմուշ (YAML-գաղափար)
yaml id: INC-PAY-001 name: "Payment Success Down"
version: 2. 4 (2025-10-15)
owner: team-payments@sre scope: [prod, region: eu, tenants: all]
goal: "Restore success_ratio ≥ 98% without violating SLA"
triggers:
- alert: slo. burn. payment_success_ratio
- external_status: psp-a partial outage symptoms:
- "5xx growth in payments-api"
- "p95 latency> 400ms on PSP-A"
decision_tree:
- if: "quorum(eu,us) confirms drop AND PSP-A status=partial"
then:
- action: "Reduce PSP-A weight to 30%"
runbook: rb://payments/traffic-shift guardrails: ["success_ratio improving 10m", "p95<300ms"]
- action: "Enable degrade_payments_ux"
runbook: rb://payments/feature-flags
- action: "Status update (30m) by template"
comms: statuspage://payments else:
- action: "Check database/cache/queue"
runbook: rb://payments/diag-stack fallback:
- action: "Failover на PSP-B 70%"
guardrails: ["fraud_rate stable", "chargeback risk noted"]
rollback:
- condition: "PSP-A green 60m"
- steps:
- "Weight of PSP-A 30→70→80 (every 30 m at green SLI)"
evidence:
- "SLI screenshots, p95/5xx graphs, links to logs/trails"
completion:
- "success_ratio ≥98% during 30 m, no burn in 6 h"
10) Պատրաստի օրինակներ (բեկորներ)
A) Վճարումներ. <<Պրովայդերը բաժանում է մեկ տարածաշրջանում>>
Ախտանիշները 'success _ ratio TR-cogorts, PMS-A թայմաուտների աճը։
Որոշումները 'նվազեցնել PMS-A քաշը TR-ի համար, ներառել degrade-UX-ը, ուժեղացնել ռետրերը SLA բյուջեով, պատրաստել հաճախորդների դեղատուն։
Backout: վերադարձնել քաշը կանաչ SLI 60 րոպե։
B) BD '«P99 աճը և connewserrors»
Ախտանիշները ՝ p99 ռուբլիներ, connational reset, wait events։
Որոշումները 'ներառել read-only սցենարները, սահմանափակել write-բեռը, ավելացնել փամփուշտը/կրկնօրինակները, անհրաժեշտության դեպքում' տաք ֆեյլերը։
Backout: Արձագանքել 108, կրկնօրինակման-105 մ։
C) Քեշը '«Miss rate No. no BD»
Ախտանիշները ՝ miss rate> 40%, CPU BD աճը։
Որոշումները 'հավասարեցնել պոլիկցիան, ավելացնել հիշողությունը/շարդինգը, ժամանակավորապես ներառել read-through-ը, սահմանափակել RPS-ը տաք բեկորների վրա։
Backout 'վերադարձնել քաղաքականությունը, վերակառուցել խնդրահարույց shard։
D) CDN: «Բովանդակության կառավարական դեգրադացիան»
Ախտանիշները 'latency/timeout աճը մեկ երկրում, RUM բողոքները։
Որոշումները 'փոխել routing map/GSLB, շրջանցել խնդրահարույց POP, նվազեցնել TTL, ներառել origin-shield։
Կոմս 'Ապդեյտայի կարգավիճակը ազդեցության երկրագրության հետ։
E) KYC: «Ձախողումը նույնական է»
Ախտանիշները 'approve rate անկումը, vendor _ error աճը։
Որոշումները 'անցնելով այլընտրանքային պրովայդերի մի մասը, նվազեցնել կանոնների կառուցվածքը (քաղաքականության շրջանակներում), նախաձեռնել VIP-ի համար ձեռքով ակնարկ։
Compliance: Բոլոր փոփոխությունների լոգ, Risk/Legal ծանուցումներ անհրաժեշտության դեպքում։
11) Հաղորդակցություն (ձևանմուշ)
Impact: EU payment success drop (-3. 1% to SLO, 25 min).
Diagnosis: confirmed by quorum; PSP-A partial outage; p95 = 420ms.
Action: PSP-A weight reduced to 30%, degrade-UX included; next update 18:30 UTC.
12) Պլեյբուկի հեղինակի չեկի թերթիկը
- Նշեք նպատակը, սեփականատերերը, SLO/SLI-ը և գրավիչները։
- Կան «Հիպոթեզների ախտանիշները» և որոշումների ծառը։
- Սպասվող արդյունքներ և անվտանգության խաղացողներ։
- Գրված է backout/fallback և մրցույթի պայմանները։
- Հաղորդակցությունների և ապդեյթների հաճախության ձևանմուշներ։
- Հղում dashbords/alerts/log-որոնում/treiss.
- Evidence պարտադիր հատվածը և ավարտման չափանիշները։
- Տարբերակը, ամսաթիվը, SLA թարմությունը, փոփոխության պատմությունը։
13) Ռեբուերի չեկի թերթիկը
- Պլեյբուկը վերարտադրում ենք tabletop/game-day։
- Քայլերը անվտանգ են (limits/canareka/Avto-rapat), գաղտնիքները չեն բացահայտվում։
- Դերերն ու էսկալացիաները պարզ են. IC/Comics-ը նշված է։
- Ոչ մի կապ հարևան պլեյբուսների հետ; պարամետրերը նշված են։
- Հասկանալի է, երբ կանգ առնել և անցնել fallback/rollback։
- Փաստաթուղթը հասանելի է ալերտից 1 տեսահոլովակով։
14) Decurization և վերարտադրում
Դիմացեք «values» -ում (տարածաշրջանը, պրովայդերը, շեմերը)։
Ընդհանուր քայլերը (օրինակ, «նվազեցնել պրովայդերի քաշը», «միացրեք degrade-UX») կազմեք առանձին runbook 'ami։
Աջակցեք մոդելների գեներատորներին '«plb new-type = INC -service = payments»։
15) Ճանապարհի քարտեզը (4-6 շաբաթ)
1. Page-alerts-ի բուլարիզացիան բացատրվում է համեմատել յուրաքանչյուր հիմնական պլեյբուկը։
2. Ձևանմուշները 'հաստատել YAML/Markdown կառուցվածքը, չեկի թերթերը և ոսպնյակները։
3. Լավագույն հինգ ռուբլիներ (վճարումներ/BD/CDN/KYC/kash) պետք է գրեն/նետել tabletop։
4. Ինտեգրումը 'հղումներ ալերտներից, ChatOps թիմերից, evidence-բոտից։
5. Ուսուցումներ ՝ շաբաթական mini-24ill-ը մեկ պլեյբուսով։ AAR-ը բարելավում է։
6. SLA թարմություն և թաղամաս։ որակի չափման զեկույց։
16) Արդյունքը
Պլեյբուսները վիրահատական սցենարներ են, որոնք թարգմանում են քաոսը «ի՞ նչ անել»։ Երբ պլեյբուսները ստանդարտացված են, ինտեգրված են ալտերի հետ և պարբերաբար մարզվում են, թիմը ավելի արագ է արձագանքում, ռիսկերը վերահսկվում են, իսկ բիզնեսը տեսնում է աշխատանքի կայունությունը և հասունությունը։