Comment utiliser Linux pour limiter et contrôler les ressources système
Dans les systèmes Linux, nous devons souvent limiter et contrôler les ressources système pour garantir la stabilité et la sécurité du système. Cet article explique comment utiliser le mécanisme de contrôle des ressources intégré à Linux pour limiter et contrôler l'utilisation des ressources système. Nous nous concentrerons sur deux outils couramment utilisés, cgroup (groupe de contrôle) et ulimit, ainsi que sur leurs exemples d'utilisation.
1. cgroup
cgroup est un mécanisme de gestion des ressources fourni par le noyau Linux, grâce à lui, nous pouvons organiser les processus ensemble et limiter et contrôler les ressources de ces groupes de processus. Les groupes de contrôle peuvent contrôler et limiter l'utilisation des ressources système telles que le processeur, la mémoire et les E/S.
Tout d'abord, nous devons installer l'outil cgroup. Sur la plupart des distributions Linux, il peut être installé à l'aide de la commande suivante :
sudo apt-get install cgroup-tools
Nous pouvons utiliser la commande cgcreate pour créer un groupe de contrôle, par exemple, créer un groupe de contrôle nommé mongroupe :
sudo cgcreate -g cpu,memory:mygroup
La commande ci-dessus crée Un groupe de contrôle nommé mygroup avec des contraintes de CPU et de mémoire.
Ensuite, nous devons définir les limites des ressources du groupe de contrôle. Par exemple, nous limitons le CPU pour qu'il utilise un maximum de 50 % de la tranche de temps et limitons la mémoire pour qu'il utilise un maximum de 1 Go de mémoire :
sudo cgset -r cpu.cfs_quota_us=50000 -r memory.limit_in_bytes=1G mygroup
La commande ci-dessus limite le CPU de mon groupe pour qu'il utilise un maximum de 50 % de la tranche de temps. la tranche de temps et limiter la mémoire à Utiliser jusqu'à 1 Go de mémoire.
Enfin, nous pouvons utiliser la commande cgclassify pour ajouter le processus au groupe de contrôle spécifié. Par exemple, ajoutez le processus avec le processus PID 12345 à mon groupe :
sudo cgclassify -g cpu,memory:mygroup 12345
Désormais, le processus avec le processus PID 12345 sera soumis aux limites de ressources de mon groupe.
2. ulimit
En plus de cgroup, Linux fournit également un autre puissant outil de contrôle des ressources, ulimit. ulimit nous permet de limiter les ressources système qu'un seul utilisateur peut utiliser.
Nous pouvons utiliser la commande ulimit pour afficher les paramètres actuels de limite de ressources. Par exemple, affichez la limite de taille de fichier maximale que l'utilisateur actuel peut utiliser :
ulimit -f
Nous pouvons utiliser la commande ulimit pour définir les limites de ressources. Par exemple, pour définir la limite maximale de taille de fichier à 1 Go :
ulimit -f 1000000000
La commande ci-dessus définit la limite maximale de taille de fichier à 1 Go.
De plus, nous pouvons également utiliser la commande ulimit pour définir d'autres limites de ressources, telles que le temps CPU, la mémoire, le nombre de fichiers ouverts, etc.
Les limites de ressources définies via la commande ulimit ne sont valables que pour la session en cours. Une fois la session terminée, les paramètres seront invalides. Si nous souhaitons modifier définitivement les limites de ressources, nous pouvons modifier le fichier de configuration système /etc/security/limits.conf.
Par exemple, si vous souhaitez modifier le nombre maximum de fichiers ouverts à 10 000, vous pouvez ajouter la configuration suivante à /etc/security/limits.conf :
* hard nofile 10000
La configuration ci-dessus modifiera le nombre maximum de fichiers ouverts à 10 000.
Conclusion
Cet article explique comment utiliser Linux pour la limitation et le contrôle des ressources système. Nous nous sommes concentrés sur deux outils couramment utilisés, cgroup et ulimit, et avons donné des exemples d'utilisation correspondants. En utilisant ces outils de manière rationnelle, nous pouvons contrôler efficacement l'utilisation des ressources du système et garantir la stabilité et la sécurité du système. J'espère que cet article sera utile aux lecteurs qui utilisent Linux pour limiter et contrôler les ressources système.
Références :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!