Relizlarni tasdiqlash jarayoni
1) Javobgarlikning maqsadi va zonasi
Relizlarni tasdiqlash jarayoni platformada SLO, tushum va komplayensni buzmasdan oldindan aytib bo’ladigan va xavfsiz o’zgarishlarni ta’minlaydi. U butun yo’lni qamrab oladi: pull request dan to’liq promout va post-monitoring.
2) Qonunning
1. SLO-first: faqat yashil SLI/burn-rate’siz chiqarishga ruxsat berilgan.
2. Kichik partiyalar va qaytariluvchanlik: kanar/progressiv yetkazib berish, tezkor rollback.
3. Policy-as-Code: geytlar, SoD, freeze-derazalar va xavf-klasslar avtomatik ravishda tekshiriladi.
4. Haqiqatning yagona manbai: artefaktlar/konfiglar/bayroqlar - Git, chorshanba GitOps-rekonsayler tomonidan keltiriladi.
5. Audit va isbotlanuvchanlik: WORM jurnallari, qaror qabul qilish izi, aniq egalari.
6. Xavfsizlik: alohida sirlar, minimal imtiyozlar, geo-geytlar.
7. Kutilmagan kommunikatsiyalar: ichki/tashqi yangilanishlar uchun tayyorlangan shablonlar.
3) Rollar va RACI
Release Manager (RM) - konveyer egasi, taqvim, geytlar. A/R
Service Owner (SO) - domen egasi, tavakkalchilikni qabul qiladi, artefaktlarni tayyorlaydi. A/R
SRE/Platform - SLO-geytlar, konkida uchish, avto-konkida uchish. R
QA Lead - tekshirish strategiyasi, test natijalari. R
Security/Compliance - skanerlar, SoD, regulyator. C/A
CAB (Change Advisory Board) - Normal-sinf bo’yicha yechim. A
On-call IC/CL - hodisa va kommunikatsiyalarga tayyorlik. R/C
Stakeholders (Biz/Support/Partners) - axborot berish. I
4) O’zgartirish klasslari va kelishish yo’llari
Tavakkalchilik chegaralarini kesib o’tishda (to’lovlar, RG, PII, limitlar) sinfni oshirish.
5) Reliz konveyeri va geytlar (o’tish oqimi)
0-bosqich. Rejalashtirish va kalendar
Freeze-derazalar (bayramlar/o’yinlar), on-colla va CL slotlari, maqom shablonlarining tayyorligi.
1-bosqich. PR → Build
Linterlar/litsenziyalar, SBOM, unit/contract tests, sır-skan.
2-bosqich. Integratsiya/Xavfsizlik
E2E (virtual PSP/KYC provayderlari), SAST/DAST, dependency review.
3-bosqich. Staging/Repetitsiya
Oziq-ovqat bilan paritet, qaytaruvchanligi bilan migratsiya, 5-25% ga ficheflaglar, «release drill» chek-varaqasi.
Geyt A - Sifat va xavfsizlik (majburiy)
+ barcha testlar/skanlar yashil
+ sxemalar/konfigi validna, no «krasnыx» SLI staging
+ high-risk o’zgarishlar uchun SoD/4-eyes
4-bosqich. Pre-prod (kanareya yetkazib berish)
segmentlar bo’yicha 1-5% trafik (tenant/geo/bank), runtime-validatorlar, guardrails.
Geyt B - SLO/biznes-geyt
+ SLO/KRI degradatsiyasi yo’q (yashirin/xato/to’lov)
+ tajriba metrikalarida SRM/anomaliyalar yo’q
+ Comms tayyor: maqom/sherik loyihasi
5-bosqich. Rampap → 25% → 100% (mintaqa/tenant)
Post-monitoring taymerlari bilan bosqichma-bosqich yuviladi.
6-bosqich. Post-monitoring (30-60 daqiqa)
Dashbord reliza, burn-rate, shikoyatlar/tiketlar, avto yopish/rollback qoidabuzarliklarda.
6) Avtomatlashtirilgan yechimlar (policy-engine)
Psevdo-qoidalar:- 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) Reliz artefaktlari
Release Manifest (majburiy): maqsad, xavf-sinf, viloyatlar (tenant/region), bayroqlar, migratsiya, tekislash rejasi, qaytarish rejasi, egasi, on-call kontaktlari.
Evidence Pack: test/skan natijalari, staging dashbordlarining skrinshotlari, dry-run migratsiyasi.
Comms Kit: maqom namunalari (ichki/tashqi/sheriklar), ETA/ETR.
Backout Plan: orqaga qaytishning aniq qadamlari va u ishlaydigan mezonlar.
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) Kanar/Blue-Green/Feature-Flag
Canary - xavfsiz defolt: kichik qamrov, GEO/tenant/BIN bo’yicha segmentatsiya.
Blue-Green - qiyin o’zgarishlar uchun: yo’nalishni o’zgartirish, tez orqaga qaytish.
Bayroqlar - xatti-harakatlar uchun: TTL, kill-switch, guardrails, SoD.
9) Konfiguratsiyalar va sirlarni boshqarish
Konfigilar ma’lumotlar, sxemalar va validatorlar sifatida; GitOps drift detektor bilan yuviladi.
Sirlar - KMS/Secret Manager, JIT kirish, audit va niqoblash.
10) Kommunikatsiyalar va maqom sahifalari
Ichki: varrum/chat, on-kolllarni xabardor qilish, yangiliklar shablonlari.
Tashqi: faqat CL orqali nashrlar, oldindan tayyorlangan loyihalar.
Hamkorlar (PSP/KYC/studiyalar): integratsiyalarga taalluqli targeted-bildirishnomalar.
Maqom: reliz hodisa emas, lekin metrik kuzatuv oynasiga ega.
11) Shoshilinch relizlar (Emergency)
Triggerlar: P1-degradatsiya, zaiflik, PII/RG xavfi.
Yo’l: IC + RM echimi → minimal geytlar to’plami (linter/yig’ish) → canary 1-2% → monitoring → promout.
Albatta: CAB post-faktum, post-mortem ≤ D + 5, murosalarni hujjatlashtirish.
12) Audit, SoD va muvofiqlik
SoD/4-eyes: PSP-routing, bonuslar limitlari, ma’lumotlar eksporti o’zgarishi.
WORM jurnali: kim/nima/qachon/nima uchun; siyosatlar versiyasi; diff reliz/bayroqlar/konfiguratsiyalar.
Geo/Privacy: kerakli yurisdiksiyadagi ma’lumotlar va loglar; artefaktlarda PII yo’qligi.
13) Kuzatuv va post-nazorat
Reliz dashbordi: SLI (auth-success, bet → settle p99), error-rate, shikoyatlar, konvertatsiya, navbat laglari.
Alertlar: burn-rate, SRM, o’sish 5xx, banklar/GEO bo’yicha PSPning degradatsiyasi.
Hisobotlar: CFR, MTTR reliz-hodisalar, o’rtacha post-monitoring vaqti, auto-rollback rate.
14) KPI/KRI jarayoni
Lead Time for Change (PR → prod), Change Failure Rate, MTTR reliz-hodisalar.
SLO-gates pass rate, Auto-rollback rate, Freeze compliance.
Coverage of Release Drill (steyjing-mashqlar), SoD violations (maqsad - 0).
Comms SLA (loyihalarning mavjudligi, tayminglarga rioya qilish).
15) Joriy etish yo’l xaritasi (6-10 hafta)
Ned. 1-2: o’zgarishlar klasslari, geytlar va artefaktlarni aniqlash; linterlar, SBOM, sir-skanerlarni o’z ichiga olishi; relizlar va freze taqvimi.
Ned. 3-4: Konfiguratsiyalar uchun GitOps, canary/blue-green, SLO geytlar, Comms va var-rum shablonlari.
Ned. 5-6: policy-engine (SoD/4-eyes, risk-rules), metriklar bo’yicha avto-rollback; dashbord relizlari.
Ned. 7-8: mashqlar (staging drills), ficheflaglar/hodisa-bot bilan integratsiya, KPI/KRI hisobotlari.
Ned. 9-10: WORM auditi, DR-relizlar mashqlari, CFR optimallashtirish, rollarni o’qitish (RM/SO/CL/IC).
16) Antipatternlar
Relizlar qaytarilmas va canary → ommaviy hodisalar.
Ignor SLO-geytlar «muddat uchun».
Konfigi/bayroqlar sxemasiz va TTL → «muzlatilgan» holatlar.
Git/auditsiz qoʻlda bosish.
CL va shablonlarsiz ommaviy yangilanishlar.
Repozitoriyadagi sirlar; JIT va jurnallashsiz kirish.
CAB ma’lumotsiz tormoz sifatida: echimlar reliz metriklari bilan mustahkamlanishi kerak.
Jami
Relizlarni tasdiqlash jarayoni - bu sifat, xavfsizlik va tezlikni bog’laydigan muhandislik va boshqaruv asosi: kod kabi siyosatlar, SLO-geytlar, progressiv yetkazib berish, shaffof kommunikatsiyalar va isbotlanadigan audit. Bunday yondashuv CFR va MTTRni kamaytiradi, daromad va komplayensni himoya qiladi va jamoalarga tez-tez va xavfsiz qiymatlarni ishlab chiqarish imkonini beradi.