Окуялар жана SRE Playbook
1) Окуя деген эмне жана ал SLO менен кандай байланышта
Окуя - SLO/кызматтык функциясын бузган же бузуу коркунучун жараткан окуя (туура эмес бюджет алгылыксыз тез күйөт).
Классикалык метриктер: MTTD, MTTA, MTTR, MTBF.
бюджеттин ката жана burn-rate артыкчылык жана эскалация терезелерди аныктайт.
2) Олуттуу деңгээл (SEV) жана критерийлер
SEV триггерлер: ашуусу 5xx%, p95> босогосу, төлөм decline spike, Kafka-lag> босогосу, NodeNotReady> X мин, TLS мөөнөтү <7 күн, DDoS/агып сигналдар.
3) Ролдору жана жоопкерчилиги (RACI)
Incident Commander (IC) - жеке чечим кабыл алуу, тапшырмалардын агымын башкаруу, SEV статусун өзгөртүү.
Ops Lead (Tech Lead) - техникалык стратегия, гипотезалар, фикстерди координациялоо.
Communications Lead (Comms) - статус-апдейт (ички/тышкы), StatusPage/чат/почта.
Scribe - таймлайн, чечимдер, экспонаттар, графикага/логиге шилтемелер.
On-call Engineers/SMEs - плейбуктар боюнча иш-аракеттерди аткаруу.
Security/Privacy - коопсуздук же PII окуяларында кошулат.
FinOps/Payments - биллинг/PSP/наркы таасир этет.
4) окуя жашоо цикли
1. Детект (алерт/репортаж/синтетика) → окуя картасын түзүү.
2. Triage (IC дайындалган, SEV дайындалган, минималдуу контексттин чогултуу).
3. турукташтыруу (mitigation: fichu/rollback/rate-limit/failover өчүрүү).
4. Тергөө (RCA-гипотезалар, фактыларды чогултуу).
5. Кызматты калыбына келтирүү (SLO validate, байкоо).
6. Байланыш (ичинде/сыртында, жыйынтыктоочу отчет).
7. Postmortem (айып жок, CAPA-план, ээлери, шарттары).
8. Prevention (Tests/Alert/Playbook/желектер, кошумча окутуу командасы).
5) Байланыш жана "war-room"
Бир окуя канал ('#inc -sev1-YYYMMDD-hhmm'), бир гана чындык жана иш-аракеттер.
радио протоколу стилинде буйрук: "IC: rollback версия 1 дайындайт. 24 → ETA 10 мин".
Статус-апдейт: SEV-1 ар бир 15 мүнөт, SEV-2 - ар бир 30-60 мүнөт.
Status Page/тышкы байланыш - шаблон боюнча Comms Lead аркылуу.
Тыюу салынган: параллелдүү "тынч" бөлмөлөр, жалпы каналга текшерилбеген гипотезалар.
6) Alerting жана SLO-burn (эрежелердин үлгүсү)
Тез канал (1-5 мин) жана жай канал (1-2 саат) burn-rate.
Көп сигналдар: бюджет ката, 5xx%, p95, Kafka-lag, төлөм decline-rate, синтетика.
баштапкы себебин издөө - гана симптомдору турукташтыруу кийин.
promql
Ошибочная доля 5xx > SLO sum(rate(http_requests_total{status=~"5.."}[5m])) / sum(rate(http_requests_total[5m])) > 0.01
Burn-rate быстрый (пример)
(sum(rate(http_requests_total{status=~"5.."}[1m])) / sum(rate(http_requests_total[1m])))
/ (1 - SLO) > 14.4
7) Playbook vs Ranbook
Плейбук - окуя түрү боюнча иш-аракеттердин сценарийи (бутактоо, шарттар, тобокелдиктер).
Ранбук - кадамдардын/командалардын конкреттүү "картасы" (текшерүүлөр, фикстер, верификация).
Эреже: playbook бир нече ranbucks (rollbacks, feature-flags, failover, масштабдоо, жол бөгөттөө ж.б.) билдирет.
8) Окуя картасынын үлгүсү
yaml id: INC-YYYYMMDD-XXXX title: "[SEV-1] Рост 5xx на API /payments"
status: active monitoring resolved sev: 1 reported_at: 2025-11-03T17:42Z ic: <ФИО>
ops_lead: <ФИО>
comms_lead: <ФИО>
scope: regions: [eu-west-1], tenants: [prod], services: [api, payments]
impact: "5xx=12% (обычно <0.5%), конверсия депозитов -20%"
mitigation: "откат на 1.23.4, включен rate-limit 2k rps, фича X выключена"
timeline:
- "17:42: алерт SLO burn-rate быстрый"
- "17:46: назначен IC, открыт war-room"
- "17:52: найден релиз 1.24 как кандидат"
- "18:02: откат завершен, 5xx вернулись к 0.3%"
artifacts:
dashboards: [...]
logs: [...]
traces: [...]
risk: "возможен очередной всплеск при включении фичи X"
next_steps: "канареечный релиз, тесты, постмортем до 2025-11-05"
9) SRE Playbook үлгүсү (Markdown)
markdown
Плейбук: <название>
Область/симптомы
Список детекторов, сигнатуры в метриках/логах/трассах.
Быстрая стабилизация (Triage & Mitigation)
- [ ] Ограничить трафик/включить WAF-правило/фичефлаг OFF
- [ ] Роллбэк/канареечный релиз/выкатить фикс конфигурации
- [ ] Включить деградационный режим (read-only, кэш-форс)
Диагностика (RCA hints)
- Метрики: … Логи: … Трассы: …
- Частые первопричины/чек-лист гипотез
Риски и коммуникации
- Внутренние/внешние апдейты, SLA-обязательства
Верификация
- [ ] SLO восстановлено (порог/время окна)
- [ ] Нет регресса по смежным сервисам
Последующие действия
- CAPA, задачи в backlog, обновление алертов/дашбордов/плейбука
10) типтүү playbook
10. 1 API 5xx Spike
Турукташтыруу: көйгөйлүү phicheflag өчүрүү; API репликаларын жогорулатуу; кэштоону күйгүзүү; кайра чыгаруу.
Диагностика: Release diff, каталар (top-exceptions), өсүш p95, pressure DD/кэш.
Тобокелдиктер: төлөмдөрдөгү/бэкендердеги каскад.
10. 2 БД: replication lag / lock storm
Турукташтыруу: оор джобдорду/репортаждарды токтотуу; окууларды чеберге багыттоо; wal_buffers/реплика-слоты жогорулатуу.
Диагностика: узакка созулган транзакциялар, суроо-талаптарга бөгөт коюу, планды өзгөртүү.
Фиксация: индекстер/хинттар, джобдорду кайра пландаштыруу, суроо-талаптарды бөлүү.
10. 3 Kafka consumer lag
Турукташтыруу: убактылуу масштабдуу consumer's; маанилүү эмес кызмат өндүрүүнү азайтуу; партияларды/квоталарды көбөйтүү.
Диагностика: rebalances, жай deserialization, GC-тыныгуу.
Текшерүү: лаг → максаттуу мааниге, тамчы жок.
10. 4 K8s NodeNotReady/ресурстук бороон
Турукташтыруу: cordon + drain; жүктөрдү кайра бөлүштүрүү; CNI/overlay текшерүү; ызы-чуу DaemonSet's өчүрүү.
Диагностика: disk pressure, OOM, throttling, network drops.
Алдын алуу: pod disruption budgets, ресурстук лимиттер/requests.
10. 5 TLS/күбөлүктөр мөөнөтү
Турукташтыруу: сырды/ingress мажбурлап жаңыртуу; убактылуу override.
Диагностика: ишеним чынжыр, clock-skew.
Алдын алуу: аллергия T-30/T-7/T-1, авто-реньюал.
10. 6 DDoS/анормалдуу жол
Турукташтыруу: WAF/бот эрежелери, rate-limit/geo-чыпкалар, upstream shed load.
Диагностика: кол профилдери (L3/4/7), булактар, "кол чатырлар".
Алдын алуу: anycast, autoscaling, кэширование, play-nice провайдерлер менен.
10. 7 Төлөм PSP Autage
Турукташтыруу: smart-роутинг боюнча альтернативдүү PSP/ыкмалары; Jitter менен retry жогорулатуу; "жумшак" деградация UI.
Диагностика: spike коддору, API статусу/PSP статусу барагы.
Байланыш: бизнес жана саппорт үчүн ачык апдейттер, туура ND/конверсия статистикасы.
10. 8 Коопсуздук окуясы/PII агып
Турукташтыруу: изоляция түйүндөрү/Secret-айлануу, бөгөттөө эксфильтрация, Legal Hold.
Диагностика: таймлайн кирүү, таасир субъекттер/талаалар.
Билдирүүлөр: юрисдикциялардын талаптары боюнча жөнгө салуучулар/өнөктөштөр/колдонуучулар.
Алдын алуу: DLP/сегменттөө күчөтүү, "least privilege".
11) Плейбуктарды автоматташтыруу
ChatOps командасы: '/ic set sev 1 ', '/deploy rollback api 1. 23. 4`, `/feature off X`.
Runbook боттор: жарым-автоматтык кадамдар (drain node, flip traffic, purge cache).
Self-healing Hook: Detector → стандарттык mitigation (rate-limit, restart, scale).
Авто-түзүү карталары/тайм-лайн алерттер жана командалар.
12) Playbook сапаты: чек тизмеси
- Ачык белгилери жана детекторлор (метрика/логи/жолдор).
- Тобокелдиктерди баалоо менен тез турукташтыруу кадамдары.
- Командалар/скрипттер актуалдуу болуп саналат, staging текшерилет.
- SLO калыбына келтирүү текшерүү.
- Байланыш шаблондору жана тышкы тактоо критерийлери.
- Postmortem шилтеме жана CAPA жабылгандан кийин.
13) Postmortem (blameless) жана CAPA
Максаты: күнөөкөрдү табуу эмес, үйрөнүү.
Мазмуну: эмне болду, жакшы/жаман болду деп табылган, салым факторлор (алар + жараяндар), алдын алуу үчүн иш-аракеттер.
Мөөнөтү: SEV-1 - 48 сааттын ичинде; SEV-2 - 3 жумушчу күн.
CAPA: конкреттүү ээлери, убакыт, өлчөнүүчү таасирлери (MTTR/MTTD өсүшү азайтуу).
14) Укуктук аспектилери жана далил базасы
Legal Hold: тоңдурулган үймөктөр/жолдор/alerts, write-once сактоо.
Артефакттарды сактоо чынжырчасы: ролдорго жетүү, бүтүндүктү көзөмөлдөө.
Регулятивдик билдирүүлөр: юрисдикциялар үчүн мөөнөттөр/шаблондор (айрыкча, жабыр тарткан төлөмдөрдө/PII).
Купуялык: минималдаштыруу жана талдоодо PII жашыруу.
15) Окуя жараянынын натыйжалуулугун өлчөө
MTTD/MTTA/MTTR чейректер жана домендер боюнча.
SEV тууралыгы (underrating/overrating).
Авто-митигейт инциденттеринин үлүшү.
Top N сценарийлерин ойноткучтар менен жабуу (> 90%).
өз убагында CAPA аткаруу.
16) Этап боюнча ишке ашыруу
1. Апта 1: SEV-матрица, on-call ролдору, жалпы карта үлгүсү, war-room регламент.
2. Жума 2: Top 5 белгилери үчүн Playbook (5xx, BD-lag, Kafka-lag, NodeNotReady, TLS).
3. Жума 3: ChatOps/боттор, auto-түзүү карталары, байланыш үлгүлөрү/StatusPage.
4. Week 4 +: Playbook коопсуздук, PSP Autage, Юридикалык Hold, үзгүлтүксүз/башаламандык оюндар.
17) "Тез" ранбуктардын мисалдары (фрагменттер)
Rollback API (K8s)
bash kubectl rollout undo deploy/api -n prod kubectl rollout status deploy/api -n prod --timeout=5m
Верификация:
kubectl -n prod top pods -l app=api
Drain node
bash kubectl cordon $NODE && kubectl drain $NODE --ignore-daemonsets --delete-emptydir-data --timeout=10m
Feature-flag OFF (мисал)
bash curl -X POST "$FF_URL/toggle" -H "Authorization: Bearer $TOKEN" -d '{"feature":"X","enabled":false}'
18) Mini-FAQ
Качан SEV-1 көтөрүү керек?
Качан негизги SLO/бизнес функциясы (төлөмдөр, логин, оюн) жабыр тартат, жана burn-rate алдын ала саат бюджетти "жейт".
Эмне маанилүү - RCA же калыбына келтирүү?
Ар дайым турукташтыруу, андан кийин RCA. Турукташтырууга чейинки убакыт - негизги көрсөткүч.
Баарын автоматташтыруу керекпи?
Тез-тез жана коопсуз кадамдарды автоматташтыруу; сейрек/тобокелдик - жарым-унаа жана IC ырастоо аркылуу.
Жыйынтык
Инциденттердин ишенимдүү процесси үч мамыга таянат: так ролдор жана SEV эрежелери, автоматташтырылган сапаттуу плейбуктар/ранбуктар жана айыпсыз постмортемдердин маданияты. Шаблондорду оңдоп, on-call үйрөтүү, MTTR/жаңылыш бюджетти өлчөө жана детекторлорду жана плейбуктарды дайыма жакшыртуу - бул түздөн-түз тобокелдиктерди жана токтоп калуу баасын төмөндөтөт.