Monitoring d’interface réseau en temps réel sur Linux avec IFTOP

Je cherchais à voir quels process consommaient le plus de bande passante sur un serveur Linux, et j’ai découvert iftop. Une fois installé (avec APT ou YUM, dans vos repository habituels), il suffit de lancer la commande suivante pour avoir le monitoring de vos interfaces réseaux :

1
ikki:~# iftop

Le résultat est présenté sous la forme d’une interface semi-graphique type Minitel. Un ensemble de raccourcis sont disponibles :

  • h : afficher l’aide
  • t : regrouper les lignes par destinataires
  • s : regrouper les lignes par sources
  • p : afficher les ports
  • P : pause du rafraichissement
  • 1/2/3 : trier par la colonne, 1, 2, ou 3.
Monitoring d'interface réseau en temps réel sur Linux avec iftop

Monitoring d’interface réseau en temps réel avec iftop

Note: il est possible de lancer iftop avec des paramètres, par exemple pour filtrer seulement sur certains réseaux, ports, ou pour spécifier une interface.

Si vous voulez plus d’informations, direction la man page ! ;)

Glances, un monitoring en mode texte pour Linux

Glances est un outil qui permet de surveiller une machine linux et d’afficher le résultat en mode texte : il s’agit d’un monitoring en temps réel (sans historisation). Développé en Python par Nicolargo, Glances est un logiciel libre (licence GPL) qui s’affichera en mode texte à partir d’une console ou d’un terminal : très pratique pour afficher sur les consoles de vos serveurs par exemple !

Au menu : surveillance du CPU, de la mémoire, de la charge système (load), de l’espace disque, des I/O disques, de la bande passante utilisée, et de vos processus. Quatres états différents sont possibles : OK (en vert), CAREFUL (en bleu), WARNING (en violet), CRITICAL (en rouge).

Monitoring Linux avec Glances

Monitoring Linux avec Glances

Si vous êtes intéressé, je vous invite à aller sur le GitHUB ou sur le blog de Nicolargo pour en apprendre plus et voir comment il s’installe. :)

Télécharger Glances.

Quelques gadgets Windows 7 pour surveiller votre système

[confession]J’utilise Windows 7 sur un des mes postes et je n’en ai pas honte ![/confession]

Je m’y suis mis essentiellement pour raisons professionnelles, puis j’ai appris à le connaître : de base, ce n’est pas un si mauvais système d’exploitation, c’est juste qu’il n’est pas très optimisé et que beaucoup de choses inutiles sont activées par défaut.

Sans rentrer dans les détails, j’ai aussi ajouté quelques gadgets qui me permettent de surveiller mon système (un peu comme Conky sur Linux) : CPU, RAM, consommation réseau, capacité disque, etc.

Pour votre processeur et votre mémoire, All CPU Meter : pratique, il affiche la consommation de chaque coeur du processeur.

Windows 7 gadget : monitoring CPU

Monitoring CPU et Ram

Pour surveiller la consommation réseau, Network Meter : un must ! Il est capable d’afficher les informations sans-fil d’une connexion Wifi (SSID, etc.), la consommation (download/upload), mais également son adresse IP externe.

Gadget Windows 7 : surveillance de la consommation réseau

Surveillance de la consommation réseau

Pour surveiller l’espace disque, Drives Meter : il permet d’afficher non seulement l’espace utilisé/libre, mais également les accès disques (bande passante).

Gadget Windows 7 : surveillance de la consommation disque

Surveillance de la consommation et de l'espace disque

Pour surveiller sa batterie, Battery Meter : uniquement pour les portables. ;)

Gadget Windows 7 : surveiller sa batterie

Surveiller sa batterie

Moins courant, il est également possible d’afficher les performances en temps réel de son GPU (processeur de la carte graphique) avec GPU Meter.

Gadget Windows 7 : performances du GPU de la carte graphique

Performances du GPU de la carte graphique

Enfin, complètement inutile, le monitoring de vos déplacements de souris.

Gadget Windows 7 : monitorez vos déplacements de souris

Monitorez vos déplacements de souris

Note : ça existe aussi pour le clavier.

Pour ceux qui veulent en trouver d’autres, il y a l’embarras du choix sur My Favorites Gadgets.

Surveillez vos serveurs Memcached

Après un court article d’introduction sur Memcached, je reviens sur son monitoring. :)

Pour rappel :

