GH GambleHub

High Availability и SLA

High Availability и SLA

1) Iş bilen gatnaşyklar we şertler

SLI (Service Level Indicator) - hyzmatyň ölçelýän görkezijisi (mysal üçin, üstünlikli haýyşlaryň paýy 2xx/3xx ≤ T ms).
SLO (Service Level Objective) - SLI maksatly bahasy (mysal üçin "99. Soraglaryň 95% -i ≤ 300 ms").
SLA (Service Level Agreement) - müşderiniň öňündäki şertnama borçnamasydyr (bozulan halatynda jerimeler/karzlar).
HA (High Availability) - SLO/SLA-ny ýerine ýetirmäge mümkinçilik berýän binagärlik we operasiýa çäreleri.

Prinsip: SLA SLO-a, SLO bolsa SLI-e esaslanýar. SLA-da ölçemeýän zadyňyzy wada berip bilmersiňiz.

2) "Dokuzlar" we elýeterlilik matematikasy

Döwür üçin elýeterlilik = 'iş wagty/umumy wagt'. Görkezijiler (ýyl üçin):
ElýeterlilikMaks. ýönekeý/ýyl
99. 0%≈ 3 gün 15 sagat
99. 5%≈ 1 gün 20 sagat
99. 9%≈ 8 s 45 m
99. 95%≈ 4 sagat 23 m
99. 99%≈ 52 m 34 s
99. 999%≈ 5 m 15 s

Elýeterlilik kompozisiýasy

Yzygiderli zynjyr ("gyzyl ýol" boýunça garaşlylyk): 'A _ total = Π A_i' (her komponent jemini azaldar).
Paralel aktiw-aktiw düwünleri: 'A _ total = 1 − Π (1 − A_i)' (ätiýaçlyk jemini ýokarlandyrýar).

3) Takyk näme ölçemeli (dogry SLI)

Ulanyjy görnüşi: esasy amallaryň üstünlikli tamamlanmagy (login, depozit, barlag) we olaryň gizlinligi p99.
Wagt koridory: süýşýän penjireler (5/30/60 min) we sebitler boýunça jemläň.
Kadadan çykmalar: "meýilleşdirilen penjireler" SLO-da, SLA-da bolsa diňe şertnamada şeýle diýilse hasaba alynýar.

SLI görnüşleri:
  • Elýeterlilik: üstünlikli jogaplaryň paýy ≤ T.
  • Hil: p95/p99 latency.
  • Düzüm: "üstünlikli goýumlaryň paýy ≤ 5 s".

4) Error Budget we ýanmak tizligi

Error Budget = `1 − SLO`. 99 üçin. 95% aýlyk penjire 0 berýär. 05% ýalňyşlyk/arakesme.
Burn-rate: býudjet çykdajylarynyň tizligi (mysal üçin 4 × 6 sagadyň içinde gündelik çäkleri iýýändigiňizi aňladýar).
Syýasat: çalt ýananda - relizleri duruzmak, durnuklaşdyrmaga, feature-freeze üns bermek.

5) HA arhitekturasy: düwünden sebite

5. 1 Düwün/Hyzmat

N + 1: azyndan bir artykmaç göçürme (Deployment ≥ 2, PDB, anti-affinity).
Çeşmeleriň izolýasiýasy: CPU/RAM/IO çäkleri, ileri tutulýan ugurlar (PriorityClass).
Graceful shutdown/drain: Gaýtadan başlananda soraglaryň kesilmezligi.

5. 2 Zona/sebit

Multi-AZ: dürli zolaklardaky göçürmeler, kross-zonaly deňagramlylyk, garaşsyz güýç/tor.
Multi-region: aktiw-aktiw (has kyn: maglumatlar/yzygiderlilik) ýa-da aktiw-passiw (ýönekeý: RPO-dan ýokary).
Maglumatlar: Pul/sargytlar üçin CP (kworum/RAFT), Nagt pul/vitrinler üçin EC/AP.

5. 3 Tor gatlagy we perimetri

L7-LB с health-checks, retry/timeout/circuit-breaking.
Global traffik üçin GSLB/DNS/Anycast, gysga TTL.
Egress-gözegçilik we daşarky PSP/üpjün edijilere çenli şowsuzlyga çydamly kanallar.

6) Ýykylmagynyň ýerine pese gaçmak

