Comment installer Siege sur Ubuntu 24.04, 22.04 ou 20.04

Siege est un puissant outil d'analyse comparative utilisé pour tester les performances et la stabilité des serveurs Web sous charge. Il vous permet de simuler l'accès simultané de plusieurs utilisateurs à votre site Web, fournissant ainsi des informations précieuses sur la manière dont votre serveur gère un trafic élevé. Siege prend en charge les protocoles HTTP/HTTPS de base et peut exécuter GET, POST et d'autres méthodes de requête. Il est largement utilisé pour les tests de résistance, l'optimisation des performances et pour garantir que les applications Web peuvent gérer les charges de pointe.

Pour installer Siege sur Ubuntu 24.04, 22.04 ou 20.04, vous disposez de deux options principales : installer à partir du référentiel par défaut d'Ubuntu à l'aide du terminal de ligne de commande, ou télécharger et installer Siege directement à partir de la source pour la dernière version et des fonctionnalités supplémentaires. Ce guide vous guidera à travers les deux méthodes d'installation.

Mettre à jour Ubuntu avant l'installation de Siege

S'assurer que votre système Ubuntu est à jour avec les derniers packages est crucial pour maintenir un environnement informatique efficace, sécurisé et fiable. Quand nous exécutons la commande sudo apt update, les listes de packages du système sont actualisées.

Voici la commande pour effectuer cela :

sudo apt update && sudo apt upgrade

Sélectionnez la méthode d'installation du siège

Option 1 : installer Siege via le référentiel par défaut Ubuntu

Siege est inclus dans les référentiels par défaut d'Ubuntu en tant qu'outil d'analyse comparative pratique. Cela simplifie considérablement le processus d'installation, nous permettant d'utiliser l'outil de gestion de paquets (APT) intégré à Ubuntu pour effectuer l'installation.

La commande sudo apt install siege déclenche le système APT pour rechercher le package Siege dans les référentiels, gérer les dépendances et installer Siege sur votre système. Le « sudo » au début est nécessaire car il permet d'exécuter la commande avec les privilèges root, requis pour les installations à l'échelle du système.

Pour installer Siege, saisissez la commande suivante :

sudo apt install siege 

Option 2 : Installer Siege sur Ubuntu via la source

Compiler Siege à partir de son code source est optimal pour les personnes qui préfèrent rester à jour avec les dernières fonctionnalités et améliorations. Cette méthode consiste à récupérer le code source le plus récent et à le compiler manuellement, garantissant ainsi que vous disposez de la version la plus à jour de Siege.

Téléchargement de la dernière source de siège

Pour commencer, vous devrez vous procurer le dernier code source. L'équipe Siege fournit un lien cohérent vers la dernière version, simplifiant ainsi ce processus. Cependant, c'est toujours une bonne pratique de s'assurer que le lien reste valide dans le temps.

Pour télécharger le dernier code source, ouvrez votre terminal et exécutez la commande suivante :

wget http://download.joedog.org/siege/siege-latest.tar.gz

Extraire et préparer la source

Une fois le téléchargement terminé, l'extraction du contenu de l'archive est l'étape suivante. Exécutez la commande suivante pour y parvenir :

tar -xvf siege-latest.tar.gz

Cette commande décompressera le code source de Siege dans un répertoire. Accédez à ce répertoire avec :

cd siege-*/

Il convient de noter que le nom exact du répertoire peut varier selon les différentes versions de Siege. Assurez-vous que vous êtes dans le bon répertoire avant de continuer.

Avant de plonger dans le processus de compilation, il est recommandé de installer le paquet zlib, qui facilite la compression et la décompression des données :

sudo apt install zlib1g-dev

Compiler et installer le binaire Siege

Maintenant, vous allez lancer le processus de compilation et d'installation dans le répertoire source de Siege. La séquence de commandes ci-dessous configurera les paramètres de construction, compilera le code source et installera ensuite Siege sur votre système Ubuntu :

./configure --with-zlib
make
sudo make install

Ces commandes configurent les options de construction, compilent le code source et installent Siege sur votre système Debian.

Vérification de l'installation du siège

