Optimiser les limites CPU CFS quota sur Kubernetes

penelope63 01/05/2026
RÉSOLU
penelope63
Auteur Actif
Avatar de penelope63
penelope63
Auteur Actif

Salut à tous. Je constate des throttlings CPU massifs sur mes pods Java alors que l'utilisation CPU réelle ne dépasse jamais 60% de la limite définie. J'utilise limits.cpu et requests.cpu identiques. Quelqu'un a déjà réussi à tuner le cfs_quota_us pour éviter ce comportement erratique du CFS scheduler ?

01/05/2026 à 01:16

10 commentaires

xroy
Membre
Avatar de xroy
xroy
Membre

C'est un problème classique. Le CFS scheduler est très agressif. As-tu vérifié la valeur de cfs_period_us ? Par défaut elle est à 100ms.

01/05/2026 à 23:11
penelope63
Auteur Actif
Avatar de penelope63
penelope63
Auteur Actif

Oui, elle est par défaut. Tu penses que passer à 1s pourrait aider les applications multithreadées ?

02/05/2026 à 17:46
marchal-auguste
Membre Actif Secouriste
Avatar de marchal-auguste
marchal-auguste
Membre Actif Secouriste

Attention à ne pas augmenter trop violemment la période, tu risques d'augmenter la latence de queue. Regarde plutôt du côté de cpu.cfs_quota_us via un sidecar ou un init container pour ajuster dynamiquement.

03/05/2026 à 06:59
xroy
Membre
Avatar de xroy
xroy
Membre

Je conseille de tester --cpu-cfs-quota=false si tu es sur une version de kubelet qui le supporte bien, mais c'est à ne jamais faire en prod sans isoler les namespaces.

03/05/2026 à 23:48
penelope63
Auteur Actif
Avatar de penelope63
penelope63
Auteur Actif

J'ai essayé de désactiver les quotas sur un node de dev, c'est le jour et la nuit niveau latence applicative.

04/05/2026 à 23:44
veronique28
Membre Actif
Avatar de veronique28
veronique28
Membre Actif

Le problème vient souvent du fait que les JVM créent beaucoup de threads légers. Le kernel voit une consommation "bursty" et coupe le quota.

05/05/2026 à 14:15
marchal-auguste
Membre Actif Secouriste
Avatar de marchal-auguste
marchal-auguste
Membre Actif Secouriste

As-tu regardé les métriques container_cpu_cfs_throttled_seconds_total ?

06/05/2026 à 07:13
penelope63
Auteur Actif
Avatar de penelope63
penelope63
Auteur Actif

Oui, elles explosent alors que le CPU total est bas.

07/05/2026 à 03:21
xroy
Membre
Avatar de xroy
xroy
Membre

Utilise cgroups v2 si tu es sur une distrib moderne, la gestion du throttling est bien meilleure.

07/05/2026 à 15:40
penelope63
Auteur Actif
Avatar de penelope63
penelope63
Auteur Actif

Je vais migrer les nodes vers cgroups v2 la semaine prochaine, merci pour le tuyau.

08/05/2026 à 03:43

Laisser une réponse

Vous devez être connecté pour poster un message !

Rejoindre la communauté

Recevoir les derniers articles gratuitement en créant un compte !

S'inscrire