GH GambleHub

Վիրահատություններ և Alerta ձեռնարկության կառավարման համակարգեր

1) Ինչո՞ ւ է դա անհրաժեշտ

Մկանային ալերտները նախազգուշացնում են Ռուսաստանի սահմաններին մոտենալու մասին շատ առաջ. <<Մենք առաստաղից 80 տոկոսով, ժամանակն է մեծանալ>>։ Ապրանքային բիզնեսների համար դա ուղղակի փողի մասին է 'բաց թողնված տոկոսադրույքներ/ավանդներ, նստաշրջաններ, խաղերի ձգձգումներ և պրովայդերների մերժումներ = կորցրած եկամուտներ, հեղինակություն, տուգանքներ և տուգանքներ։

Նպատակները

Կանխատեսելիորեն դիմակայել պիցցային բեռներին (եբենտներ, կիսագնդեր, սթրիմներ, մեծ արշավներ)։

Միացրեք մեքենայի սկեյլինգը ժամանակին և պլանավորեք capacity uplift-ը։

Նվազեցնել աղմուկը և «գործի մեջ», երբ SLO/փողը վտանգում են։

Ինժեներներին ճշգրիտ առաջարկություններ տալ runbook-ի միջոցով։

2) Հիմնական հասկացությունները

Հզորությունը (Capacity) 'առավելագույն կայուն թողունակություն (RPS/TPS, կոննեկտներ, IOPS, throughput)։

Headrope-ը ընթացիկ բեռի և լիմիտների միջև է։

SLO/SLA 'միջին հասանելիության/արձագանքման ժամանակի մակարդակները; ալերտները պետք է լինեն SLO-aert։

Burn-rate: SLO-բյուջեի սխալների/լատենտության արագությունը։

High/Low Watermark: Վերին/ստորին մակարդակները աշխատանքի և մեքենայի վերականգնման համար։

3) Ազդանշանների ճարտարապետությունը և տվյալների աղբյուրները

Հեռուստացույց ՝ մետրիկներ (Prometheus/OTel), լոգներ (ELK/ClickHouse), հետքեր (OTel/Jaeger)։

Սլաքային մոտեցումը 'շերտերի ալտերտերը (Edge no API) ռուսական հերթերի/strims/BD/kashi-ի բիզնես ծառայություններն են։

Համատեքստը 'ֆիչեֆլագներ, օրինագծեր, մարքեթինգի քարոզարշավներ, մրցույթներ, գեո-դասավորություններ։

Դեպքը 'Alertmanager/PagerDuty/Opsgenie/Slack; կապում է runbook-ի և շարժասանդուղքների մատրիցի հետ։

4) Շերտերի հիմնական չափումները (ինչ վերահսկել և ինչու)

Edge / L7

RPS, 95-/99-պերցենտիլ latency, error rate (5xx/4xx), բաց connections։

Rate-limits/quotas, drops на CDN/WAF/Firewall.

API-шлюз / Backend-for-Frontend

Saturation/work-pula, հարցումների հերթը, timeouts-ը dounstriams-ին։

Քայքայման մասը (fallbacks, circuit-breakers)։

Հերթեր/Striming (Kafka/Rabbit/Pulsar)

Lag/consumer delay, backlog growth rate, throughput (msg/s, MB/s).

Parterskew, rebalancing churn, ISR (Kafka), retray/պապի լեյտեր։

Asinhrone workers

Առաջադրանքների սպասման ժամանակը, գծի երկարությունը, SLA-ի ժամկետանց խնդիրների տոկոսը։

Saturation CPU/Memory/FD գնդակների մոտ։

Քեշի (Redis/Memcached)

Hit ratio, latency, evictions, used memory, միացված հաճախորդները/ops/s։

Կլաստերներ 'արցունքներ/կրկնօրինակներ, failover events։

БД (PostgreSQL/MySQL/ClickHouse)

Active connections vs max, lock waits, replication lag, buffer/cache hit.
IOPS, read/write latency, checkpoint/flush, bloat/fragmentation.

Օբյեկտի/ալյումինի պահեստ

PUT/GET latency, 4xx/5xx, egress, հարցումներ/վայրկյան, պրովայդերի սահմանները։

Արտաքին պրովայդերներ (վճարումներ/KUS/պրովայդերներ)

TPS limits, QPS պատուհաններ, error rate/timeout, գետերի հերթը, «cost per call»։

Ենթակառուցվածքը

CPU/Memory/FD/IOPS/Network saturation հանգույցներում/ASG։

HPA/MSA իրադարձությունները, pending pods, OFC/Throttling բեռնարկղերը։

5) Էկրանի ալտերտերի տեսակները

1. Ստատիկ շեմեր