Après l'installation, il est essentiel de vérifier que Siege a été correctement installé. De plus, la vérification de la version installée peut donner un aperçu de sa compatibilité avec des fonctionnalités ou des plugins spécifiques et vous informer si de futures mises à jour sont nécessaires.

Pour vérifier la version installée de Siege sur votre système, exécutez ce qui suit :

siege --version

Configurer Siege sur Ubuntu

Une configuration correcte de Siege est essentielle pour qu'il fonctionne de manière optimale et exploite pleinement ses capacités. Ce processus implique de modifier le fichier de configuration de Siege .siegerc, qui se trouve dans le répertoire personnel.

Localisation du fichier de configuration de siège

Le fichier siegerc est un atout clé, servant de centre de contrôle pour les opérations de Siege. Il comprend une myriade de paramètres qui dictent le comportement de l'outil. Ces paramètres incluent le nombre d'utilisateurs simulés, le délai entre les requêtes et le niveau de journalisation.

Commençons par explorer le fichier siegerc existant. Vous pouvez y parvenir en exécutant la commande cat :

cat /etc/siege/siegerc

Configurer le fichier de configuration de siège

Vous devrez ouvrir le fichier à l'aide d'un éditeur de texte pour modifier la configuration de Siege afin de l'aligner sur votre cas d'utilisation spécifique. Dans ce guide, nous utiliserons Nano pour sa convivialité et sa simplicité.

La commande ci-dessous permet d'ouvrir le fichier siegerc dans l'éditeur de texte nano :

sudo nano /etc/siege/siegerc

Ce fichier est un trésor d'options configurables, mais nous nous concentrerons sur certains des paramètres les plus couramment utilisés :

  • verbeux : détermine si la sortie détaillée est affichée (vrai) ou non (faux).
  • csv : indique si la sortie doit être au format CSV (vrai) ou non (faux).
  • concurrent : spécifie le nombre d'utilisateurs simulés pour le test de charge.
  • time : Détermine la durée du test de charge.
  • delay : définit le délai entre la demande de chaque utilisateur.
  • Internet : simule le comportement de l'utilisateur en accédant à des URL aléatoires sur un site Web (vrai) ou non (faux).
  • benchmark : permet à Siege de s'exécuter comme un outil de référence (vrai) ou non (faux).

A titre d'exemple, si vous souhaitez mettre en place un scénario dans lequel 25 utilisateurs sont simulés, chaque utilisateur envoie une requête toutes les secondes et le test dure 1 heure, vous modifierez les paramètres pertinents comme suit :

verbose = false
csv = true
concurrent = 25
time = 1H
delay = 1S
internet = false
benchmark = false

Une fois que vous avez effectué les modifications souhaitées, enregistrez et quittez en appuyant sur Ctrl+X, suivi de Y pour confirmer l'enregistrement des modifications, puis appuyez sur Entrée.

Test de charge HTTP avec Siege sur Ubuntu

Maintenant que nous avons installé et configuré Siege, explorons quelques exemples pratiques pour vous donner une idée concrète du fonctionnement de cet outil. Dans ces démonstrations, nous soumettrons votre serveur Web à un test de résistance, simulant un flot de requêtes, contrairement à une attaque DDoS.

Cela peut être très utile pour comprendre comment votre site Web gérerait un trafic important. Cependant, obtenez les autorisations nécessaires et utilisez ces outils de manière responsable. Idéalement, ils ne devraient être utilisés que sur vos serveurs.

Site Web de test de charge BenchMark avec Siege

Tout d'abord, appliquez Siege pour tester un site Web en utilisant le nombre par défaut d'utilisateurs simulés (également appelés « travailleurs »), qui est de 25. Nous définirons également la durée du test de résistance à une minute. Ceci est réalisé en utilisant l'indicateur -t 1m, comme indiqué dans la commande ci-dessous :

siege https://www.example.com -t 1m

Une fois cette commande exécutée, Siege lancera le test de résistance, simulant 25 utilisateurs simultanés envoyant des requêtes à votre site pendant 1 minute. Une fois le test terminé, Siege présentera un rapport détaillé des résultats.

