Comment installer Sysdig sur Debian 11

Sysdig est un outil de surveillance et de dépannage du système à code source ouvert et multiplateforme. Il est utile aux sysadmins expérimentés ainsi qu’à ceux qui font leurs premiers pas dans la ligne de commande Linux. Il peut nous donner une tonne d’informations sur ce qui se passe réellement sur nos serveurs, conteneurs ou ordinateurs de bureau pendant les opérations normales.

Sysdig est livré avec une interface de ligne de commande, mais il dispose aussi d’une interface utilisateur Web pour ceux qui sont plus enclins aux interfaces graphiques.

Sysdig collecte des données système et permet à l’utilisateur de filtrer et de surveiller ces données de plusieurs façons. Tu peux capturer le trafic vers/depuis un conteneur ou une VM, utiliser des filtres pour que le système ne te montre que les événements pertinents, par exemple « si le processus X écoute sur le port Y », et tu peux regrouper les événements dans des représentations graphiques des tendances à long terme.

La plus grande force de Sysdig est sa profondeur de vue. Sysdig peut te dire où se passent toutes tes lectures de disque, combien de paquets chaque conteneur envoie/reçoit, ou si l’un de tes serveurs Web est en panne. Il va même jusqu’à sauvegarder ces informations avec des données binaires pertinentes (si elles ont été enregistrées).

La plupart de notre temps en tant que sysadmins est consacré au dépannage de problèmes difficiles à reproduire ou à identifier. La raison pour laquelle ces problèmes sont si difficiles à déboguer est qu’il n’y a pas assez d’informations sur lesquelles se baser.

Sysdig peut nous donner suffisamment d’informations pour résoudre ces problèmes. Une fois que nous avons ces informations, notre dépannage devient tellement plus facile – on a souvent l’impression d’avoir un super pouvoir.

Sysdig fonctionne sur la plupart des grandes distributions, notamment CentOS, Ubuntu, Debian, Fedora Core, Arch Linux, Gentoo et même OSX. L’installation est assez simple ; elle ne nécessite pas de compiler le code source (youpi !), et il existe même une page GitHub officielle qui contient des instructions d’installation pour chaque distribution que Sysdig prend officiellement en charge.

Pour cet article, nous allons installer Sysdig sur un serveur Debian 11. Le processus est assez simple et ne nécessite pas de connaissances approfondies sur Linux pour commencer.

Conditions préalables

Pour installer sysdig, nous devons avoir :

  • Une connexion ssh à notre serveur distant.
  • Un accès Root ou sudo.

Mise à jour du système

C’est une bonne idée de mettre à jour le système avant de continuer. Nous pouvons le faire en exécutant :

sudo apt-get update && sudo apt-get upgrade -y

Une fois les mises à jour effectuées, exécute les commandes suivantes pour installer les dépendances nécessaires. libc6 est la bibliothèque standard C utilisée par Sysdig pour effectuer la plupart de ses tâches. curl est un outil qui récupère les fichiers à l’aide du protocole HTTP ou HTTPS, et c’est ce que nous utiliserons pour télécharger sysdig. libcurl3 est une dépendance de curl.

sudo apt install libc6 libcurl3 gnupg -y
sudo apt install software-properties-common curl -y

Installer sysdig sur Debian 11

Maintenant que le système est mis à jour, téléchargeons et installons Sysdig. Exécute la commande suivante pour télécharger et installer sysdig.

sudo curl -s https://s3.amazonaws.com/download.draios.com/stable/install-sysdig | sudo bash

Selon les spécifications de ton serveur, cela peut prendre un certain temps. Sois donc patient pendant que le téléchargement et l’installation se terminent.

Exemple de sortie :

Installer Syndig sur Debian 11

Une fois l’installation terminée, nous pouvons vérifier si Sysdig est installé correctement en exécutant la commande ci-dessous.

sysdig --version

Si l’installation a réussi, cette commande renverra les détails de la version de sysdig comme indiqué ci-dessous.

Installer Syndig sur Debian 11

Tu peux aussi vérifier les différentes capacités de sysdig en exécutant la commande suivante.

sysdig -h

Installer Syndig sur Debian 11

Utilisation de Sysdig

Maintenant que nous avons installé Sysdig, passons en revue certaines des commandes de base de Sysdig.

La première chose que nous devons faire est d’exécuter la commande ci-dessous pour commencer à capturer l’activité du système. Nous utilisons la commande sysdig pour surveiller le système. Nous exécutons la commandesysdig avec le préfixe sudo, ce qui est nécessaire car csysdig nécessite un accès root ou sudo pour fonctionner.

sudo csysdig

Exemple de sortie :

Utiliser Sysdig

