Релиздерді бекіту процесі
1) Жауапкершілік мақсаты мен аймағы
Релиздерді бекіту процесі SLO, түсім және комплаенсті бұзбай платформаның болжамды және қауіпсіз өзгерістерін қамтамасыз етеді. Ол бүкіл жолды қамтиды: pull request бастап толық промоуте және пост-мониторингке дейін.
2) Қағидаттар
1. SLO-first: тек жасыл 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-гейтс, домалату, авто-домалату. 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) Релиз және гейт конвейері (өтпелі ағын)
0-кезең. Жоспарлау және күнтізбе
Freeze-терезелер (мерекелер/матчтар), он-колла және CL слоты, мәртебе үлгілерінің дайындығы.
1-кезең. PR → Build
Линтерлер/лицензиялар, SBOM, unit/contract tests, құпия-сканер.
2-кезең. Интеграция/Қауіпсіздік
E2E (PSP/KYC виртуалдандырылған провайдерлері), SAST/DAST, dependency review.
3-кезең. Staging/репетиция
Азық-түлікпен паритет, қайтарымдылығы бар көші-қон, 5-25% -ға фичефлагтар, «release drill» чек-парағы.
Гейт А - Сапа және қауіпсіздік (міндетті)
+ барлық тесттер/сканерлер жасыл
+ сұлбалар/конфигалар валидті, «қызыл» жоқ SLI staging
+ high-risk өзгерістер үшін SoD/4-eyes
4-кезең. Алдын ала сату (канареялық жеткізу)
сегменттер бойынша трафиктің 1-5% (tenant/geo/банк), runtime-валидаторлар, guardrails.
Гейт B - SLO/бизнес-гейт
+ SLO/KRI деградациясы жоқ (жасырындылық/қателер/төлем)
+ эксперименттер метрикасында SRM/аномалиялар жоқ
+ Comms дайын: мәртебе/серіктестер жобасы
5-кезең. Рамп-ап → 25% → 100% (өңір/тенант)
Пост-мониторинг таймерлерімен қадамдық жуу.
6-кезең. Пост-мониторинг (30-60 мин)
Дашборд релиза, burn-rate, шағымдар/тикеттер, бұзушылықтар кезінде авто-жабу/rollback.
6) Автоматтандырылған шешімдер (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/region), жалаулары, көші-қоны, домалату жоспары, қайтару жоспары, иесі, он-колла контактілері.
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 домалату
Canary - қауіпсіз дефолт: шағын қамту, GEO/tenant/BIN бойынша сегментация.
Blue-Green - ауыр өзгерістер үшін: бағытты ауыстыру, жылдам кері қайту.
Жалаулар - мінез-құлық үшін: TTL, kill-switch, guardrails, SoD.
9) Пішіндер мен құпияларды басқару
Конфигалар деректер, схемалар және валидаторлар ретінде; GitOps-drift-детекторымен жуылады.
Құпиялар - KMS/Secret Manager, JIT қолжетімділігі, аудит және бүркемелеу.
10) Коммуникация және мәртебе-беттер
Ішкі: вар-рум/чат, он-коллдарды хабарландыру, апдейт үлгілері.
Сыртқы: жарияланымдар тек CL арқылы, алдын ала дайындалған жоба жазбалар.
Серіктестер (PSP/KYC/студиялар): интеграцияға қатысты targeted-хабарламалар.
Мәртебесі: релизі оқыс оқиға емес, бірақ метрикалық бақылау терезесі бар.
11) Шұғыл релиздер (Emergency)
Триггерлер: P1-деградация, осалдық, PII/RG тәуекелдері.
Жол: IC + RM → минималды гейт жиынтығы (линтер/құрастыру) → canary 1-2% → мониторинг → промоут.
Міндетті: CAB пост-фактум, пост-мортем ≤ D + 5, компромисстерді құжаттау.
12) Аудит, SoD және сәйкестік
SoD/4-eyes: PSP-роутингтің, бонустар лимиттерінің, деректер экспортының өзгеруі.
WORM журналы: кім/не/қашан/не үшін; саясаттардың нұсқалары; дифф релиза/жалаулар/пішіндер.
Geo/Privacy: қажетті юрисдикциядағы деректер мен логтар; артефактілерде PII болмауы.
13) Бақылау және пост-бақылау
Дашборд релизі: SLI (auth-success, bet → settle p99), error-rate, шағымдар, конверсия, кезек лагтары.
Алерттар: burn-rate, SRM, өсу 5xx, банктер/GEO бойынша PSP деградациясы.
Есептер: CFR, MTTR релиз-инциденттер, пост-мониторингтің орташа уақыты, 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 (стейджинг-репетициялар), SoD violations (мақсаты - 0).
Comms SLA (жоба жазбалардың болуы, таймингтерді сақтау).
15) Енгізудің жол картасы (6-10 апта)
Нед. 1-2: өзгерістер класын, гейттер мен артефактілерді анықтау; линтерлерді, SBOM, құпия сканерді қосу; релиздер мен freeze күнтізбесі.
Нед. 3-4: конфигурацияларға арналған GitOps, canary/blue-green, SLO-гейттер, Comms үлгілері және вар-рум.
Нед. 5-6: policy-engine (SoD/4-eyes, risk-rules), метрика бойынша авто-rollback; дашборд релиздері.
Нед. 7-8: репетициялар (staging drills), фичефлагтармен/инцидент-ботпен интеграциялау, KPI/KRI есептері.
Нед. 9-10: WORM аудиті, DR-релиздер жаттығулары, CFR оңтайландыру, рөлдерді оқыту (RM/SO/CL/IC).
16) Антипаттерндер
Кері қайтарымсыз релиздер және canary → жаппай оқиғалар.
Игнор SLO-гейтс «мерзімінен бұрын».
Схемасыз конфигалар/жалаулар және TTL → «қатып қалған» жай-күйлер.
Git/аудитсіз өнімдегі қолмен басу.
CL және шаблондар рөлі жоқ ашық апдейттер.
Репозиторийдегі құпиялар; JIT және журналдаусыз қол жеткізу.
CAB деректерсіз тежегіш ретінде: шешімдер шығу өлшемдерімен бекітілуі тиіс.
Жиынтығы
Релиздерді бекіту процесі - бұл сапаны, қауіпсіздікті және жылдамдықты біріктіретін инженерлік және басқару қаңқасы: код ретінде саясат, SLO-гейттер, прогрессивті жеткізу, ашық коммуникациялар және дәлелденетін аудит. Бұл тәсіл CFR және MTTR төмендетеді, түсім мен комплаенсті қорғайды және командаларға құнды жиі және қауіпсіз шығаруға мүмкіндік береді.