Tehnologiýalar we infrastruktura → Kubernetes-klasterler we Helm-diagrammalar
Kubernetes-klasterler we Helm-diagrammalar
1) Kubernetes we Helm roly
Kubernetes programma platformasynyň esasyny düzýär: aýlawy, tory, konfigi, syrlary we öz-özüni dikeltmegi standartlaşdyrýar. Helm - deklaratiw manifestleri wersiýalary we garaşlylygy dolandyrýan gaýtalanýan neşirlere öwürýän paket/şablon dolandyryjysy. Olar bilelikde öňünden aýdyp boljak deploidleri, çalt yza gaýdyp gelişleri we bitewi infrastruktura dilini berýär.
2) Klaster dizaýny
2. 1 Topologiýa we şowsuzlyga çydamlylyk
Multi-AZ: control plane we iş howuzlarynyň düwünleri zolaklar boýunça paýlanýar; Düzgünlilik üçin PDB/TopologySpreadConstraints.
Multiregion/DR: per-region garaşsyz toparlar; sebitara jaňlar - diňe "sowuk" ýollar boýunça (kataloglar/telemetriýa), "gyzgyn" (gapjyk) - ýerli.
Worker howuzlary: 'general', 'compute', 'io', 'spot' (fon meseleleri üçin). nodeSelector/affinity/taints arkaly bellenýär.
2. 2 At giňişligi we köp ulanyjy modeli
Namespace-domen/komut boýunça izolýasiýa: 'payments', 'wallet', 'games', 'reporting'.
ResourceQuota + LimitRange: CPU/RAM-yň esasy çäkleri we iň köp sözleri; klasteri "tozan sorujylardan" goramak.
RBAC: rollary read-only, write - diňe CI/CD we on-call.
2. 3 Tor
NetworkPolicy (Calico/Cilium) tarapyndan goldanýan CNI: namespace/label syýasaty L3/L4.
Ingress → Gateway API: kanareýalar we köp tenantlyk üçin 'GatewayClass/Gateway/HTTPRoute' modeline geçmek.
Service Mesh (goşmaça): mTLS, retry/breaker, locality-aware; hyzmatara ygtybarlylyk üçin nokady goşmak.
3) Ygtybarlylyk we masştab
3. 1 Skeyling
HPA diňe bir CPU däl, ulanyjy metrikleri boýunça (RPS/latency/queue depth).
fon ýükler synpynda VPA; önümde - "recommendation only" ýa-da HPA bilen dürli metrler boýunça bilelikde.
Cluster Autoscaler: duýgur hyzmatlar üçin aýratyn node groups; warm-pool (ýaryşlar/oýunlar).
3. 2 Çeşmeler we QoS
Her Pod-da requests/limits bar; ': latest' we "çäksiz" konteýnerlerden gaça duruň.
PriorityClass: kritiki hyzmatlar ('wallet', 'payments') kritiki däl hyzmatlary çalyşýar.
PDB: nod täzelenende "özümizi aýagymyzdan atmaga" klaster bermeýäris.
3. 3 Duralgasyz täzelenmeler
RollingUpdate c maxUnavailable = 0 kritiki ýollarda.
PodDisruptionBudget + ReadinessProbes (не `startupProbe` вместо readiness).
Iň ýokary derejelerde çalt çykmak üçin Surge-kuwwaty - seresaplylyk bilen.
4) Platformanyň howpsuzlygy
Pod Security (Baseline/Restricted) namespace derejesinde; gadaganlyk 'privileged', hostPath, root.
NetworkPolicy: default-deny we/label portlary boýunça ak sanawlar.
Seccomp/AppArmor, non-root users, read-only rootfs.
Secrets: KMS/Vault üpjün ediji (CSI), syr saklamaýarys 'values. yaml 'açyk.
RBAC-minimum: hyzmat hasaplaryna diňe zerur hukuklary berýäris; gysga ömürli bellikler.
Admission-control: OPA/Gatekeeper/Kyverno - bellikleriň, çäkleriň, syýasatlaryň bozulmagy.
5) Observability
OpenTelemetry: Ingress/Gateway → service → DB/kesh, hökmany 'service', 'version', 'region', 'partner', 'api _ version' bellikleri.
Loglar: gurluşly, PII/PAN-syz; merkezleşdirilen ammara ugrukdyrmak.
Metrikler: RED/USE, SLO-daşbordlar, burn-rate alertleri.
Sintetika: zerur ýurtlardan nusgalar/ASN; perimetri we içerki saglyk barlaglary.
6) GitOps и progressive delivery
Argo CD/Flux: islenýän ýagdaý Git-de saklanýar; her namespace - öz repozitory/bukjasy.
Artefaktlary mahabatlandyrmak: 'dev → stage → prod' PR arkaly, "kubectl apply" däl.
Canary/Blue-Green: Argo Rollouts/Gateway API; üstünlik metrikleri - P95/P99, error-rate, biznes-SLI (CR depozitleri).
Gaýdyşlar: Helm/Argo - düwme; diagrammalarda - wersiýalary ýazga alyndy.
7) Helm: iň gowy amallar
7. 1 Tertipnamanyň gurluşy
my-service/
Chart. yaml # name, version (SemVer), appVersion values. yaml # base values (no secrets)
values-prod. yaml # prod overrides (no secrets)
templates/
_helpers. tpl # naming, common deployment templates. yaml service. yaml hpa. yaml pdb. yaml networkpolicy. yaml serviceaccount. yaml ingress_or_gateway. yaml charts/# dependencies (opcional)
Teklipler:
- 'version' - çartyň wersiýasy (SemVer), 'appVersion' - programmanyň wersiýasy (keşbi).
- Gaty çeşme atlary: '{{include' svc. fullname".}}' + label' app. kubernetes. io/`.
- Hökmany manifestler: Deployment/StatefulSet, Service, ServiceAccount, HPA (mümkin bolsa), PDB, NetworkPolicy.
7. 2 Values strategiýasy
Esasy 'values. yaml '- defoltlar, syrsyz we daşky gurşawsyz.
'values- {stage' prod} .yaml '+ per-region faýllary.
Syrlar: SOPS ('values-prod. sops. yaml ') ýa-da CSI arkaly Vault-sanjym.
Resurslaryň we nusgalaryň parametrleri - "akylly" defoltly values.
7. 3 Garaşlylyk we umumy kody
Patternler üçin umumy kitaphanalar (probes, annotations, NetworkPolicy).
Garaşlylyk ('requirements '/' Chart. yaml ') wersiýasyna görä düzediň; çuňňur "matryoşkalardan" gaça duruň.
7. 4 Şablonlar we barlaglar
'required' we 'fail' -den '_ helpers. tpl 'kritiki gymmatlyklar üçin.
Values - 'values. schema. json`.
Çartyň unit synaglary - 'helm unittest'; statiki derňew - kubeconform/kubeval.
Lokal düzediş - 'helm template' + '-values' + 'kubeconform'.
7. 5 Neşirler we saklamak
Konteýnerleriň OCI-registrlerinde çartalary düzmek; bellikler SemVer.
Helmfile/`helmfile. d'Köp partiýaly depeleri orkestrlemek üçin.
CI artefaktlary: döredilen manifestler + lockfile endikleri.
8) Mysal: Deployment (Helm şablonynyň bölegi)
yaml apiVersion: apps/v1 kind: Deployment metadata:
name: {{ include "svc. fullname". }}
labels: {{ include "svc. labels". nindent 4 }}
spec:
replicas: {{.Values. replicas default 3 }}
strategy:
type: RollingUpdate rollingUpdate:
maxSurge: 1 maxUnavailable: 0 selector:
matchLabels: {{ include "svc. selectorLabels". nindent 6 }}
template:
metadata:
labels: {{ include "svc. selectorLabels". nindent 8 }}
annotations:
checksum/config: {{ include (print $.Template. BasePath "/configmap. yaml"). sha256sum }}
spec:
serviceAccountName: {{ include "svc. serviceAccountName". }}
securityContext:
runAsNonRoot: true containers:
- name: app image: "{{.Values. image. repository }}:{{.Values. image. tag }}"
imagePullPolicy: IfNotPresent ports:
- name: http containerPort: {{.Values. ports. http }}
resources:
requests:
cpu: {{.Values. resources. requests. cpu }}
memory: {{.Values. resources. requests. memory }}
limits:
cpu: {{.Values. resources. limits. cpu }}
memory: {{.Values. resources. limits. memory }}
readinessProbe:
httpGet:
path: /healthz port: http periodSeconds: 5 envFrom:
- secretRef:
name: {{ include "svc. secretsName". }}
9) Syrlar we konfigurasiýalar
Gizretler CSI (Vault/KMS) ýa-da Git-repozitordaky SOPS (GPG/KMS açarlary; gadaganlyk 'kubectl edit').
ConfigMap/Secret checksum rolling-reliz triggeri üçin düşündirişler.
PAN/PII saklamaň; tokenizasiýany ulanmak.
Sealed Secrets rugsat berilýär, ýöne SOPS ýa-da göni CSI has gowudyr.
10) Tor we perimetri
L7-routing, kanarlar we gök ýaşyl üçin Gateway API; sticky-sessiýalary diňe zerur bolanda.
mTLS hyzmatlarynyň arasynda mesh/sidecar-less (Cilium) arkaly - töleg özeni üçin nokat.
Egress: daşarky düwünleriň gözegçilik edilýän sanawy (PSP/KYC), kesgitlenen NAT-IP, wagtlar we retraýlaryň býudjeti.
11) Stateful-hyzmatlar we maglumatlar
OLTP-DB üçin aýratyn toparlarda dolandyrylýan bulut hyzmatlaryny ýa-da operatorlary (Postgres/MySQL) ulanyň.
Snapshot we backup syýasaty bilen PVC/CSI; replikalar üçin 'PodAntiAffinity'.
Nobatlar/akym üçin - dolandyrylýan çözgütler ýa-da bölünip berlen klaster; "umumy" goşundy toparynda iň az baýlygy saklamak.
12) CI/CD konweýer (salgylanma)
1. Build & test → 2) SCA/lint → 3) Registrdäki surat (SBOM, gol) →
2. Helm-çart döretmek + 'helm unittest' + kubeconform →
3. SOPS-dekript kireýine CD → 6) PR in GitOps-repozitory →
4. Argo/Flux ulanýar → 8) Argo Rollouts canary → 9) SLO boýunça awto-höküm → 10) Mahabat/yza gaýdyp gelmek.
13) Platformanyň kämillik ölçegleri
GitOps arkaly goýberilişleriň paýy (maksat: 100%).
Gaýdyş wagty (P95) taýýar bolýança, MTTR gaýdýar.
Namespace's Pod Security we NetworkPolicy (Maksat: 100%).
HPA we dogry requests/limits bilen% hyzmatlar.
% s 'values. schema. json 'we birlik synaglary.
"El bilen" üýtgeşmeler sebäpli ýüze çykan hadysalar (maksat: 0).
14) Girizmegiň çek-sanawy
1. Zolaklar boýunça klaster, profiller boýunça düwünleriň howzy; PDB/TopologySpreadConstraints.
2. Namespace-model, ResourceQuota/LimitRange, RBAC iň az.
3. Pod Security (Restricted) и default-deny NetworkPolicy.
4. Gateway API/Ingress; egress-gözegçilik we üpjün edijilere NAT-düzediş.
5. Observability: OTel söwda, RED/USE, geo boýunça sintetika; SLO-daşbordlar.
6. GitOps (Argo/Flux), canary/blue-green, metrik awtoulag mahabaty.
7. Helm-standartlar: gurluş, shema. json, synaglar, SOPS/Vault, OCI registrleri.
8. HPA/VPA, Cluster Autoscaler, iň ýokary derejelere warm-pool.
9. Maglumatlar bilen amallar: CSI snapshotlar, bekaplar, operatorlar/dolandyrylan DB.
10. Yzygiderli DR/chaos synaglary we game-days.
15) Anti-patternler
Izolýasiýa we kwotalar bolmazdan hemme zat üçin bir "ullakan" klaster.
Resurslar çäksiz konteýnerler, 'latest' bellikleri, probes ýoklugy.
Syrlar v 'values. yaml 'açyk,' kubectl edit 'prodda.
GitOps-dan geçen neşirler, janly klasterde manifestleriň el bilen düzedişleri.
NetworkPolicy/Pod Security ýok - "tekiz" tor.
Dürli görnüşli ýükler üçin CPU boýunça ýeke-täk umumy HPA-signal.
OLTP-DB-ni programmanyň "umumy" klasterinde operatorsyz we belliksiz saklamak.
16) iGaming/fintech mazmuny: amaly bellikler
Töleg webhuklary: bölünen ingress/gateway we PSP-e dar egress; berk wagtlar/retralar; aýratyn düwün howzy.
VIP-traffigi: ileri tutulýan we aýry-aýry ugurlar; Durnuklylyk üçin PDB we topologiýa spread.
Ýaryşlar/pikler: warm-pool düwünleri + çaklama HPA; keş/birikmeleri gyzdyrmak.
Hasabat/CDC: ETL-iň önüme täsir etmezligi üçin aýratyn klaster/howuz.
Düzgünleşdiriji: üýtgemeýän loglar (WORM), PII tokenizasiýasy, torlaryň segmentasiýasy.
Jemi
Güýçli Kubernetes platformasy "YAML üýşmesi" däl-de, standartlar: izolýasiýa, howpsuzlyk syýasaty, dolandyrylýan çeşmeler, gözegçilik we GitOps-düzgün. Helm-charts - üpjünçilik şertnamaňyz: öňünden aýdyp boljak neşirler, synagdan geçirilýän şablonlar, syrlar bilen howpsuz işlemek we ýönekeý yza gaýdyp gelmek. Bu ýörelgeleri berkitmek bilen, iň ýokary derejäni başdan geçirýän, goýberilişleri çaltlaşdyrýan we işewürligiň we düzgünleşdirijileriň talaplaryna laýyk gelýän toparlar alarsyňyz.