Պարզ և հասկանալի ՝ «db _ connections> 80% max»։ Լավ է որպես «ազդանշան-փարոս»։

2. Հարմարվողական (դինամիկ) շեմեր

Հիմնված են սեզոնայնության և տենդենցիայի վրա (rolling windows, STL-դեկպոզիցիա)։ Թույլ են տալիս բռնել «անսովոր բարձր այս ժամ/շաբաթվա օր»։

3. SLO կողմնորոշված (burn-rate)

Նրանք աշխատում են, երբ error-budget արագությունը կդնի SLO հարվածի տակ X ժամի հորիզոնում։

4. Պրոգնոստիկ (forecom-alerae)

«20 րոպե անց ներկայիս միտումով հերթը կհասնի 90 տոկոսին»։ Օգտագործվում են գծային/Robust/Prophet նման կանխատեսում կարճ պատուհանների վրա։

5. Բաղադրիչները (multi-signal)

Trigerration-ը համադրվում է '«queue _ lag no' +» consumer _ cpu 85% + + autoscaling at max '07 «անհրաժեշտ է ձեռքով միջամտություն»։

6) Շեմի քաղաքականությունները և հակա-աղմուկը

High/Low Watermark:
  • Վեր '70-75 տոկոսը, քրիտը 85-90 տոկոսը։ Ներքև 'histereae 5-10 p.p. Որպեսզի չփչացնեք շեմին։

Ժամանակավոր պատուհաններ և ճնշումներ

"for: 5m 'քննադատների համար," for: 10-15m "նախազգուշացման համար։ Night-mode: շփոթել ոչ ռիթմիկ չաթում առանց լանդշաֆտի։

Իրադարձությունների խմբավորումը

Խմբավորել ծառայության/կլաստերի/գեոյի միջոցով, որպեսզի չօգտագործեք քարտերը։

Dependency-aware suppression:
  • Եթե KYC-ի պրովայդերը դուրս է գալիս և API-ի սխալները հետևյալն են 'ընկերության սեփականատիրոջ լանդշաֆտը, ոչ բոլոր սպառողները։

Մարքեթինգի ժամանակավոր պատուհանները

Ակցիայի ժամանակ բարձրացրեք աղմուկի շեմերը «սպասվող աճի» համար, բայց թողեք SLO-alerta-ը անուղղակի։

7) Կանոնների օրինակներ (կեղծ-Prometheus)

BD կոննեկտներ


ALERT PostgresConnectionsHigh
IF (pg_stat_activity_active / pg_max_connections) > 0. 85
FOR 5m
LABELS {severity="critical", team="core-db"}
ANNOTATIONS {summary="Postgres connections >85%"}

Kafka lag + Auto-scailing սահմանով


ALERT StreamBacklogAtRisk
IF (kafka_consumer_lag > 5_000_000 AND rate(kafka_consumer_lag[5m]) > 50_000)
AND (hpa_desired_replicas == hpa_max_replicas)
FOR 10m
LABELS {severity="critical", team="streaming"}

Burn-rate SLO (API լատենտ)


ALERT ApiLatencySLOBurn
IF slo_latency_budget_burnrate{le="300ms"} > 4
FOR 15m
LABELS {severity="page", team="api"}
ANNOTATIONS {runbook="wiki://runbooks/api-latency"}

Redis հիշողությունը և էվիկշենը


ALERT RedisEvictions
IF rate(redis_evicted_keys_total[5m]) > 0
AND (redis_used_memory / redis_maxmemory) > 0. 8
FOR 5m
LABELS {severity="warning", team="caching"}

Վճարման պրովայդերը լիմիտներ են


ALERT PSPThroughputLimitNear
IF increase(psp_calls_total[10m]) > 0. 9 psp_rate_limit_window
FOR 5m
LABELS {severity="warning", team="payments", provider="PSP-X"}

8) SLO մոտեցումը և բիզնեսի գերակայությունը

Ազդանշանից բիզնեսի վրա ազդելու համար ալտերտերը պետք է հղում լինեն risk to SLO (կոնկրետ խաղեր/geo/metric GGR, դեպոզիտի փոխակերպում)։

Բազմազանություն 'նախազգուշացումներ on-call-ի համար։ Քրիտը տիրույթի սեփականատիրոջ բնապատկերն է։ SLO-նվազումը մաժորային դեպքն է և թիմային «համախմբված» ալիքը։

Դեգրադացիայի ֆիչեֆլագները 'ծանրության ավտոմատ նվազումը (մասնակի read-only, ծանր ֆիչի կրճատումը, ջեքպոտ-բրոդկաստների հաճախության նվազումը, «ծանր» անիմացիայի անջատումը խաղերում)։

9) Auto-scailing և «ճիշտ» ձգումներ

