Learning
Kubernetes

Best practice-ek

Production alapelvek: deployment használat, limit-ek, image tag-ek, config szeparáció, RBAC, GitOps, staging.

Best practice-ek

Soha ne használj bare pod-ot production-ben

# ❌ Kerüld ezt éles rendszerben
apiVersion: v1
kind: Pod
metadata:
  name: myapp-pod
spec:
  containers:
    - name: myapp
      image: myapp:latest
# ✅ Használj Deployment-et
apiVersion: apps/v1
kind: Deployment
metadata:
  name: myapp-deployment
spec:
  replicas: 3
  ...

Mindig adj meg resource limit-eket

resources:
  requests:
    memory: "128Mi"
    cpu: "100m"
  limits:
    memory: "256Mi"
    cpu: "500m"

Ne használj latest taget image-eknél

# ❌ Nem reprodukálható
image: myapp:latest

# ✅ Pontos verzió vagy commit hash
image: myapp:1.2.3
image: myapp:a1b2c3d

Használj ConfigMap-et és Secret-et a konfigurációhoz

Ne égesd bele a konfigurációt az image-be; környezetspecifikus értékek ConfigMap/Secret-ben legyenek.

Namespace-ekkel szeparálj

Külön csapatok/projektek/környezetek számára külön namespace-eket használj.

Adj meg liveness és readiness probe-okat

Probe-ok nélkül a Kubernetes nem tud megbízhatóan dönteni az egészségi állapotról és forgalomról.

Figyelj a logokra és metrikákra

Használj log aggregációt (pl. Fluentd) és monitoringot (pl. Prometheus + Grafana).

Használj RBAC-ot

Ne adj mindenkinek cluster-admin jogot; Role-Based Access Control-lal korlátozz.

Verziókövess minden YAML-t (GitOps)

A konfiguráció menjen Git-be, PR folyamaton keresztül módosuljon, és CI/CD telepítse.

Tesztelj staging-en production előtt

Legyen staging környezet, ami a production-höz hasonló.

Rövid összefoglaló

  • Deployment + limit-ek + probe-ok nélkül könnyen instabil lesz a rendszer.
  • Image tag-ek legyenek determinisztikusak.
  • GitOps és RBAC segít a kontrollált üzemeltetésben.

On this page