Memcached est un système de cache d’objets distribué et non répliqué. Il va stocker des objets en RAM, pour diminuer les temps de réponses des applications.

Chaque serveur Memcached démarre avec une certaine quantité de mémoire allouée. Comme le système est de type LRU (Least Recently Used), ce sont les données les plus anciennes qui seront supprimées une fois la limite de la mémoire atteinte. Et inversement, il n’est pas non plus judicieux d’allouer trop de RAM car la perte d’une instance Memcached entrainerait la perte des données stockées (si elle n’est pas protégée/répliquée).

Pour surveiller les serveurs Memcached, on peut jouer avec beaucoup d’outils / de scripts (templates Cacti, Nagios, etc.), mais il existe une solution dédiée au monitoring  et au debugging de Memcached : phpmemcacheadmin.

Logo phpmemcacheadmin

Se présentant sous la forme de quelques fichiers PHP à déposer sur un serveur Web, on peut y ajouter et monitorer autant de serveurs Memcached que l’on souhaite.

On y retrouvera un tableau de bord avec divers statistiques :

  • mémoire utilisée pour le cache,
  • nombre de requêtes,
  • nombre et taux de hits (données présentes en cache, environ 75% dans mon cas),
  • trafic réseau,
  • etc.

Consultation des statistiques de vos serveurs Memcached via le Dashboard de phpmemcacheadmin

Il est également possible de consulter des statistiques « live » par serveur surveillé.

Statistiques live de Memcached via phpmemcacheadmin

Consultation "live" des statistiques

Enfin, il est possible de consulter les valeurs stockées via la page « Execute commands on Servers », et d’interagir avec : insertion, suppression, flush des données, etc.

Exécution de commandes via phpmemcacheadmin

Exécution de commandes via phpmemcacheadmin

Très bon complément de votre système de monitoring global, phpmemcacheadmin permet une vue plus complète de vos serveurs Memcached, pour une installation simplissime.

Partager vos rapports avec Pingdom

Pingdom est un service en ligne qui  permet de surveiller un site, ou une application via des tests réguliers, j’en avais parlé au mois de septembre. Depuis quelques jours, il est possible de partager un tout nouveau rapport en ligne, très réussi !

Il faut activer le rapport public dans les paramètres de votre compte, ça donnera ceci :

Pingdom : présentation d'un rapport public

Pingdom : présentation d'un rapport public

Une vue annuelle, qui permet de voir l’uptime et le temps de réponse moyen.

Pingdom : uptime mensuel

Pingdom : uptime mensuel

Également très sympa, une vue mensuelle qui colore en rouge les moments où le service n’était pas disponible.

Pingdom : disponibilité d'un site pour un mois donné

Pingdom : disponibilité d'un site pour un mois donné

Concept très intéressant pour ceux qui sortent un service en ligne et qui veulent communiquer sur leur disponibilité : en quelques clics, il est possible d’avoir des rapports très fournis et user-friendly.

Source : Pingdom Blog.

Comment Facebook gère quotidiennement son infrastructure

Facebook est une vraie machine de guerre : on a pu voir récemment que c’était le site le plus visité au monde, et tout ça seulement après quelques années. Contrairement à d’autres « supergrands » (Google, Microsoft, Apple, Youtube, etc.) un certain nombre d’informations filtrent lors de conférences, et dans des documents officiels.

Logo Facebook

Je rappelle que pour écrire ces 2 articles, j’ai simplement visionné des vidéos de conférences pour compiler les informations. Vu la masse de détails obtenus, j’ai publié deux articles :

En extrapolant plusieurs données (graphiques d’évolution, chiffres passés, etc.) on estime entre 60 000 et 100 000 le nombre de serveurs de Facebook .

Facebook : évolution du nombre de serveurs

Facebook : évolution du nombre de serveurs

Cependant, ce chiffre ne tient pas compte de deux nouveaux datacenters actuellement en cours construction (Oregon et Caroline du Nord).

Facebook a depuis longtemps atteint une masse critique qui nécessite de voir sa copie en terme d’administration quotidienne.

Un des ingénieurs de Facebook a bien illustré le problème lors d’une conférence :

With Facebook users spending a collective 8 billion minutes on the site each day, serving 1.2 million photos each second, and managing more than 25 terabytes of data per day in logging data, we’re forced to think about servers and datacenters differently.

Nb : les chiffres sont de 2009, les actuels sont présents dans mon article précédent.

(suite…)