HPA/WPA: Target ոչ միայն CPU/Memory-ով, այլ նաև բիզնես մետրերով (RPS, queue lag, p99 latency)։

Warm-up timings: հաշվի առնել սառը մեկնարկը և պրովայդերի լիմիտները (ASG spin-up, բեռնարկղային տոմսեր, տաքացնելով քեշը)։

Guardrails: stop-պայմաններ սխալների լավատեսական աճի դեպքում։ պաշտպանություն «սայթաքում ենք խնդիրը»։

Capacity-playbooks: Որտեղ և ինչպես ավելացնել գնդակը/կուսակցությունը/կրկնօրինակը, ինչպես վերաբաշխել տարածքները։

10) Գործընթացը 'նախագծից մինչև շահագործումը

1. Լիմիտների քարտ 'հավաքել «իրական» bottleneck-limits յուրաքանչյուր շերտով (max conns, IOPS, TPS, sportas)։

2. Փոխաբերական-նախատիպերի ընտրությունը, թե ինչ ազդանշաններ են ցույց տալիս «համընկնում N րոպեների ընթացքում»։

3. Շեմերի դիզայնը 'high/low + SLO-burn + բաղադրիչները։

4. Runbook-ը յուրաքանչյուր քրիտի վրա 'ախտորոշման քայլերը («ինչ բացել», «ինչ թիմեր», «որտեղ ուղեկցել»), գործողությունների երեք տարբերակ' արագ շրջանցումը, մեծացումը, քայքայումը։

5. Փորձարկումը 'սիմվոլային բեռը (chaos/game days), Ալերտների «չոր գործարկումները», անտիի աղմուկի ստուգումը։

6. Նախանձը և որդեգրումը 'ազդանշանի սեփականատերը = շարժիչի սեփականատերը։ Առանց սեփականատիրոջ 'ոչ մի լանդշաֆտ։

7. Հետադարձ հայացք և թյունինգ ՝ շաբաթական վերլուծություն կեղծ/բաց թողնված։ «MTTA (ack), MTTD, MTTR, Medise/Signal ratio»։

11) Anti-patterna

CPU> 90% ռուսական խուճապի 'առանց latency/queues հարաբերության, դա կարող է նորմալ լինել։

«Մեկ շեմն բոլորի վրա», տարբեր տարածաշրջաններ/թայմ գոտիներ, տարբեր պրոֆիլներ։

Alert-ը առանց runbook-ի, առանց հստակ գործողությունների, ոչնչացնում է on-call-ը։

Կուրությունը պրովայդերների համար 'արտաքին քվոտաները/լիմիթները հաճախ առաջին անգամ «կոտրում են» սցենարները (PMS, KYC, հակաֆրոդ, խաղերի պրովայդերներ)։

Ոչ հիստերեզիս '«սղոց» 80 %/79 տոկոսը սահմանին։

12) iGaming/finplatform հատկությունները

Պիկի ժամանակացույցով '108 մ, մրցույթների ֆինալներ, մեծ խաղեր։ նախապես բարձրացնել կրկնօրինակները և լցնել քեշերը։

Մոսկվա-սթրիմ և ջեկպոտներ 'լայնաշերտ լիմիտներ բարձրացնելը բրոկերների/կայքերի վրա։

Վճարումները և KYC 'պրովայդերների պատուհանները, հակաֆրոդ սկորինգը։ պահել պահեստային երթուղիները և «grace-ռեժիմը» ավանդները։

Geo-հավասարակշռություն 'տեղական պրովայդերի ձախողումները' տեղափոխումը հարևան տարածաշրջանին, որտեղ կա headrome։

Պատասխանատվությունը 'պարտքերի/ջեքպոտների կորստի ռիսկի դեպքում' մետրոպոլիտենի թիմի ակնթարթային լանդշաֆտը + բիզնես ծանուցում։

13) Dashbords (նվազագույն հավաքածու)

Capacity Overview: headrope շերտերով, լավագույն 3 ռիսկային հատվածները, burn-rate SLO-ն։

Stream & Queues: lag, backlog growth, consumer saturation, HPA state.

DB & Cache: Կոնեկտներ, repl-lag, p95/p99 latency, hit ratio, evictions։

Providers: TPS/պատուհաններ/քվոտաներ, timeouts/errors, զանգերի արժեքը։

Releault/Feature ext: Alts/ficheflagy կորերի մոտ։