Feature kill-switch (ficha-baýdaklar): möhüm däl öçürmek, "gyzyl ýoly" saklamak.
Ýönekeýleşdirilen ýollara geçmek: sinhron → asinhron/nobat, "gaýtadan işlemek üçin kabul edildi".
Rate-limit/kwotalar: traffigi çäklendirmek hemmeleri taşlamakdan has gowudyr.
Stale-mode: origin elýeterli bolmadyk ýagdaýynda keş/statik maglumatlary bermek.

7) Garaşlylygy dolandyrmak

Garaşlylyk kartasy (service map): göni/tranzitiw, kritiklik, her biriniň SLO-lary.
Gowşak baglanyşyklar: SLA-syz daşarky üpjün ediji - kese/nobata/dublikata öwrülýär.
Bulkhead-izolýasiýa: haýal ugurlar üçin dürli birikmeler/kwotalar.
Timeouts> Retries: gysga wagtlar, idempotent amallary üçin iň köp 1 retraj.

8) Amallar we üýtgeşmeler

Change management: kanareýkler/gök-ýaşyl, SLO-geýtlar, awtomatiki yza gaýdyp gelmek arkaly çykarylýar.
Meýilleşdirilen penjireler: standartlaşdyryň - uzynlyk, ýygylyk, aragatnaşyk.
Wakalar: rollar (IC/Comms/Tech/DB), runbook 'i, düzediş hereketleri bilen postmortemler.
Howpsuzlyk çäreleri: eglişik edilende - "howsala re modeimi" (read-only/tokenler/rotasiýa/blokirleme).

9) Syn etmek we alerting

Her ugur üçin RED-model (Rate, Errors, Duration).
SLI-daşbordlar: sebit boýunça we müşderi segmenti boýunça elýeterlilik/gizlinlik.
Burn-rate alertleri: çalt (1h, 14. 4 ×), haýal (6h, 2 ×) - SLO bozulýança signal.
Nusgalar (Exemplars): metriklerden trace_id ýollaryna geçmek.
Sintetika: daşarky nokatlardan nusgalar (perimetri, töleg flowlary).

10) Şowsuzlyga çydamlylyk synaglary

Game-days: AZ/sebitleri öçürmek, DB/nagt pullaryň zaýalanmagy, daşarky üpjün edijileriň şowsuzlygy.
Chaos gurallary: tor foltlary (latency/loss), kill-pods, CPU/IO artykmaç ýüklemek.
DR-drills: Tier-0 ulgamlar üçin RTO/RPO işlemegi ("Arka we DR" serediň).

11) SLA dizaýny

"Elýeterlilik" kesgitlemesi: waka hasaplanýan zat (5xx, wagt> T, domen ýalňyşlyklary).
Hasaplaşyk penjiresi: aý/çärýek; meýilleşdirilen işleri goşmak/aýyrmak.
Karzlar/jerimeler: şkalasy (mysal üçin), 99. 9–99. 99% - X%, aşakda - Y%).
Müşderiniň borçlary: integrasiýa, paýhasly çäklerde retralar, çäkler.
Bellikler we klimatlaryň tertibi: möhletler, format, subutnama bazasy (logi/metrika).
Fors-major: kanuny formulasy we serhetleri.

Mysal:
  • "SLI boýunça API elýeterliligi "üstünlikli ≤ 500 ms" 99-dan pes däldir. Senenama aýynda 95%. Meýilleşdirilen penjireler (48 sagadyň dowamynda yglan edilen 60 minut/aýa çenli) aýrylýar. 99. 90–99. 95% - 5% karz; 99. 80–99. 90% — 10%; <99. 80% — 25%.»

12) Dokuzlaryň ykdysadyýeti

Her goşmaça "dokuz" çyzykly däl çykdajylary artdyrýar (goşa sebitler, kworumlar, üpjün edijileriň goşa bölekleri, 24 × 7). Tiering SLO ulanyň:
  • Tier-0 (pul/sargytlar): 99. 95–99. 99%, multi-AZ, DR taýýar.
  • Tier-1 (esasy çyzgylar): 99. 9–99. 95%, köp-AZ.
  • Tier-2 (möhüm däl): 99. 5–99. 9%, hadysalarda degradasiýa/durmaga ýol berilýär.

13) Gatlaklar boýunça HA patternleri

