Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
loadaverage [Le 22/08/2007, 00:50]
91.68.36.16
loadaverage [Le 11/09/2022, 12:04] (Version actuelle)
moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 1: Ligne 1:
-{{tag>warty hoary breezy dapper edgy systeme ​serveur administration}}+{{tag>système ​serveur administration ​VÉTUSTE}}
  
 ---- ----
  
 ====== Loadaverage : La charge d'une machine sous Ubuntu... ====== ====== Loadaverage : La charge d'une machine sous Ubuntu... ======
 +
 +<note warning>​FIXME Cette page n'a pas été vérifiée pour les dernières versions supportées d'​ubuntu. Si vous pouvez valider ces informations ou les compléter, merci d'​éditer cette page et de rajouter le tag de la version d'​ubuntu sur laquelle cela fonctionne.</​note>​
  
 ===== Introduction ===== ===== Introduction =====
Ligne 26: Ligne 28:
 Est-ce que cela signifie pour autant que votre serveur est chargé à 0,3% ??? Est-ce que cela signifie pour autant que votre serveur est chargé à 0,3% ???
  
-Le taux d'​usage du CPU donne une information extrêmement volatile; notre petit utilitaire ''​top''​ se rafraîchit toutes les deux secondes... or, le taux d'​usage du CPU change quasi toute les milli-secondes.+Le taux d'​usage du CPU donne une information extrêmement volatile ; notre petit utilitaire ''​top''​ se rafraîchit toutes les deux secondes... or, le taux d'​usage du CPU change quasi toutes ​les milli-secondes.
  
 Pour moi, c'est une bonne indication pour déterminer si un processus consomme du CPU de manière inattendue mais pas assez pour évaluer la charge d'une machine. Pour moi, c'est une bonne indication pour déterminer si un processus consomme du CPU de manière inattendue mais pas assez pour évaluer la charge d'une machine.
Ligne 68: Ligne 70:
 Pour moi, la mémoire swap utilisée m'​indique surtout un manque de mémoire vive ; rien de plus. Pour moi, la mémoire swap utilisée m'​indique surtout un manque de mémoire vive ; rien de plus.
  
-===== Les "load average" ​=====+===== Les "load average"​ ====
  
-Après avoir passé en revue les quelques indicateurs de l'​introduction,​ qui ont leurs avantages et leurs inconvénients ; je vais vous parler des **load average**.+Après avoir passé en revue les quelques indicateurs de l'​introduction,​ qui ont leurs avantages et leurs inconvénients ; je vais vous parler des **load average**, disponible avec l'​utilitaire **uptime**.
  
-Les **load average** existent depuis longtemps sur les systèmes Unix et Linux a hérité de cette notion. Vous trouverez cette information de plusieurs manières (locales ou distantes) et est généralement représentée comme 3 nombres ​à 2 décimales.+Les **load average** existent depuis longtemps sur les systèmes Unix et Linux a hérité de cette notion. Vous trouverez cette information de plusieurs manières (locales ou distantes) et est généralement représentée comme 3 chiffres ​à 2 décimales.
  
 <​code>​ <​code>​
Ligne 78: Ligne 80:
 </​code>​ </​code>​
  
 +<​code>​
 +load average: 0.26, 0.28, 0.35, 0.46
 +</​code>​
  
  
-==== Que représente les "load average"​ ? ==== 
  
-Les **load average** représente le nombre moyen de processus dans la file d'​attente des processus //ready for running// pour, respectivement,​ la dernière minute, les 5 dernières minutes et les 15 dernières minutes.+==== Que représentent les "load average" ? ====
  
-Donc, en clair, si vous avez un ''​1.00''​ dans le deuxième ​nombre, cela signifie que //durant ​les 5 dernières minutes, il y avait 1 processus prêt à être exécutés (c'​est-à-dire que les I/O sont satisfaits, qu'il a toutes ses ressources,​...) mais qui est en attente//.+Les **load average** représentent ​le nombre ​moyen de processus dans la file d'​attente des processus ​//ready for running// pour, respectivement,​ la dernière minute, ​les 5 dernières minutes ​et les 15 dernières minutes.
  
 +Donc, en clair, si vous avez un ''​1.00''​ dans le deuxième nombre, cela signifie que //durant les 5 dernières minutes, il y avait 1 processus prêt à être exécuté (c'​est-à-dire que les I/O sont satisfaits, qu'il a toutes ses ressources...) mais qui est en attente//.
  
 +FIXME: Dans le kernel linux, le load-average contient également les processus en attente d'I/O, ce n'est pas uniquement la charge processeur (
 +https://​www.brendangregg.com/​blog/​2017-08-08/​linux-load-averages.html
 +)
 ==== On peut voir ça comme une usine... ==== ==== On peut voir ça comme une usine... ====
  
