Nous utilisons Prometheus pour surveiller les événements OOM.
Cette expression doit indiquer le nombre de fois où l'utilisation de la mémoire a atteint les limites :
rate(container_memory_failcnt{pod_name!=""}[5m]) > 0
FYI :c'est la meilleure chose à faire après les documents appropriés, le code
Vous pouvez maintenant utiliser kube-state-metrics kube_pod_container_status_terminated_reason
pour détecter les événements OOM
kube_pod_container_status_terminated_reason{reason="OOMKilled"}
kube_pod_container_status_terminated_reason{container="addon-resizer",endpoint="http-metrics",instance="100.125.128.3:8080",job="kube-state-metrics",namespace="monitoring",pod="kube-state-metrics-569ffcff95-t929d",reason="OOMKilled",service="kube-state-metrics"}
Historique des événements pour votre espace de noms particulier, classé par creationTimestamp :
kubectl get events -n YOURNAMESPACE -o wide --sort-by=.metadata.creationTimestamp
Ou si vous souhaitez vérifier l'historique des événements pour tous les espaces de noms, classés par creationTimestamp :
kubectl get events --all-namespaces -o wide --sort-by=.metadata.creationTimestamp