Hoe Siege te installeren op Ubuntu 24.04, 22.04 of 20.04

Siege is een krachtige benchmarktool die wordt gebruikt om de prestaties en stabiliteit van webservers onder belasting te testen. Hiermee kunt u simuleren dat meerdere gebruikers tegelijkertijd toegang hebben tot uw website, waardoor u waardevolle inzichten krijgt in de manier waarop uw server met veel verkeer omgaat. Siege ondersteunt basis-HTTP/HTTPS-protocollen en kan GET-, POST- en andere verzoekmethoden uitvoeren. Het wordt veel gebruikt voor stresstests, prestatieafstemming en ervoor zorgen dat webapplicaties piekbelastingen aankunnen.

Om Siege op Ubuntu 24.04, 22.04 of 20.04 te installeren, hebt u twee primaire opties: installeren vanuit de standaard Ubuntu-repository met behulp van de opdrachtregelterminal, of Siege rechtstreeks vanaf de bron downloaden en installeren voor de nieuwste versie en extra functies. Deze gids leidt u door beide installatiemethoden.

Update Ubuntu vóór de Siege-installatie

Ervoor zorgen dat uw Ubuntu-systeem up-to-date is met de nieuwste pakketten is van cruciaal belang voor het onderhouden van een efficiënte, veilige en betrouwbare computeromgeving. Wanneer we de opdracht uitvoeren sudo apt update, worden de pakketlijsten van het systeem vernieuwd.

Hier is de opdracht om dit uit te voeren:

sudo apt update && sudo apt upgrade

Selecteer Siege-installatiemethode

Optie 1: Installeer Siege via de Ubuntu-standaardrepository

Siege is opgenomen in de standaardrepository's van Ubuntu als een handig benchmarkinghulpmiddel. Dit vereenvoudigt het installatieproces aanzienlijk, waardoor we de ingebouwde pakketbeheertool (APT) van Ubuntu kunnen gebruiken om de installatie uit te voeren.

De opdracht sudo apt install siege zorgt ervoor dat het APT-systeem naar het Siege-pakket in de opslagplaatsen zoekt, de afhankelijkheden afhandelt en Siege op uw systeem installeert. De 'sudo' aan het begin is nodig omdat hierdoor de opdracht kan worden uitgevoerd met root-rechten, die vereist zijn voor systeembrede installaties.

Om Siege te installeren, voert u het volgende commando in:

sudo apt install siege 

Optie 2: Installeer Siege op Ubuntu via de broncode

Het compileren van Siege vanuit de broncode is optimaal voor mensen die graag op de hoogte blijven van de nieuwste functies en verbeteringen. Deze methode houdt in dat u de meest recente broncode ophaalt en deze handmatig compileert, zodat u zeker weet dat u over de meest recente versie van Siege beschikt.

De nieuwste belegeringsbron downloaden

Om te beginnen moet u de nieuwste broncode aanschaffen. Het Siege-team zorgt voor een consistente link voor de nieuwste versie, waardoor dit proces wordt vereenvoudigd. Het is echter altijd een goede gewoonte om ervoor te zorgen dat de link in de loop van de tijd geldig blijft.

Om de nieuwste broncode te downloaden, opent u uw terminal en voert u de volgende opdracht uit:

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

De bron extraheren en voorbereiden

Zodra het downloaden is voltooid, is het uitpakken van de inhoud van het archief de volgende stap. Voer het volgende commando uit om dit te bereiken:

tar -xvf siege-latest.tar.gz

Met deze opdracht wordt de Siege-broncode in een map gedecomprimeerd. Navigeer naar deze map met:

cd siege-*/

Het is de moeite waard om op te merken dat de exacte mapnaam per Siege-versie kan variëren. Zorg ervoor dat u zich in de juiste map bevindt voordat u verder gaat.

Voordat u in het compilatieproces duikt, is het raadzaam om dit te doen installeer het zlib-pakket, wat helpt bij de compressie en decompressie van gegevens:

sudo apt install zlib1g-dev

Compileer en installeer Siege Binary

Nu start u het compilatie- en installatieproces vanuit de Siege-bronmap. Met de onderstaande reeks opdrachten worden de build-instellingen geconfigureerd, de broncode gecompileerd en vervolgens Siege op uw Ubuntu-systeem geïnstalleerd:

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