Lorsque sysdig commence à capturer des événements, il commence à alimenter l’interface en informations. Après avoir exécuté la commande ci-dessus, les données du système sont rafraîchies toutes les deux secondes. Ceci est contrôlé par la variable refresh_rate, qui est réglée par défaut sur 2 secondes. Tu peux l’ajuster en utilisant le fichier de configuration de sysdig.

Dans le résultat ci-dessus, tu verras des colonnes comme PID, Name, CPU et Comm. Ce sont des descriptions de colonnes et tu peux les voir en passant ta souris dessus. La syntaxe des noms de colonnes est [nom du champ]-[descripteur du champ].

Les champs qui nous intéressent le plus sont généralement les suivants :

  • PID – le PID du processus qui a généré l’événement.
  • PPID – le PID du processus parent pour un processus donné.
  • %CPU – la quantité de temps CPU utilisée par un processus.
  • USER – le nom d’utilisateur de l’utilisateur responsable du processus.
  • RES – la quantité de mémoire non échangée qu’un processus utilise.
  • Command – la ligne de commande qui a lancé le processus.

Bien sûr, il y a plein d’autres colonnes que tu peux utiliser pour creuser plus profondément dans l’activité du système. Et Sysdig peut être personnalisé pour répondre à tes besoins.

Comme les données du système se rafraîchissent continuellement, il peut être difficile de comprendre ce qui se passe. Nous pouvons empêcher sysdig de fonctionner en appuyant sur CTRL + C. Une fois que l’interface est effacée, nous pouvons exécuter une commande sysdig avec des options et des filtres pour obtenir les données que nous voulons.

La systax est sysdig [options] [filtres].

Le mécanisme de filtrage de Sysdig est très puissant et peut être utilisé pour trouver exactement ce que tu cherches. Les filtres, similaires à tcpdump, consistent en une chaîne d’une ou plusieurs expressions primitives reliées par des conjonctions (‘et’, ‘ou’) et éventuellement terminées par une disjonction (‘pas’). Pour montrer tous les filtres que nous pouvons utiliser avec sysdig, exécute la commande suivante.

sysdig -l

Tu obtiendras une liste contenant un grand nombre de filtres avec une brève description de chacun d’entre eux, comme indiqué ci-dessous.

Utiliser Sysdig

Comme il est impossible de tous les couvrir, nous allons couvrir certains filtres couramment utilisés.

Nous allons commencer par le filtre – proc.name= qui nous permet de filtrer pour des noms de processus spécifiques.

Par exemple, pour rechercher tous les événements pour le nom de processus « nano », nous pouvons exécuter la commande suivante.

sudo sysdig proc.name=nano

Exemple de sortie :

Utiliser Sysdig

Tu peux aussi utiliser des opérateurs comme « ou » et « et » pour obtenir des données plus spécifiques. Par exemple, tu peux obtenir tous les événements pour « nano » ou « vi ».

sudo sysdig proc.name=cat or proc.name=vi

Utiliser Sysdig

Exécute la commande ci-dessous pour voir les événements liés au réseau. Tu peux voir les ports auxquels tu es connecté, les adresses MAC et bien d’autres choses en temps réel.

sudo sysdig -c netstat 

Exemple de sortie :

Utiliser Sysdig

Exécute la commande ci-dessous pour obtenir les processus qui consomment le plus de CPU.

sudo sysdig -c topprocs_cpu

Exemple de sortie :

Utiliser Sysdig

Pour capturer l’activité du système et l’enregistrer pour une analyse ultérieure, utilise l’option -w, suivie d’un nom de fichier. Dans l’exemple ci-dessous, nous capturons toute la sortie de sysdig dans un fichier nommé « sysdig-output.scap ».

sudo sysdig -w sysdig-output.scap

Cette commande indique à sysdig de sortir les données en continu jusqu’à ce qu’il soit arrêté en appuyant sur CTRL+C. Avec le temps, la taille du fichier va augmenter. Tu peux utiliser l’option-C pour capturer l’activité du système dans un fichier d’une taille maximale d’un nombre de Mo spécifié.

Par exemple, la commande ci-dessous créera un nouveau fichier tous les 1 Mo et y stockera l’activité du système.

sudo sysdig -C 1 -w sysdig-output.scap

Exécute la commande ls -l pour voir le fichier nouvellement créé avec le nom « sysdig-output.scap » comme indiqué ci-dessous.

ls -l

La sortie est la suivante :

Utiliser Sysdig

Conclusion

Sysdig possède un grand nombre de fonctionnalités et peut être utilisé comme un excellent outil de dépannage et d’analyse des performances. Et comme il s’agit d’un logiciel libre, tu peux aussi étendre ses fonctionnalités grâce à des ciseaux pour répondre à tes besoins.

Dans cet article, nous avons abordé certaines des commandes de base pour commencer à utiliser sysdig. Pour en savoir plus sur sysdig et ses cas d’utilisation, consulte sa page de documentation.

Vous aimerez aussi...