GH GambleHub

Konfigurasiýa wersiýalaryna gözegçilik

1) Näme üçin konfigurasiýalary wersiýa etmeli?

Konfigurasiýa ýerine ýetirilýän syýasatdyr: ol marşrutlaşdyryşy, çäkleri, fiç-baýdaklary, elýeterliligi, maglumatlaryň shemalaryny kesgitleýär. Wersiýalara gözegçilik etmek üýtgeşmeleri gaýtalanýan, göze görnüp duran we yzyna gaýtaryp boljak edýär: MTTR we change-failure rate gysgaldýar, "önümdäki jadydan" dynýar, howpsuzlyk we laýyklyk üçin audit berýär.


2) Konfigurasiýalaryň taksonomiýasy

Infrastruktura (IaC): toparlar, torlar, LB, DB, nobatlar.
Hyzmat: programmalaryň parametrleri, çeşmeler, çäkler, wagtlar, retralar.
Önüm/işewürlik logikasy: nyrhlar, AB-synaglar, mazmun düzgünleri.
Maglumatlar/DataOps: shema şertnamalary, täzelik, özgeriş SLA.
Howpsuzlyk: giriş syýasaty, rollar, açarlar/şahadatnamalar (syrlaryň özleri - repodan daşarda).
Syn edilişi: SLI/SLO, alertler, daşbordlar.

Düzgün: ulgamyň özüni alyp barşyna täsir edýän hemme zat konfigurasiýa bolup, wersiýa astynda ýaşamaly.


3) Wersiýalary dolandyrmagyň ýörelgeleri

1. GitOps: Hakykatyň ýeke-täk çeşmesi - ammar; PR we awtomatiki paýlanyş arkaly üýtgeşmeler.
2. Deklaratiwlik: ädimleriň skriptleri däl-de, maksatly ýagdaýyň beýany.
3. Artefaktlaryň immutabilligi: → birmeňzeş materiallaşdyrylýan snapshot.
4. Shemalar we tassyklama: JSON/YAML-shema, berk görnüşler, hökmany meýdanlar.
5. Daşky gurşaw kod hökmünde: 'env' - bukjalar/örtükler (dev/stage/prod), tapawut az we düşnüklidir.
6. Deňagramlylyk we yza gaýdyp gelmek: konfigurasiýanyň islendik çykyşy tersine (revert/rollback).
7. Audit we yzarlanylyşy: awtor, sebäp, bilet/RFC, üýtgeşmeleriň gollary.


4) Wersiýalaşdyrmak strategiýalary

Konfigurasiýa bukjalary üçin SemVer ('MAJOR. MINOR. PATCH`):
  • MAJOR - shemalaryň/syýasatlaryň gabat gelmeýän üýtgemeleri.
  • MINOR - täze meýdanlar/düzgünler, ters gabat gelmek.
  • PATCH - shemalary üýtgetmezden bahalary düzetmek.
  • Tag-relizler we release notes: näme üýtgedildi, nädip gaýdylmaly, gözegçilik nokatlary.
  • Pinning/lock faýllary: endikleriň wersiýalaryny (modullar, diagrammalar) ýazýarys.
  • Matrix wersiýalary: X programmasynyň artefaktı Y konfigurasiýasy bilen gabat gelýär (hyzmat katalogyndaky matrisa).

5) Repozitory guramak


config-repo/
policies/     # общие политики (RBAC, SLO, алерты)
services/
checkout/
schema/    # JSON/YAML схемы конфигов base/     # дефолтные значения overlays/
dev/
stage/
prod/
data-contracts/  # схемы данных, SLA свежести releases/     # теги, changelog, артефакты валидации tools/      # линтеры, генераторы, тесты

Şahasy: trunk-based (main) + gysga feature-şahalary. Merge - diňe hökmany CI bilen PR arkaly.


6) Tassyklamak we synag

Shema: Her bir üýtgeşme shema barlagyndan geçýär (required, enum, ranges).
Statiki linterler: format, açarlar, goşa, gadagan meýdançalar.
Gabat gelmek synaglary: hyzmatyň/tertipnamanyň görnüşi sandyk gutusynda ýokarlanýar.
Gözegçilik geçişleri: dry-run programmalary, "what-if" maksat ýagdaýy.
Syýasatlar-as-code: giriş düzgünleri (Rego/CEL) - kim we näme üýtgedip biler.


7) Konfigurasiýalaryň ýaýramagy we yza gaýdyp gelmegi