-L'​usine (qui fait le travail) est le serveur.  +L'​usine (qui fait le travail) est le serveur. 
-La matière première est en entrée de cette usine (les processus en attente). ​+La matière première est en entrée de cette usine (les processus en attente).
 Les produits finis sont en sortie de l'​usine (les processus terminés). Les produits finis sont en sortie de l'​usine (les processus terminés).
  
Ligne 109: Ligne 117:
 Maintenant que je vous ai vanté les mérites des load averages, vous allez vous empressez de faire un ''​uptime''​ et d'​observer les trois chiffres indicateurs en vous demandant si ces chiffres sont bons ou mauvais. Maintenant que je vous ai vanté les mérites des load averages, vous allez vous empressez de faire un ''​uptime''​ et d'​observer les trois chiffres indicateurs en vous demandant si ces chiffres sont bons ou mauvais.
  
-La bonne valeur de load average n'​existe pas. Tout dépends ​de votre environnement de travail et des tâches assignées au serveur.+La bonne valeur de load average n'​existe pas. Tout dépend ​de votre environnement de travail et des tâches assignées au serveur.
  
 Dans mon parc, j'ai un serveur de mail qui ne dépasse jamais les ''​0.20''​. J'ai un serveur de production qui oscille entre ''​0.20''​ et ''​1.50''​ et j'ai un serveur de centralisation de sauvegardes et de mise sur bandes qui oscille entre ''​6.00''​ et ''​8.30''​ lors de la mise sur bande et qui est à ''​0.00''​ en heures creuses. Dans mon parc, j'ai un serveur de mail qui ne dépasse jamais les ''​0.20''​. J'ai un serveur de production qui oscille entre ''​0.20''​ et ''​1.50''​ et j'ai un serveur de centralisation de sauvegardes et de mise sur bandes qui oscille entre ''​6.00''​ et ''​8.30''​ lors de la mise sur bande et qui est à ''​0.00''​ en heures creuses.
Ligne 115: Ligne 123:
 **En fait, tout est relatif !** **En fait, tout est relatif !**
  
