Probes & Resources
Health Probes
Section intitulée « Health Probes »Liveness Probe
Section intitulée « Liveness Probe »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: 3Readiness Probe
Section intitulée « Readiness Probe »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: 3Probe avec exec
Section intitulée « Probe avec exec »Pour les applications qui n’exposent pas d’endpoint HTTP :
livenessProbe: exec: command: ["cat", "/tmp/healthy"] initialDelaySeconds: 5 periodSeconds: 10| Propriete | Type | Defaut | Description |
|---|---|---|---|
httpGet.path | string | — | Chemin de l’endpoint |
httpGet.port | integer | — | Port |
httpGet.scheme | string | HTTP | HTTP ou HTTPS |
httpGet.httpHeaders | object[] | — | Headers HTTP custom |
exec.command | string[] | — | Commande a executer |
initialDelaySeconds | integer | 2 | Delai avant la premiere verification |
periodSeconds | integer | 10 | Intervalle entre les verifications |
timeoutSeconds | integer | 10 | Timeout par verification |
successThreshold | integer | 1 | Nombre de succes consecutifs requis |
failureThreshold | integer | 3 | Nombre d’echecs avant action |
Resources
Section intitulée « Resources »Requests
Section intitulée « Requests »Resources demandees (garanties par le scheduler Kubernetes) :
resourcesRequests: cpu: 100m memory: 128MiLes defaults sont adaptes par environnement :
| Environnement | CPU request | Memory request |
|---|---|---|
| Production | 100m | 128Mi |
| Staging / Lab / Preview | 10m | 64Mi |
Resources maximales autorisees :
resourcesLimits: cpu: 1000m # 1 vCPU memory: 1024Mi # 1 GB| Propriete | Type | Defaut | Description |
|---|---|---|---|
resourcesRequests.cpu | string | 100m (prod) / 10m (non-prod) | CPU request |
resourcesRequests.memory | string | 128Mi (prod) / 64Mi (non-prod) | Memory request |
resourcesLimits.cpu | string | 500m | CPU limit |
resourcesLimits.memory | string | 512Mi | Memory limit |
VPA (Vertical Pod Autoscaler)
Section intitulée « VPA (Vertical Pod Autoscaler) »Ajuste automatiquement les resources CPU/memory selon l’usage reel.
vpa: enabled: true updateMode: "Off" # Off = recommendations seulement, Auto = applique minReplicas: 2| Propriete | Type | Defaut | Description |
|---|---|---|---|
vpa.enabled | boolean | false | Activer le VPA |
vpa.updateMode | string | Off | Off, Initial, Recreate, Auto |
vpa.minReplicas | integer | 0 | Minimum de replicas |
Le VPA a les bornes suivantes :
- minAllowed : CPU
10m, memory64Mi - maxAllowed : CPU
1, memory1Gi
PVC (Persistent Volume Claims)
Section intitulée « PVC (Persistent Volume Claims) »Pour les applications qui ont besoin de stockage persistant :
pvcs: - name: data diskSize: 10Gi accessMode: ReadWriteOnce
- name: shared diskSize: 5Gi accessMode: ReadWriteMany| Propriete | Type | Defaut | Description |
|---|---|---|---|
name | string | — | Nom du PVC (requis) |
diskSize | string | 10Gi | Taille du disque |
accessMode | string | ReadWriteOnce | ReadWriteOnce, ReadWriteMany, ReadOnlyMany |
Voir aussi : Toutes les proprietes | deployer.yaml