14) Ներդրման չեկի ցուցակ

  • Մոսկվան «իրական» սահմաններ և տերեր է։
  • Գծապատկերների քարտեզը + շերտերի միջև կապը։
  • Ստատիկ շեմեր + հիստերե)։
  • SLO-burn-alerts կրիտիկական ճանապարհների վրա (դեպոզիտ, տոկոսադրույքը, խաղի մեկնարկը)։
  • Gropnostic alerts հերթում/strimes/connects։
  • Suppression/mainten.ru պատուհանը; անտի աղմուկը։
  • Runbook "և թիմերի, գրաֆիկների, դեգրադացիայի ֆենչիֆլագների հետ։
  • Կեղծ գործի և թյունինգի շաբաթական վերլուծություն։
  • Մարքեթինգային քարոզարշավների իրականացումը և լիվենտների օրացույցը։

15) runbook ձևանմուշների օրինակ (կրճատ)

Ազդանշան ՝ «StreamBacklogAtRisk»

Նպատակը 'թույլ չտալ, որ lag> 10 միլիոն աճը և վերամշակման հետաձգումը> 5 ռուբլիա

Ախտորոշումը (3-5 րոպե)

1. Ստուգել 'hpa _ desired/max ", throttle/ope-ում։

2. Տեսեք 'rate (lag)', կուսակցության բաշխումը (skew)։

3. Ստուգել բրոքերը (ISR, under replicated, network)։

Գործողությունները

Ավելացնել consumer-replicas + N, բարձրացնել max-in-flight։

Ներառել գերակայական փամփուշտը «կրիտիկական տոպիկների» վրա։

Ժամանակավորապես նվազեցնել հիբրիդային բուժման հաճախությունը/enrichae։

Եթե «ASG at max», խնդրեք produplift ամպից։ զուգահեռ 'ներառել ծանր գործառույթների քայքայումը։

Արձագանք 'վերադառնալ «սովորական պաշտպանություն» ժողովին' <1 միլիոն '15 րոպե հետո։

Էսկալացիա 'Kafka հյուրանոցների սեփականատերը, ապա PPE պլատֆորմը։

16) KPI-ն և ազդանշանների որակը

Coverage: կրիտիկական ճանապարհների տոկոսը, որոնք փակված են ողնաշարավոր ալերտներով։

Noise/Signal: ոչ ավելի քան 1 կեղծ լանդշաֆտ on-call/շաբաթ։

MTTD/MTTR-ի հետևանքները դեգրադացվում են SLO հարվածներից 5 րոպե առաջ։

Proactive saves: col-ը կանխված դեղամիջոցների մեջ (հետմորտեմներով)։

17) Արագ սկիզբը (պահպանողական դեֆոլտներ)

BD 'կոննեկտների 75 տոկոսը/IOPS/lat; Քրիտ 85%, histerement 8-10 p.p.

Քեշի ' 0'> 5 րոպե - նախազգուշացում;" used _ mem> 85% "- քրիտ։

Հերթեր ՝ «lag» աճ> 3.8 միջինից 30d + «hpa at max» - քրիտ։

API: `p99 > SLO1. 3 '10 րոպե' նախազգուշացում; "burn-rate> 4 '15 րոպե - քրիտ։

Պրովայդերներ ՝ «throughput> 90 տոկոսը քվոտայի» - նախազգուշացում, «timeouts> 5%» - քրիտ։

18) FAQ

Q 'Ինչո՞ ւ չօգտագործել պարզապես «CPU> 80%»։

A 'Առանց latency/հերթերի, դա աղմուկ է։ CPU-ն ինքնին ռիսկի չի։

Q 'Արդյո՞ ք հարմարվողական շեմեր են անհրաժեշտ։

Այո, ամենօրյա/շաբաթական սեզոնի համար նվազեցնում են կեղծ գործիքները։

Q 'Ինչպե՞ ս հաշվի առնել մարքեթինգը/ivents

A 'Քարոզարշավի օրացույցը գրաֆիկների վրա ճանաչվում է որպես հակատանկային աղմուկի ժամանակավոր օպտիկա, բայց SLO-alerts-ը չի հուզվում։

Contact

Կապ հաստատեք մեզ հետ

Կապ հաստատեք մեզ հետ ցանկացած հարցի կամ աջակցության համար։Մենք միշտ պատրաստ ենք օգնել։

Սկսել ինտեգրացիան

Email-ը՝ պարտադիր է։ Telegram կամ WhatsApp — ըստ ցանկության։

Ձեր անունը ըստ ցանկության
Email ըստ ցանկության
Թեմա ըստ ցանկության
Նամակի բովանդակություն ըստ ցանկության
Telegram ըստ ցանկության
@
Եթե նշեք Telegram — մենք կպատասխանենք նաև այնտեղ՝ Email-ի дополнение-ով։
WhatsApp ըստ ցանկության
Ձևաչափ՝ երկրի կոդ և համար (օրինակ՝ +374XXXXXXXXX)։

Սեղմելով կոճակը՝ դուք համաձայնում եք տվյալների մշակման հետ։