-Que les tâches soient un peu plus lentes sur le serveur de centralisation des sauvegarde m'​importe peu. Par contre, je ne veux pas que la production ​deviennent ​insupportable pour les clients.+Que les tâches soient un peu plus lentes sur le serveur de centralisation des sauvegarde m'​importe peu. Par contre, je ne veux pas que la production ​devienne ​insupportable pour les clients
 + 
 +En règle générale (d'​après la littérature et quelques expériences personnelles),​ un taux supérieur à ''​3.00''​ est un assez mauvais signe. Quand le taux de load average atteint trois sur le serveur de production, on attend plusieurs secondes avant d'​obtenir la console en SSH (pour vous donner une petite idée).
  
-En règle générale (d'​après la littérature et quelques expériences personnelles),​ un taux supérieur à ''​3.00''​ est un assez mauvais signe. Quand le taux de load average atteint trois sur le serveur de production, on attends plusieurs secondes avant d'​obtenir la console en SSH (pour vous donner une petite idée). 
  
 ===== Comment obtenir les load average ? ===== ===== Comment obtenir les load average ? =====
  
-Il y a deux manières essentielles pour obtenir les load averages; soit localement sur la machine; soit de manière distante à des fins de supervisions.+Il y a deux manières essentielles pour obtenir les load averages ; soit localement sur la machine ; soit de manière distante à des fins de supervisions. 
  
 ==== Localement ==== ==== Localement ====
  
-Pour obtenir les informations de load average localement; vous pouvez utiliser les programmes suivants :+Pour obtenir les informations de load average localement ; vous pouvez utiliser les programmes suivants : 
 + 
 +  * ''​[[indicator-applications|indicator-applications]]''​ : Graphiquement dans la barre de notification : 
 +Pour se faire il suffit d'​installer le paquet Indicator-multiload 
 + 
 +--- //​[[:​utilisateurs:​ratm54|ratm54]] Le 28/05/2015, 20:57// la partie suivante, relative à systray-whitelist ​ est dépreciée depuis ubuntu 14.04 
 +ensuite pour unity exécuter en ligne de commande : 
 + <​code>​ 
 +  gsettings set com.canonical.Unity.Panel systray-whitelist "​['​all'​]"​ 
 +</​code>​ 
  
-  * ''​top''​ : un classique...+  * ''​[[tutoriel:​console_commandes_de_base#​top|top]]''​ : un classique...
  
 <​code>​ <​code>​
Ligne 138: Ligne 158:
   PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND   PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 32750 root      15   ​0 ​    ​0 ​   0    0 S  2.0  0.0   ​8:​21.60 drbd1_receiver 32750 root      15   ​0 ​    ​0 ​   0    0 S  2.0  0.0   ​8:​21.60 drbd1_receiver
-    1 root      ​16   0  ​1560  528  460 S  0.0  0.1   ​0:​02.58 init+    1 root      ​00   0  ​0000  000  000 S  0.0  0.1   ​0:​02.58 init
     2 root      RT   ​0 ​    ​0 ​   0    0 S  0.0  0.0   ​0:​00.04 migration/0     2 root      RT   ​0 ​    ​0 ​   0    0 S  0.0  0.0   ​0:​00.04 migration/0
 [...] [...]
 </​code>​ </​code>​
  
-  * ''​uptime''​ : la version "​light"​...+  * ''​[[tutoriel:​console_commandes_de_base#​uptime|uptime]]''​ : la version "​light"​...
  
 <​code>​ <​code>​
Ligne 149: Ligne 169:
 </​code>​ </​code>​
  
-  * ''​cat /​proc/​loadavg''​ : la version parfaite pour les scripts...+  * ''​[[tutoriel:​console_commandes_de_base#​cat|cat]] ​/​proc/​loadavg''​ : la version parfaite pour les scripts...
 <​code>​ <​code>​
 0.05 0.04 0.00 1/67 32139 0.05 0.04 0.00 1/67 32139
 </​code>​ </​code>​
  
 +\\
 +Sinon il est possible d'​ajouter dans la barre supérieur (droite) de unity le programme indicator-multiload :
 +<​code>​
 +  sudo apt-get install indicator-multiload
 +</​code>​
  
 +puis relancer la session (ou dans une console lancer la commande indicator-multiload &)
 +Ce programme permet de visualiser directement différents paramètres issus de l'​application "​moniteur système"​.
 +
 +Pour le paramétrage cliquer droit sur l’icône et sélectionner préférences. Dans l'​écran sélectionner la case à cocher "​charge"​ qui de loin est l'​indicateur le plus pertinent. Basiquement un load supérieur aux nombres de processeurs indique un système chargé.
 ==== A distance ==== ==== A distance ====
  
Ligne 160: Ligne 189:
  
 === Installation sur les serveurs à superviser === === Installation sur les serveurs à superviser ===
- +<note important>​Dans la version 12.04 d'​Ubuntu,​ il n'est plus necessaire de créer un script init. 
-Pour installer ''​rstatd''​ sur les serveurs à superviser, il vous suffit de suivre la procédures suivantes ​:+En effet, l'​installation du paquet "​rstatd"​ va automatiquement installer et configurer le démon inetd.</​note>​ 
 +Pour installer ''​rstatd''​ sur les serveurs à superviser, il vous suffit de suivre la procédure suivante ​:
   * Activez les [[:​depots|dépôts]] //​Universe//​.   * Activez les [[:​depots|dépôts]] //​Universe//​.
   * Installer le paquet ''​rstatd''​ (avec ''​sudo apt-get install rstatd''​).   * Installer le paquet ''​rstatd''​ (avec ''​sudo apt-get install rstatd''​).
Ligne 171: Ligne 201:
 </​code>​ </​code>​
   * Activez ce script comme exécutable (''​sudo chmod +x /​etc/​init.d/​rstatd''​).   * Activez ce script comme exécutable (''​sudo chmod +x /​etc/​init.d/​rstatd''​).
-  * Liez le script avec les niveaux de démarrages ​:+  * Liez le script avec les niveaux de démarrage ​:
 <​code>​ <​code>​
-sudo ln -s /etc/init.d/rstatd ​/​etc/​rc2.d/​S20rstatd +update-rc.d rstatd ​defaults
-sudo ln -s /​etc/​init.d/​rstatd /​etc/​rc3.d/​S20rstatd +
-sudo ln -s /​etc/​init.d/​rstatd /​etc/​rc4.d/​S20rstatd +
-sudo ln -s /​etc/​init.d/​rstatd /​etc/​rc5.d/​S20rstatd+
 </​code>​ </​code>​
   * Lancez le démon ''​rstatd''​ (''​sudo /​etc/​init.d/​rstatd''​).   * Lancez le démon ''​rstatd''​ (''​sudo /​etc/​init.d/​rstatd''​).
Ligne 191: Ligne 218:
   * ''​rsysinfo''​ : qui permet d'​obtenir diverses informations systèmes en plus du ''​uptime''​.   * ''​rsysinfo''​ : qui permet d'​obtenir diverses informations systèmes en plus du ''​uptime''​.
  
-En introduisant uniquement ''​rup''​ dans une console, vous envoyez une requête broadcast sur votre réseau vous permettant d'​obtenir ​tout les load average des serveurs possèdant ''​rstatd''​ :+En introduisant uniquement ''​rup''​ dans une console, vous envoyez une requête broadcast sur votre réseau vous permettant d'​obtenir ​tous les load average des serveurs possèdant ''​rstatd''​ :
  
 <​code>​ <​code>​
  • loadaverage.1187736635.txt.gz
  • Dernière modification: Le 22/08/2007, 00:51
  • (modification externe)