Progressive delivery: 1% → 5% → 25% SLO gardrailleri bilen kanareýa.
Deploi derwezesi: işjeň SEV-1 ýok, alertler ýaşyl, gollar dogry, yza gaýdyp gelmek taýýar.
'revert tag vX. Y.Z 'ýa-da öňki snapshot geçişi; yzyna gaýtarmak buýruklary runbook-da resminamalaşdyryldy.
Neşiriň düşündirişleri: konfiganyň görnüşi wakalar bilen çalt baglanyşmak üçin metriklerde/ýazgylarda çap edilýär.


8) Dinamiki we uzakdaky konfigurasiýa

Remote config/feature flags: parametrleri täzeden başlamazdan üýtgedýäris; baýdaklaryň hemmesi - GitOps astynda.
Serhetler: haýsy parametrleri dinamiki taýdan üýtgetmäge rugsat berilýär (ak sanawlaryň sanawy).
Keş we yzygiderlilik: TTL, wersiýalar, toplumlary atom bilen çalyşmak (iki fazaly neşir).
Howpsuz päsgelçilikler: runtime-üýtgeşmeler üçin çäkler we aralyklar, SLO-dan çykanda awto-rollback.


9) Syrlar we duýgur maglumatlar

Hiç haçan repoda syr saklamaýarys. Konfigurasiýalarda diňe baglanyşyklar/pleýsholderler bar.
Zerur bolanda konfigurasiýa faýllaryny şifrlemek: gizlin/açar dolandyryjysy bilen integrasiýa.
Aýlanyş we JIT: giriş amallar wagtynda berilýär; hereketleriň yzy üýtgemez.
Meýdan maskasy: walidasiýa PII/syrlaryň girmegini gadagan edýär.


10) Daşky gurşawy dolandyrmak

Base + overlays: dev/stage/prod arasyndaky tapawut az we aç-açan.
Artefaktlar boýunça promotion: stage-den geçen şol bir snapshot prod-a geçýär.
Wagtlaýyn penjireler: nobat çalşylanda konfigurasiýalarda üýtgeşmeler bolmaýar; töwekgelçilik-ýokary - RFC we hyzmat penjiresi üçin.


11) Süýşmegi ýüze çykarmak we ýok etmek

Gözegçi maksatly ýagdaýy hakyky ýagdaý bilen deňeşdirýär we diff.
Drift-alertler: Page diňe möhüm tapawutlar bolan ýagdaýynda; galanlary - Ticket.
Awto-remediasiýa: rugsat berlende - maksatly ýagdaýa gaýdyp gelmek.
El bilen düzedişleriň barlagy: islendik "kubectl edit/ssh" → proses hadysasy we CAPA.


12) Konfigurasiýa katalogy we eýeçilik

Hyzmat katalogy: eýesi, SLO, baglanyşykly syýasatlar, shemalar, wersiýalar, laýyklyk.
RACI: kim teklip edýär, kim revuit edýär, kim makullaýar; Ýokary töwekgelçilik üçin CAB.
Aç-açanlyk: her ýazgynyň wersiýalarynyň taryhy we PR/biletlere/AAR salgylanmalary bar.


13) Kämillik ölçegleri

Coverage:% GitOps-daky hyzmatlar/syýasatlar (maksat ≥ 95%).
Lead time -üýtgeşmeler: PR-den prod.
Change failure rate: rebound/waka bilen -relizleriň paýy.
Drift rate: tapawudyň sany/hepde we ýok etmek wagty.
Rollback time: öňki wersiýasyna dikeldiş mediany.
Audit completeness: doly evidence bilen üýtgeşmeleriň paýy (walidatorlar, dry-run, synlar).


14) Çek-listler

Sazlamadan öň

  • Bir bilet/RFC bar we üýtgetmek eýesi.
  • Shemalar we linterler tassyklandy.
  • Yzyna gaýtarmak meýilnamasy we runbook buýruklary bar.
  • Gate: synaglar ýaşyl, gollar dogry, işjeň SEV-1 ýok.
  • Ýokary töwekgelçilik üçin - hyzmat penjiresi bellendi.

Yşyklandyryş wagtynda

  • Kanareýa we SLO-gardrailler işjeň.
  • Wersiýanyň düşündirişleri çap edilýär.
  • Kanalda ses habarlary bar; alert-ses MW düzgünlerine laýyklykda basylýar.

Soň

  • Observation window geçdi, SLO ýaşyl.
  • Netijeler we evidence (öň/soň grafikler, dry-run hasabatlary) bilet goşulýar.
  • Zerur bolanda täzelenen shemalar/resminamalar.