Deze opdrachten configureren de bouwopties, compileren de broncode en installeren Siege op uw Debian-systeem.

Belegeringsinstallatie verifiëren

Na de installatie is het essentieel om te controleren of Siege correct is geïnstalleerd. Bovendien kan het controleren van de geïnstalleerde versie inzicht geven in de compatibiliteit ervan met specifieke functies of plug-ins en u informeren of toekomstige updates nodig zijn.

Om na te gaan welke versie van Siege op uw systeem is geïnstalleerd, voert u het volgende uit:

siege --version

Configureer Siege op Ubuntu

Het correct configureren van Siege is essentieel om optimaal te kunnen functioneren en zijn mogelijkheden volledig te kunnen benutten. Dit proces omvat het wijzigen van het Siege-configuratiebestand .siegerc, dat zich in de homedirectory bevindt.

Het belegeringsconfiguratiebestand zoeken

Het siegerc-bestand is een belangrijk bezit en dient als controlecentrum voor de operatie van Siege. Het omvat een groot aantal parameters die het gedrag van de tool bepalen. Deze parameters omvatten het aantal gesimuleerde gebruikers, de vertraging tussen aanvragen en het logboekregistratieniveau.

Laten we beginnen met het verkennen van het bestaande siegerc-bestand. U kunt dit bereiken door het cat-commando uit te voeren:

cat /etc/siege/siegerc

Configureer het Siege-configuratiebestand

U moet het bestand openen met een teksteditor om de Siege-configuratie aan te passen aan uw specifieke gebruiksscenario. In deze handleiding gebruiken we Nano vanwege zijn gebruiksvriendelijkheid en eenvoud.

Met het onderstaande commando kunt u het siegerc-bestand in de nano-teksteditor openen:

sudo nano /etc/siege/siegerc

Dit bestand is een schat aan configureerbare opties, maar we zullen ons concentreren op enkele van de meest gebruikte parameters:

  • uitgebreid: bepaalt of de gedetailleerde uitvoer wordt weergegeven (true) of niet (false).
  • csv: Geeft aan of de uitvoer in CSV-formaat moet zijn (true) of niet (false).
  • gelijktijdig: specificeert het aantal gesimuleerde gebruikers voor de belastingstest.
  • tijd: Bepaalt de duur van de belastingstest.
  • vertraging: Stelt de tijdsvertraging in tussen het verzoek van elke gebruiker.
  • internet: Simuleert gebruikersgedrag door willekeurige URL's op een website te vinden (waar) of niet (onwaar).
  • benchmark: Hiermee kan Siege als benchmarktool worden uitgevoerd (waar) of niet (false).

Als u bijvoorbeeld een scenario wilt opzetten waarin 25 gebruikers worden gesimuleerd, elke gebruiker elke seconde een verzoek verzendt en het testen 1 uur duurt, wijzigt u de relevante parameters als volgt:

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

Nadat u de gewenste wijzigingen heeft aangebracht, kunt u opslaan en afsluiten door op Ctrl+X te drukken, gevolgd door Y om het opslaan van de wijzigingen te bevestigen, en vervolgens op Enter te drukken.

HTTP-belastingstest met Siege op Ubuntu

Nu we Siege hebben geïnstalleerd en geconfigureerd, gaan we enkele praktische voorbeelden bekijken om u een concreet idee te geven van hoe deze tool werkt. In deze demonstraties onderwerpen we uw webserver aan een stresstest, waarbij we een stortvloed aan verzoeken simuleren, in tegenstelling tot een DDoS-aanval.

Dit kan zeer waardevol zijn om te begrijpen hoe uw website met veel verkeer omgaat. Zorg echter wel voor de benodigde toestemmingen en gebruik deze tools op verantwoorde wijze. Idealiter zouden ze alleen op uw servers moeten worden gebruikt.

BenchMark Load Test-website met Siege

Pas eerst Siege toe om een ​​website te testen met het standaardaantal gesimuleerde gebruikers (ook wel 'werknemers' genoemd), namelijk 25. We stellen ook de duur van de stresstest in op één minuut. Dit wordt bereikt door de vlag -t 1m te gebruiken, zoals weergegeven in de onderstaande opdracht:

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

