4.4. En plaçant des gousses sur des nœuds surengagés


Dans un état surengagé, la somme du conteneur calcule les demandes et les limites de ressources dépasse les ressources disponibles sur le système. Des engagements excessifs pourraient être souhaitables dans les environnements de développement où un compromis de performance garantie pour la capacité est acceptable.

Les requêtes et les limites permettent aux administrateurs d’autoriser et de gérer l’engagement excessif des ressources sur un nœud. Le planificateur utilise des demandes pour planifier votre conteneur et fournir une garantie de service minimale. Les limites limitent la quantité de ressources de calcul qui peuvent être consommées sur votre nœud.

4.4.1. Comprendre le surengagement

Les requêtes et les limites permettent aux administrateurs d’autoriser et de gérer l’engagement excessif des ressources sur un nœud. Le planificateur utilise des demandes pour planifier votre conteneur et fournir une garantie de service minimale. Les limites limitent la quantité de ressources de calcul qui peuvent être consommées sur votre nœud.

Le service OpenShift Red Hat sur AWS peut contrôler le niveau de surengagement et gérer la densité des conteneurs sur les nœuds en configurant les maîtres pour outrepasser le rapport entre la requête et la limite définie sur les conteneurs développeurs. En conjonction avec un objet LimitRange par projet spécifiant les limites et les valeurs par défaut, cela ajuste la limite de conteneur et demande pour atteindre le niveau souhaité de surengagement.

Note

Ces dépassements n’ont aucun effet si aucune limite n’a été fixée sur les conteneurs. Créez un objet LimitRange avec des limites par défaut, par projet individuel ou dans le modèle de projet, pour s’assurer que les dépassements s’appliquent.

Après ces dépassements, les limites de conteneur et les demandes doivent toujours être validées par tout objet LimitRange dans le projet. Il est possible, par exemple, que les développeurs spécifient une limite proche de la limite minimale, et que la demande soit alors dépassée en dessous de la limite minimale, ce qui rend la pod interdite. Cette expérience utilisateur malheureuse devrait être traitée avec un travail futur, mais pour l’instant, configurez cette capacité et les objets LimitRange avec prudence.

4.4.2. Comprendre les nœuds surengagement

Dans un environnement surengagé, il est important de configurer correctement votre nœud pour fournir le meilleur comportement du système.

Lorsque le nœud démarre, il s’assure que les drapeaux tunables du noyau pour la gestion de la mémoire sont correctement définis. Le noyau ne devrait jamais échouer aux allocations de mémoire à moins qu’il ne soit épuisé de mémoire physique.

Afin d’assurer ce comportement, Red Hat OpenShift Service sur AWS configure le noyau pour toujours surengager la mémoire en définissant le paramètre vm.overcommit_memory sur 1, outrepassant le paramètre système d’exploitation par défaut.

Le service OpenShift Red Hat sur AWS configure également le noyau pour ne pas paniquer lorsqu’il n’est plus en mémoire en définissant le paramètre vm.panic_on_oom à 0. Le paramètre 0 ordonne au noyau d’appeler oom_killer dans une condition hors mémoire (OOM), qui tue les processus en fonction de la priorité.

En exécutant les commandes suivantes sur vos nœuds, vous pouvez afficher le paramètre actuel:

$ sysctl -a |grep commit
Copy to Clipboard Toggle word wrap

Exemple de sortie

#...
vm.overcommit_memory = 0
#...
Copy to Clipboard Toggle word wrap

$ sysctl -a |grep panic
Copy to Clipboard Toggle word wrap

Exemple de sortie

#...
vm.panic_on_oom = 0
#...
Copy to Clipboard Toggle word wrap

Note

Les drapeaux ci-dessus doivent déjà être fixés sur les nœuds, et aucune autre action n’est requise.

Il est également possible d’effectuer les configurations suivantes pour chaque nœud:

  • Désactiver ou appliquer les limites CPU en utilisant les quotas CPU CFS
  • Des ressources de réserve pour les processus du système
  • La mémoire de réserve à travers les niveaux de qualité de service
Retour au début
Red Hat logoGithubredditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance. Découvrez nos récentes mises à jour.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez le Blog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

Theme

© 2025 Red Hat