Ինչպես կազինոն օգտագործում է տարանջատումը (Docker, Kubernetes)
Ինչու՞ կազինո տարաներ
Առցանց կազինոն տասնյակ օրինագծեր են (դրամապանակ, տոկոսադրույքներ, բոնուսներ, ձայներիզներ, KYC/AML, RG, զեկույց, պրովայդերների հետ)։ Բեռնարկղերը տալիս են
Արագ լուծումներ և կախվածության մեկուսացում։ Մեկ պատկեր նույն միջավայրն է dev/stage/2019-ում։
Հորիզոնական մեծացումը։ Ավտոմեքենաների սկեյլինգը 108/ստրիմների ծանրության վրա։
Վստահություն։ Ենթատեսակների ինքնաբուխ բուժումը, rollout/rollback առանց անցքի։- Multiregion։ Կլաստերներ ռուսական residency և latency-ի համար։
Օժանդակ ճարտարապետություն
Շերտերը
Images & Registry: ստանդարտացված հիմնական պատկերները (alpine-based), ներքին registry-ը ստորագրման/սկանավորման քաղաքական գործիչների հետ։
CI/CD: wwww.SMS/DMS-ի հավաքումը հաստատեց GitOps/Helm/Argo CD-ի միջոցով։
Orchestration: Kubernetes-ը որպես կառավարման միասնական ծրագիր։ Namespaces-ը։
Black Mesh (ուղղակիորեն) ՝ mTIM, policy, retries, circuit-breaking (Istio/Linkerd)։- Plane-ը 'ղեկավարված BD (Postgres, ClickHouse, Redis), օբյեկտի պահեստ (S3), գծեր (Kafka/NATS)։
- Edge: API-gress/ingress, WAF/bot-պաշտպանություն, rate limits, geo-ֆիլտրեր։
Observability: Prometheus/Grafana, Loki/ELK, OpenTelemetry traces, алёрты.
Պլատֆորմի ածխաջրածինների տարանջատումը
Wallet/Ledger (կրիտիկական-կոնսիստենտային միջուկ) 'ենթատեսակներ ֆիքսված CPU/mem, PDB (PoddEurup.Budget), գերակայական դասեր, «www.Unavailable = 0» Statefull.ru-ի համար։ խիստ քաղաքականություն rollout (blue-green)։
Gaming API/Bridge-ը պրովայդերների մոտ 'stateless-ծառայություններ, հորիզոնական HPA-ը RPS/latency, readiness արտաքին կախվածությունների վրա։
Bonus/Promo/Comics: Asinchron workers հերթերով; սայթաքեց հերթով։
Cashier/PMS/Crypto-on/off-ramp: առանձին namespace, ցանցային քաղաքականություն, mTSA; timauts/retrai mesh մակարդակում։
KYC/AML/KYT: մեկուսացված պոդներ սահմանափակ հասանելիությամբ PII; node pooice-ը սկավառակի կոդավորմամբ։
Մոսկվա/Streaming Edge: Windows RTC/LL-HMS գեյթվեյի; տեղադրված է DSCP/UDP-friendly ցանցերում։
Reporting/ETL/MSH: batch-ջոբները k8s Cull Job-ում, ռեսուրսները 'reques.ru/limits ", գերակայությունը ցածր է։
Պատկերներ և Dockerfile: Պրակտիկա
Նվազագույնի հասցրեք հարձակման մակերեսը 'multi-stage build, non-root user, «distroless »/alpine։- Գրանցեք կախվածության տարբերակները և «CMD »/« ENTRYPOINT» որպես «պայմանագիր»։
- Տեղադրեք շերտերը (www.k-ֆայլեր)։
- Միացրեք healtheck (k8s մակարդակում '«readiness »/« liveness»)։
dockerfile build
FROM node:20-alpine AS build
WORKDIR /app
COPY package. json./
RUN npm ci --only=production
COPY..
RUN npm run build
run
FROM gcr. io/distroless/nodejs20
WORKDIR /app
COPY --from=build /app/dist./dist
COPY --from=build /app/node_modules./node_modules
USER 10001
ENV NODE_ENV=production
CMD ["dist/server. js"]
Kubernetes deple և անվտանգություն
Deploy.ru/StatefullExpress: Ռազմավարությունները երկուսը 'RollingCorate (լռելյայն) ստատելեսի համար, Blue-Green/Canary քննադատական ծառայությունների համար (դրամապանակ/լեդեր)։
Probes: «readiness» -ը ստուգում է արտաքին կախվածությունը (BD/kash/պրովայդեր), «liveness» -ը ինքնին գործընթաց է։
NetworkPolicy: լռելյայն deny-all; բացեք ելքային/բաղադրիչները միայն անհրաժեշտության դեպքում։
Secrets: External Secrets + KMS/HSM; կոդավորման (JWT 'kid "), RBAC-ի հասանելիության սահմանափակումները։
Pod Express: non-root, առանց արտոնությունների, readonly-rootics, seccope, ApPArmor։
Resourts Wintas/LimitRanges: Երաշխավորել SLO փողի միջուկը, մաքրել «աղմկոտ» գողերը։
OPA/Gatekeeper: քաղաքականությունները «արգելել դոպլան» առանց probes/ռեսուրսների/labels։
CI/CD, GitOps-ը և ածխաջրածինների ռազմավարությունը
Pipeline: build windunit/integration producan (SFC/DMS) wwww.SBSS-ը (cos.ru) www.argo CD սինգլ է։
Canary/Blue-Green:- Blue-Green-ի համար/դրամապանակի համար (ingress/VS)։
- Canary-ի առջևի API-ի համար (1-5 տոկոսը, սխալների/լատենտության չափումները որպես «stop-ազդանշան»)։
- NoBD: shadow tables/expand-migrate-medract, ռուսական «առաջ-համատեղելի»։
- Feature Flags: Progon fich-ը ռուսական/տարածաշրջանների հատվածներում։
Ավտոմատ և արտադրողականություն
HPA/WPA: HPA-ն RPS/latency/CPU, SNA-ի համար ETL-ի և վերլուծաբանների համար։
Cluster-Autoscaler: առանձին node-pooics: CPU ինտենսիվ (bridge/API), memory-heavy (ETL), ցանցային (WintRTC)։
PDB/Pod Priority: Պաշտպանեք քննադատական ենթատեսակները էվիկտներից։
Քեշինգը 'տեղական sidecar Redis-proxy, ընդհանուր Redis կլաստեր; alidate-ը իրադարձությունների մասին։- Cold-start: տաքացրեք JIT/connek-puls սկզբում (init-բեռնարկղեր)։
Stateful ծառայություններ և տվյալներ
BD (Postgres/ClickHouse): Մի փաթաթեք prod-BD-ը ներսում առանց սուր անհրաժեշտության։ Նախընտրեք կառավարվող ծառայություններ կամ առանձին կոդեր Patroni/Operance, PV 'sd' s կոդավորմամբ։
Գործարքային միջուկը 'խիստ RPO/RTO, սինխրոն կրկնօրինակներ AZ-ով։ ֆիզիկական բեքապներ + PITR։- Քեշի (Redis) 'կլաստերային ռեժիմ, RDB/AOF պահպանումը միայն անհրաժեշտության դեպքում։ նստաշրջանների համար 'TTL և sticky-less դիզայն։
- Հերթեր/անվադողեր ՝ Kafka/NATS - օպերատորներ k8s-ի տակ առանձին սկավառակի փամփուշտներով։ սահմանափակումներ և քվոտաներ։
Սոչիի պրովայդերներ և սթրիմինգ բեռնարկղերում
Windows RTC դարպասը որպես DaemonExpress/Deploy.ru օպտիմիզացված ապակու հանգույցներում (eBPF/UDP tuning)։
Edge-2019 (ավելի մոտ խաղացողներին) + կենտրոնացված վերահսկողություն GitOps-ի միջոցով։
QoS metriks: RTT ազդանշաններ 112, dropped frames, ռոքերի աբորտներ։ FPS/bitrate բեռնման և քայքայման ավտոմոբիլային սկեյլ։
Ցանցային քաղաքականությունները ՝ UDP-wwwitelisting, DSCP, միջտարածաշրջանային սահմանափակումը։
Դիտարկումը և SNE
Մետրիկները SLI/SLO: latency p95 դրամապանակ/դրամապանակ, error-rate, round-settle-time, payout-SLA, իրադարձությունների հերթը։
Հետքեր ՝ «trance Id» (ingress of API) միջով (ingress to API), դրամապանակն է։- Լոգները 'կառուցվածքային, հարաբերակցությունը' playerID/betID/roundId '։
- Ալբերտներ ՝ սխալների բյուջեներ (կանարական թողարկումը ինքնին), VOID/RET/RET-ի աճի, HPA-ի դեգրադացիան։
- Runbooks: Հստակ հրահանգներ միջադեպերի վերաբերյալ (շեղեց պրովայդերը, դահուկորդի ռասինխրոնը, կասկադային ռեստարտները)։
Կոմպլասենսը և մեկուսացումը
Namespaces (EU/UK/CA/...); տարբեր են տվյալների բնակության համար։- PII/պլատինային ածխաջրածինների սեգրեգացիան 'առանձին SDC/peering, սահմանափակ egress։
- Խոցելիության սկանը 'պատկերների և ռանտայմի մակարդակում (admission-վերահսկիչներ), քաղաքականությունը «միայն ստորագրված պատկերներ»։
- Աուդիտ-լոգները անփոփոխ են (WORM/S3 Object Prok), զեկույցների արտահանումը կարգավորողին։
Արժեքը և արդյունավետությունը
Բաժանեք միջուկը (ֆիքսված ռեսուրսները) և առաձգական վորկլոադները (ավտոմատ/սպոտային միացություններ)։- Reques.ru/limits գիտության մեջ 'խուսափեք CPU-throttling-ից latency-քննադատական ծառայությունների համար։
- Right-sizing: SNA առաջարկություններ + ավելացում։
- Spot-puls ETL/վերլուծաբանների համար (միայն ճիշտ PDB-ի և հանդուրժողականության դեպքում)։
Anti-patterns
Առանց readiness/liveness և առանց ռեսուրսների սահմանափակման։- Մեկ ընդհանուր namespace և «հարթ» ցանցը առանց NetworkPolicy-ի։
- Աղետալի RollingCorate-ը դրամապանակն է 'www.Unavailable> 0։
- Գաղտնիքների պահպանումը փոփոխական միջավայրերում առանց միգրացիայի և միգրացիայի։
- OLTP/OLAP խառնուրդը մեկ BD-ում, որը նկարագրվում է «Լո» պիկի ժամանակ։
- GitOps-ի բացակայությունը '«ձեռքով» վաճառքում, մանիֆեստների դրեյֆը։
- Անտեսելով «idempotencyKey» -ը վորկերներում կրկնապատկվել է գործարքների ժամանակ։
Ներդրման չեկի ցուցակ
Բազիս
- Մեկ հիմնական պատկերներ, ազդանշաններ և քաղաքական գործիչներ։
- Մասնավոր registry + խոցելիության սկան, միայն ստորագրված պատկերներ։
- GitOps (Argo CD/Flux), Helm/Kustomize, ճշմարտության աղբյուրը։
Kubernetes
- Namespaces-ը բյուջեներով/տարածաշրջաններով; NetworkPolicy «deny-all լռելյայն»։
- Probes, PDB, գերակայություններ, HPA/MSA, Cluster-Autoscaler։
- RBAC-ը նվազագույն անհրաժեշտ սկզբունքով, PodExpress/PSA enforced-ը։
Տվյալները
- Կառավարվող BD-ն կամ օպերատորների հետ առանձին օգտագործողները. սկավառակների կոդավորումը, PITR։
- OLTP/OLAP բաժանումը, CDC-ը MSH-ում, լոգարանների օբյեկտ։
Անվտանգություն և ընկերակցություն
- mTSA/mesh, KMS/HSM, JWT/2019, audit-trail (WORM)։
- PII/վճարումներ, egress վերահսկողություն, գեո մեկուսացում։
Դիտարկումը
- SLI/SLO, alerts, error-budgets; ուղիների և հարաբերակցության միջոցով։
- Dashbords QoS 108-striming և 108։
Ալգորիթմներ
- Blue-Green փողի միջուկի համար, Canary API-ի համար; «expand-medract» կոմպոզիցիան։
- Feature-flags, առանց dountaima։
IGaming-ում բեռնարկղը ոչ միայն «հարմար» է։ Սա կարգապահություն է 'կրկնվող պատկերները, GitOps-ը, ածխաջրածինների մեկուսացումը, խիստ ցանցը, դիտարկումը և անվտանգ ածխաջրածինները։ Կազինոյի այս պլատֆորմի հետ
ավելի արագ միացնում է պրովայդերներին և վճարումներին, դիմանում է բեռի պիկի, համապատասխանում է կարգավորիչների պահանջներին ըստ տվյալների, և կանխատեսելիորեն մեծանում է առանց դրամապանակի և փայտի ռիսկի։