Aller au contenu

Probes & Resources

Detecte si le pod est bloque et doit etre redemarre.

livenessProbe:
httpGet:
path: /health
port: 80
initialDelaySeconds: 5
periodSeconds: 10
timeoutSeconds: 10
successThreshold: 1
failureThreshold: 3

Detecte si le pod est pret a recevoir du trafic.

readinessProbe:
httpGet:
path: /status
port: 80
scheme: HTTP
initialDelaySeconds: 30
periodSeconds: 5
timeoutSeconds: 20
successThreshold: 1
failureThreshold: 3

Pour les applications qui n’exposent pas d’endpoint HTTP :

livenessProbe:
exec:
command: ["cat", "/tmp/healthy"]
initialDelaySeconds: 5
periodSeconds: 10
ProprieteTypeDefautDescription
httpGet.pathstringChemin de l’endpoint
httpGet.portintegerPort
httpGet.schemestringHTTPHTTP ou HTTPS
httpGet.httpHeadersobject[]Headers HTTP custom
exec.commandstring[]Commande a executer
initialDelaySecondsinteger2Delai avant la premiere verification
periodSecondsinteger10Intervalle entre les verifications
timeoutSecondsinteger10Timeout par verification
successThresholdinteger1Nombre de succes consecutifs requis
failureThresholdinteger3Nombre d’echecs avant action

Resources demandees (garanties par le scheduler Kubernetes) :

resourcesRequests:
cpu: 100m
memory: 128Mi

Les defaults sont adaptes par environnement :

EnvironnementCPU requestMemory request
Production100m128Mi
Staging / Lab / Preview10m64Mi

Resources maximales autorisees :

resourcesLimits:
cpu: 1000m # 1 vCPU
memory: 1024Mi # 1 GB
ProprieteTypeDefautDescription
resourcesRequests.cpustring100m (prod) / 10m (non-prod)CPU request
resourcesRequests.memorystring128Mi (prod) / 64Mi (non-prod)Memory request
resourcesLimits.cpustring500mCPU limit
resourcesLimits.memorystring512MiMemory limit

Ajuste automatiquement les resources CPU/memory selon l’usage reel.

vpa:
enabled: true
updateMode: "Off" # Off = recommendations seulement, Auto = applique
minReplicas: 2
ProprieteTypeDefautDescription
vpa.enabledbooleanfalseActiver le VPA
vpa.updateModestringOffOff, Initial, Recreate, Auto
vpa.minReplicasinteger0Minimum de replicas

Le VPA a les bornes suivantes :

  • minAllowed : CPU 10m, memory 64Mi
  • maxAllowed : CPU 1, memory 1Gi

Pour les applications qui ont besoin de stockage persistant :

pvcs:
- name: data
diskSize: 10Gi
accessMode: ReadWriteOnce
- name: shared
diskSize: 5Gi
accessMode: ReadWriteMany
ProprieteTypeDefautDescription
namestringNom du PVC (requis)
diskSizestring10GiTaille du disque
accessModestringReadWriteOnceReadWriteOnce, ReadWriteMany, ReadOnlyMany

Voir aussi : Toutes les proprietes | deployer.yaml