17.9. Utilisation de la commande systemctl pour fixer des limites aux applications
Les paramètres d'affinité de l'unité centrale permettent de limiter l'accès d'un processus particulier à certaines unités centrales. En effet, le planificateur de CPU ne planifie jamais l'exécution d'un processus sur une unité centrale qui ne figure pas dans le masque d'affinité du processus.
Le masque d'affinité CPU par défaut s'applique à tous les services gérés par systemd
.
Pour configurer le masque d'affinité CPU pour un service particulier systemd
, systemd
propose CPUAffinity=
à la fois comme option de fichier d'unité et comme option de configuration de gestionnaire dans le fichier /etc/systemd/system.conf
.
L'option CPUAffinity=
unit file option définit une liste d'unités centrales ou de plages d'unités centrales qui sont fusionnées et utilisées comme masque d'affinité.
Après avoir configuré le masque d'affinité CPU pour un service systemd
particulier, vous devez redémarrer le service pour appliquer les modifications.
Procédure
Pour définir le masque d'affinité CPU pour un service systemd
particulier en utilisant l'option CPUAffinity
unit file option :
Vérifiez les valeurs de l'option de fichier de l'unité
CPUAffinity
dans le service de votre choix :systemctl show --property <CPU affinity configuration option> <service name>
En tant que root, définissez la valeur requise de l'option
CPUAffinity
unit file pour les plages de CPU utilisées comme masque d'affinité :# systemctl set-property <service name> CPUAffinity=<value>
Redémarrez le service pour appliquer les modifications.
# systemctl restart <service name>
Vous pouvez consulter l'ensemble des options de configuration pour systemd
dans les pages suivantes du manuel :
-
systemd.resource-control(5)
-
systemd.exec(5)