15) Kiçi şablonlar

15. 1 Konfigurasiýa shemasy (YAML-shema, bölek)

yaml type: object required: [service, timeouts, retries]
properties:
service: { type: string, pattern: "^[a-z0-9-]+$" }
timeouts:
type: object properties:
connect_ms: { type: integer, minimum: 50, maximum: 5000 }
request_ms: { type: integer, minimum: 100, maximum: 20000 }
retries:
type: object properties:
attempts: { type: integer, minimum: 0, maximum: 10 }
backoff_ms: { type: integer, minimum: 0, maximum: 5000 }

15. 2 Esasy + overley prod

yaml services/checkout/base/config.yaml service: checkout timeouts: { connect_ms: 200, request_ms: 1500 }
retries: { attempts: 2, backoff_ms: 200 }
limits:  { rps: 500 }
features:
degrade_search: false psp_a_weight: 80 psp_b_weight: 20
yaml services/checkout/overlays/prod/config.yaml limits:  { rps: 1200 }
features:
psp_a_weight: 70 psp_b_weight: 30

15. 3 Rugsat syýasaty (ideýa)

yaml allow_change_when:
tests: passed schema_validation: passed active_incidents: none_of [SEV-0, SEV-1]
rollback_plan: present signed_by: ["owner:team-checkout","platform-sre"]

15. 4 Konfigiň goýberiliş kartoçkasy


Release: checkout-config v2.3.1
Scope: prod EU
Changes: psp_b_weight 20→30, request_ms 1500→1300
Risk: Medium (маршрутизация платежей)
Canary: 1%→5%→25% (30/30/30 мин), guardrails: success_ratio, p95
Rollback: tag v2.3.0

16) Anti-patternler

GitOps ("çalt aýlandy")

Konweýalaryň howdanyndaky syrlar/PII.
Shemalaryň we statiki barlaglaryň ýoklugy.
Gurşawyň güýçli tapawudy (base ≠ prod).
Wersiýasy we taryhy bolmadyk "janly" baýdaklar.
Serwerlerdäki süýşmeleri we el düzedişlerini äsgermezlik etmek.
Bellikler release notes we yzyna gaýtarmak meýilnamasy bolmazdan.


17) Durmuşa geçirmegiň ýol kartasy (4-6 hepde)

1. Ned. 1: konfigurasiýalaryň inventarizasiýasy; ilkinji 10 hyzmat üçin aýratyn kataloglar, shemalar.
2. Ned. 2: CI-de linterleri/tassyklamany we dry-run açyň; ýaşyl çeklersiz merjeni gadagan etmek.
3. Ned. 3: GitOps ýaýrady + kanareýkalar; telemetriýadaky wersiýalaryň düşündirişleri.
4. Ned. 4: rugsat syýasatyny (policy-as-code) we rollback şablonlaryny girizmek; drift üçin aladalar.
5. Ned. 5-6: hyzmatlaryň 90% -ini ýapmak; env bilen overlays arasyndaky tapawudy azaltmak; kämillik ölçeglerini we hepdelik gözden geçiriş-üýtgeşmeleri goşmak.


18) Jemleýji

Konfigurasiýa wersiýalaryna gözegçilik etmek diňe Git däl, ulgam. Shemalar we tassyklama, GitOps we giriş syýasaty, kanareýalar we gaýdyşlar, süýşmegi ýüze çykarmak we doly audit dolandyrylýan artefakta öwürýär. Netije - çalt we howpsuz üýtgeşmeler, SLO-nyň öňünden aýdylyşy we toparyň her goýberilişine bolan ynamy.

Contact

Biziň bilen habarlaşyň

Islendik sorag ýa-da goldaw boýunça bize ýazyp bilersiňiz.Biz hemişe kömek etmäge taýýar.

Integrasiýany başlamak

Email — hökmany. Telegram ýa-da WhatsApp — islege görä.

Adyňyz obýýektiw däl / islege görä
Email obýýektiw däl / islege görä
Tema obýýektiw däl / islege görä
Habar obýýektiw däl / islege görä
Telegram obýýektiw däl / islege görä
@
Eger Telegram görkezen bolsaňyz — Email-den daşary şol ýerden hem jogap bereris.
WhatsApp obýýektiw däl / islege görä
Format: ýurduň kody we belgi (meselem, +993XXXXXXXX).

Düwmäni basmak bilen siz maglumatlaryňyzyň işlenmegine razylyk berýärsiňiz.