N'oubliez pas qu'il est généralement préférable d'exécuter le test pour obtenir des informations plus significatives et plus précises pendant 5 à 15 minutes. La durée d'une minute était uniquement à des fins de démonstration.

Pour augmenter le nombre de travailleurs, vous pouvez utiliser l'indicateur -c suivi du nombre souhaité. Par exemple, pour simuler 100 travailleurs, utilisez l'option -c 100 :

siege https://www.example.com -c 100 -t 2m

Tests de résistance de plusieurs sites Web avec Siege

Si vous êtes administrateur système ou gérez plusieurs domaines, vous serez heureux de savoir que Siege peut gérer plusieurs sites Web simultanément. Ceci est réalisable grâce à un fichier de configuration /etc/siege/urls.txt, que Siege peut utiliser pour déterminer les sites Web à tester.

Pour configurer ce fichier, ouvrez-le en utilisant nano:

sudo nano /etc/siege/urls.txt

Ensuite, insérez les URL des sites Web que vous souhaitez tester :

https://www.example.com
https://www.example2.com
http://192.168.50.1

Pour enregistrer ces modifications et quitter, appuyez sur Ctrl+O, Entrée, puis Ctrl+X.

Enfin, pour lancer le test de résistance sur les sites Web spécifiés, exécutez la commande suivante :

siege -f /etc/siege/urls.txt

Commandes de siège supplémentaires sur Ubuntu

Le siège ne consiste pas seulement à bombarder vos serveurs de requêtes ; c'est un outil polyvalent qui offre de nombreuses options, vous permettant de personnaliser votre approche de test. Du contrôle du nombre d'utilisateurs simultanés à l'ajustement du délai entre chaque requête, les options de commande de Siege vous permettent de modéliser divers scénarios.

Cette section vous familiarisera avec les commandes de siège supplémentaires qui peuvent vous permettre d'effectuer des tests plus nuancés et granulaires.

Contrôler le délai entre les demandes avec Siege

Avec Siege, vous pouvez introduire un délai entre les demandes de chaque utilisateur pour simuler un comportement utilisateur plus réaliste. Cela garantit que les demandes ne sont pas envoyées en continu sans interruption.

Par exemple, dans la commande ci-dessous :

siege https://www.example.com -c 50 -d 5

Siege est chargé de tester le site Web spécifié avec 50 utilisateurs simultanés, en introduisant un délai de 5 secondes entre la demande de chaque utilisateur.

Personnalisation de la méthode HTTP et des en-têtes avec Siege

Siege vous permet de personnaliser la méthode HTTP et les en-têtes de votre test de résistance. Par exemple, vous souhaiterez peut-être envoyer une requête POST avec des en-têtes personnalisés. L'indicateur -H vous permet de définir des en-têtes personnalisés, tandis que l'option –method vous permet de définir la méthode HTTP. Voici comment utiliser ces options :

siege --method="POST" -H "Content-Type: application/json" https://www.example.com

Dans la commande ci-dessus, nous utilisons la méthode POST et définissons l'en-tête Content-Type sur application/json pour nos requêtes.

Enregistrement des résultats avec Siege

Vous souhaiterez peut-être enregistrer les résultats de vos tests de résistance pour une analyse plus approfondie ou une tenue de registres. Siege peut écrire les résultats des tests dans un fichier journal avec le -l option:

siege -l https://www.example.com

Cette commande indique à Siege d'enregistrer les résultats des tests de résistance. Par défaut, Siege écrit les journaux dans un fichier nommé siege.log dans votre répertoire personnel.

Pensées finales

Avec Siege installé avec succès sur votre système Ubuntu, vous pouvez efficacement comparer et tester vos serveurs Web. Que vous optiez pour la commodité du référentiel par défaut d'Ubuntu ou la flexibilité d'une installation directement à partir de la source, Siege fournit un ensemble d'outils fiables pour garantir que vos applications Web fonctionnent de manière optimale sous charge. Mettez régulièrement à jour Siege pour profiter des nouvelles fonctionnalités et améliorations, et utilisez-le pour maintenir la stabilité et les performances de vos serveurs Web.

Joshua James
Suis-moi
Les derniers articles par Joshua James (tout voir)

Laissez un commentaire