Релиздерди бекитүү процесси
1) Жоопкерчиликтин максаты жана аймагы
Релиздерди бекитүү процесси SLO, киреше жана комплаенс бузбастан платформанын болжолдуу жана коопсуз өзгөрүүлөрүн камсыз кылат. Бул бүт жолду камтыйт: pull request прод жана пост-мониторинг толук промоутер чейин.
2) Принциптер
1. SLO-биринчи: Жашыл SLI/burn-rate жок гана бошотууга уруксат берилет.
2. Чакан партиялары жана кайтарымдуулугу: канара/прогрессивдүү жеткирүү, тез rollback.
3. Policy-as-Code: гейтс, SoD, freeze терезелер жана тобокелдик класстары - автоматтык түрдө текшерилет.
4. Чындыктын бир булагы: экспонаттар/конфигалар/желектер - Git, шаршемби GitOps-реконсайлер тарабынан берилген.
5. Аудит жана далилдүүлүк: WORM журналдар, чечим чыгаруу, так ээлери.
6. демейки коопсуздук: өзүнчө сырлар, минималдуу артыкчылыктар, гео-гейтс.
7. күтүүсүз байланыш: ички/тышкы жаңыртуулар үчүн даярдалган шаблондор.
3) Ролдору жана RACI
Release Manager (RM) - конвейердин, календардын, гейттердин ээси. A/R
Service Owner (SO) - домендин ээси, тобокелчиликти кабыл алат, артефакттарды даярдайт. A/R
SRE/Platform - SLO-Гейтс, Rolling, auto-Rolls. R
QA Lead - текшерүү стратегиясы, тесттердин натыйжалары. R
Security/Compliance - сканерлер, SoD, жөнгө салуучу. C/A
CAB (Change Advisory Board) - кадимки класс боюнча чечим. A
On-call IC/CL - окуяга жана коммуникацияга даярдык. R/C
Stakeholders (Biz/Support/Partners) - маалымат. I
4) Өзгөрүүлөрдүн класстары жана макулдашуу жолдору
Классты жогорулатуу - тобокелдик чегинен өткөндө (төлөмдөр, RG, PII, лимиттер).
5) Release Conveyor жана гейт (агымы аркылуу)
Этап 0. Пландаштыруу жана календар
Freeze терезелер (майрамдар/матчтар), Slot On-Call жана CL, статус үлгүлөрүнүн даярдыгы.
Этап 1. PR → Build
Linters/лицензиялар, SBOM, unit/contract tests, secret-scan.
Этап 2. Интеграция/Коопсуздук
E2E (виртуалдаштырылган PSP/KYC провайдерлери), SAST/DAST, dependency review.
Этап 3. Staging/Репетиция
Азык-түлүк менен паритет, кайтарымдуулугу менен миграция, 5-25% фичефлагалар, чек тизмеси "release drill".
Gate A - Сапаты жана коопсуздук (милдеттүү)
+ бардык тесттер/сканерлер жашыл
+ Схемалар/Конфиги validny, жок "кызыл" SLI staging
+ SoD/4-eyes тобокелдик өзгөрүүлөр үчүн
Этап 4. Алдын-ала сатуу (канарейка жеткирүү)
1-5% сегменттер боюнча жол (tenant/geo/банк), runtime-валидаторлор, guardrails.
Gate B - SLO/Бизнес-Gate
+ эч кандай SLO/KRI деградация (жашыруун/ката/төлөө)
+ эч кандай SRM/аномалиялар эксперименттердин метрикасында
+ Comms даяр: статусу/өнөктөштөр долбоору
Этап 5. Рамп-ап → 25% → 100% (аймак/тенант)
Пост-мониторинг таймери менен кадам сайын жууп.
Этап 6. Пост-мониторинг (30-60 мин)
Dashboard Release, burn-rate, даттануулар/билеттер, auto-жабуу/rollback бузуулар учурунда.
6) Automated Solutions (policy-engine)
Псевдо-эрежелер:- SLO-гейт: `deny promote if slo_red in {auth_success, bet_settle_p99}`
- PII-export: `require dual_control if config. affects == "PII_EXPORT"`
- Freeze: `deny deploy if calendar. freeze && not emergency`
- Rollback: `auto if auth_success_drop > 10% for 10m in geo=TR`
7) Релиздин артефакттары
Release Manifest (милдеттүү): максаты, тобокелдик-класс, аймактар (tenant/аймак), желектер, көчүрүү, жылдыруу планы, кайтаруу планы, ээси, байланыш on-call.
Evidence Pack: тесттердин/сканерлердин натыйжалары, дашборддордун скриншоттору staging, dry-run миграциясы.
Comms Kit: статус үлгүлөрү (ички/тышкы/өнөктөштөр), ETA/ETR.
Backout Plan: так артка чегинүү кадамдары жана ал иштеген критерийлер.
yaml release:
id: "2025. 11. 01-payments-v42"
owner: "Payments SO"
risk_class: "normal"
scope: { tenants: ["brandA","brandB"], regions: ["EU"] }
rollout:
steps:
- { coverage: "5%", duration: "20m" }
- { coverage: "25%", duration: "40m" }
- { coverage: "100%" }
migrations:
- id: "ledger_ddl_0042"
reversible: true flags:
- id: "deposit. flow. v3"
guardrails: ["api_error_rate<1. 5%","latency_p99<2s"]
rollback:
autoIf:
- metric: "auth_success_rate"
where: "geo=TR"
condition: "drop>10% for 10m"
8) Канар/Blue-Green/Feature-Flag Rolling
Canary - коопсуз дефолт: чакан камтуу, GEO/tenant/BIN боюнча сегменттөө.
Blue-Green - оор өзгөрүүлөр үчүн: багытын өзгөртүү, тез кайра.
Желектер - жүрүм-турум үчүн: TTL, kill-switch, guardrails, SoD.
9) Конфигурацияларды жана сырларды башкаруу
Маалыматтар, схемалар жана валидаторлор сыяктуу конфиги; GitOps-drift detector менен жууп.
Secrets - KMS/Secret Manager, JIT жетүү, аудит жана жашыруу.
10) Байланыш жана статус-беттер
Ички: вар-рум/чат, он-коллдерди эскертүү, жаңылоо шаблондору.
Тышкы: CL аркылуу гана жарыялоо, алдын ала даярдалган долбоорлор.
Өнөктөштөр (PSP/KYC/студиялар): интеграцияга тийгенде максаттуу билдирүүлөр.
Статус: релиз окуя эмес, бирок метриктер менен байкоо терезеси бар.
11) Шашылыш релиздер (Өзгөчө)
Триггерлер: P1-деградация, алсыздык, PII/RG тобокелдиктери.
Жол: чечим IC + RM → минималдуу оюн-зоок топтому (Линтер/чогултуу) → canary 1-2% → мониторинг → кулатуу.
Милдеттүү: пост-фактум CAB, пост-мортем ≤ D + 5, компромисстерди документтештирүү.
12) Аудит, SoD жана шайкештик
SoD/4-eyes: PSP-роутинг өзгөрүүлөр, бонустардын чеги, маалыматтарды экспорттоо.
WORM-журнал: ким/эмне/качан/эмне үчүн; саясатчылардын версиялары; diff релиз/желектер/конфигурациялар.
Geo/Privacy: керектүү юрисдикциядагы маалыматтар жана логдор; артефакттарда PII жоктугу.
13) Байкоо жана пост-контролдоо
Dashboard Release: SLI (auth-success, bet → settle p99), error-rate, даттануулар, конверсия, кезек лагдары.
Алерттер: burn-rate, SRM, өсүш 5xx, банктар/GEO боюнча PSP деградация.
Отчеттор: CFR, MTTR Release инциденттер, орточо пост-мониторинг убактысы, auto-rollback rate.
14) KPI/KRI жараяны
Lead Time for Change (PR → прод), Change Failure Rate, MTTR релиздик окуялар.
SLO-gates pass rate, Auto-rollback rate, Freeze compliance.
Coverage of Release Drill (Staging репетициялары), SoD violations (максаты - 0).
Comms SLA (долбоорлордун болушу, таймингдерди сактоо).
15) Жол картасы киргизүү (6-10 жума)
Нед. 1-2: өзгөрүүлөрдүн класстарын, гейттерди жана артефакттарды аныктоо; линтерлерди, SBOM, Secret-Scan; чыгаруу календары жана freeze.
Нед. 3-4: Конфигурациялар үчүн GitOps, canary/blue-green, SLO-гейтс, Comms жана var-room үлгүлөрү.
Нед. 5-6: policy-engine (SoD/4-eyes, risk-rules), метрика боюнча авто-rollback; dashboard релиздер.
Нед. 7-8: репетициялар (staging drills), фичефлагдар/окуя-бот менен интеграция, KPI/KRI отчеттору.
Нед. 9-10: WORM аудит, DR-релиздерди окутуу, CFR оптималдаштыруу, ролду окутуу (RM/SO/CL/IC).
16) Антипаттерндер
Return жана canary → массалык окуялар жок релиздер.
Ignor SLO-Gates "мөөнөтү үчүн".
Конфиги/желектери жок схемалар жана TTL → "тоңуп калган" шарттар.
Git/аудит жок өнүмдө кол менен чыкылдатуу.
CL жана шаблондордун ролу жок коомдук жаңылануулар.
Репозиторийдеги сырлар; JIT жана журнал жок кирүү.
CAB маалымат жок тормоз катары: чечимдер релиздин көрсөткүчтөрү менен бекемделиши керек.
Жыйынтык
Релиздерди бекитүү процесси - бул сапатты, коопсуздукту жана ылдамдыкты бириктирген инженердик жана башкаруу алкагы: код сыяктуу саясат, SLO-гейтс, прогрессивдүү жеткирүү, ачык-айкын коммуникациялар жана далилдүү аудит. Бул ыкма CFR жана MTTR азайтат, кирешени жана комплаенсти коргойт жана командаларга баалуулуктарды тез-тез жана коопсуз чыгарууга мүмкүндүк берет.