Perimetri: CDN/edge, multi-CDN ýa-da GSLB, WAF, rate-limit.
Deňagramlylyk: L7 bilen outlier-ejection, taymautlar/retrailer, sticky/consistent-hash.
Programmalar: gorizontal skeýl, readiness/liveness, PDB, topology spread.
Maglumatlar: leader + replicas, quorum for CP, kesh L2, idempotency, PITR.
Nobatlar: aýna/multiklaster, dedup, DLQ.
Syrlar/gizlinlikler: GitOps, atom snapshotlar, rollback.

14) Anti-patternler

SLA ölçeg gurallary we daşarky sintetikasyz.
SPOF hökmünde ýekeje zona/klaster.
Gözegçiliksiz retralar → "öz-DDoS".
Gyzgyn ýolda uzyn amallar/muteksler.
Kanareýalar we yza gaýdyp geliş meýilnamasy bolmadyk "agyr" migrasiýalar/goýbermeler.
Runbook-yň ýoklugy we hadysada steýkholderler bilen aragatnaşyk.

15) Giriş çek-sanawy (0-60 gün)

0-15 gün

Möhüm ulanyjy SLI-ni kesgitläň, SLO-ny Tier-0/1/2 derejelerine görä kesgitläň.
Burn-rate alertleri, SLO-daşbordlary, perimetri sintetiki barlamagy öz içine alyň.
SPOF-y aýyryň: ≥ 2 replika, PDB, frontlar we möhüm DB üçin multi-AZ.

16-40 gün

SLO-geýting we awto-yza gaýdyş bilen kanar relizlerini giriziň.
Her "gyzyl ýol" boýunça garaşlylyk kartasy + kwotalar/howuzlar/wagtlar/SV.
Meýilleşdirilen penjireleriň we aragatnaşyklaryň düzgünleri, waka-habarlaryň şablonlary.

41-60 gün

Game-day: AZ-yň öçürilmegi, daşarky üpjün edijiniň şowsuzlygy, traffigiň "bursty".
SLA-lary we hakykat boýunça karzlary gaýtadan sanamak, müşderilere hasabatlary çap etmek.
"Dokuzyň bahasy" täzeden seredilýär we tire boýunça goýulýar.

16) Kämillik ölçegleri

≥ 95% -de SLI/SLO we burn-rate alertleri bar.
SLO ýalňyşlyklary relizleri awto-doňdurmak bilen bilelikde bolýar (policy).
Multi-AZ örtük Tier-0 = 100%, üstünlikli DR-drills ≥ 1/çärýek.
"Kesgitlemek" wagty → mitigasiýa "p50 <5 min, p95 <15 min.
"Release hadysalar" baglanyşygy - amala aşyrylýar we gysgaldylýar (rollback rate ↓).
Wakalar/karzlar hakynda köpçüligiň hasabaty - N iş gününiň dowamynda.

17) Mysallar we snippetler

Burn-rate alert (düzgünleriň pikiri):
  • Çalt: "SLO 99. 95%, penjire 1 sagat, burn ≥ 14. 4× → page on-call».
  • Haýal: "penjire 6 s, burn ≥ 2 × → ticket & monitoring".
Envoy — circuit breaking/outlier:
yaml circuit_breakers:
thresholds:
- max_connections: 200 max_pending_requests: 100 max_requests: 1000 max_retries: 1 outlier_detection:
consecutive_5xx: 5 interval: 5s base_ejection_time: 30s max_ejection_percent: 50
SLO derňewi bilen kanareýa (Argo Rollouts, ideýa):
yaml analysis:
templates:
- name: slo-burn metrics:
- name: error-rate successCondition: result < 0. 005 provider: prometheus
SLI formulasynyň mysaly:

SLI: fraction_of_good_requests = good(HTTP 2xx/3xx ≤ 500ms) / all(requests)
SLO: ≥ 99. 95% per calendar month, per region

18) Netijenama

"High Availability" diňe bir klasterler we göçürmeler däl, eýsem arhitekturanyň, prosesleriň we metrikleriň utgaşdyrylan toplumy: aýdyň SLI/SLO, hakyky SLA, ykdysadyýet bilen "dokuzlar", ýykylmagyň ýerine pese gaçmak, wagt/kwotalaryň tertibi, kanar goýberişleri, yzygiderli maşklar we aç-açan aragatnaşyk. Ölçegli we dolandyrylýan elýeterliligi ediň - bu lotereýa däl-de, bäsdeşlik artykmaçlygyna öwrüler.

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.

Telegram
@Gamble_GC
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.