Zodra u dit commando uitvoert, start Siege de stresstest, waarbij gedurende 1 minuut 25 gelijktijdige gebruikers worden gesimuleerd die verzoeken naar uw site sturen. Nadat de test is afgerond, zal Siege een gedetailleerd rapport met de resultaten presenteren.

Houd er rekening mee dat het uitvoeren van de test voor betekenisvollere en nauwkeurigere inzichten meestal het beste is gedurende 5 tot 15 minuten. De duur van 1 minuut was uitsluitend bedoeld voor demonstratiedoeleinden.

Om het aantal werkers te vergroten, kunt u de vlag -c gebruiken, gevolgd door het gewenste aantal. Om bijvoorbeeld 100 werknemers te simuleren, gebruikt u de vlag -c 100:

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

Meerdere websites stresstesten met Siege

Als u systeembeheerder bent of meerdere domeinen beheert, zult u blij zijn te weten dat Siege meerdere websites tegelijk kan beheren. Dit is mogelijk via een configuratiebestand /etc/siege/urls.txt, dat Siege kan gebruiken om te bepalen welke websites aan een stresstest moeten worden onderworpen.

Om dit bestand te configureren, opent u het met nano:

sudo nano /etc/siege/urls.txt

Voer vervolgens de URL's in van de websites die u wilt stresstesten:

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

Om deze wijzigingen op te slaan en af ​​te sluiten, drukt u op Ctrl+O, Enter en vervolgens op Ctrl+X.

Om ten slotte de stresstest op de opgegeven websites te starten, voert u de volgende opdracht uit:

siege -f /etc/siege/urls.txt

Extra belegeringsopdrachten op Ubuntu

Siege gaat niet alleen over het bombarderen van uw servers met verzoeken; het is een veelzijdige tool die veel opties biedt, waardoor u uw testaanpak kunt aanpassen. Van het controleren van het aantal gelijktijdige gebruikers tot het aanpassen van de vertraging tussen elk verzoek: met de opdrachtopties van Siege kunt u verschillende scenario's modelleren.

In dit gedeelte maak je kennis met aanvullende Siege-commando's waarmee je genuanceerdere en gedetailleerdere tests kunt uitvoeren.

Beheersing van de vertraging tussen verzoeken met belegering

Met Siege kunt u een vertraging introduceren tussen de verzoeken van elke gebruiker om realistischer gebruikersgedrag te simuleren. Dit zorgt ervoor dat verzoeken niet continu zonder pauzes worden verzonden.

Bijvoorbeeld in de onderstaande opdracht:

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

Siege krijgt de opdracht om de gespecificeerde website te testen met 50 gelijktijdige gebruikers, waarbij een vertraging van 5 seconden wordt geïntroduceerd tussen het verzoek van elke gebruiker.

HTTP-methode en headers aanpassen met Siege

Met Siege kunt u de HTTP-methode en headers van uw stresstest aanpassen. Mogelijk wilt u bijvoorbeeld een POST-verzoek met aangepaste headers verzenden. Met de vlag -H kunt u aangepaste headers instellen, terwijl u met de optie –method de HTTP-methode kunt instellen. Zo kunt u deze opties gebruiken:

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

In de bovenstaande opdracht gebruiken we de POST-methode en stellen we de Content-Type header in op application/json voor onze verzoeken.

Resultaten registreren met Siege

Mogelijk wilt u de resultaten van uw stresstest vastleggen voor verdere analyse of archivering. Siege kan de testresultaten naar een logbestand schrijven met de -l keuze:

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

Met dit commando vertelt Siege dat hij de resultaten van de stresstest moet loggen. Standaard schrijft Siege de logboeken naar een bestand met de naam siege.log in uw thuismap.

Afsluitende gedachten

Nu Siege met succes op uw Ubuntu-systeem is geïnstalleerd, kunt u uw webservers effectief benchmarken en stresstesten. Of u nu kiest voor het gemak van de standaard Ubuntu-repository of voor de flexibiliteit om rechtstreeks vanaf de bron te installeren, Siege biedt een betrouwbare toolset om ervoor te zorgen dat uw webapplicaties optimaal presteren onder belasting. Update Siege regelmatig om te profiteren van nieuwe functies en verbeteringen, en gebruik het om de stabiliteit en prestaties van uw webservers te behouden.

Joshua James
Volg mij
Laatste berichten van Joshua James (alles zien)

Plaats een reactie