Cara Menginstal Siege benchmarking tool di Ubuntu | UNIX LINUX EXPLORE
Edit

Cara Menginstal Siege benchmarking tool di Ubuntu

2024/08/30
Siege adalah salah satu utility benchmarking yang sanat modern dan canggih. Siege sering digunakan untuk menguji kinerja dan stabilitas server web saat beban tinggi. Alat ini memungkinkan Anda untuk mensimulasikan beberapa pengguna yang mengakses situs web Anda secara bersamaan, memberikan wawasan berharga tentang cara server anda menangani lalu lintas tinggi. Siege mendukung protokol HTTP/HTTPS dasar dan dapat melakukan GET, POST, dan metode permintaan lainnya. Alat ini banyak digunakan untuk pengujian stres, penyetelan kinerja, dan memastikan aplikasi web dapat menangani beban puncak.




Untuk menginstal Siege di Ubuntu anda memiliki dua opsi utama: 
  • menginstal dari repositori default Ubuntu menggunakan terminal baris perintah, 
  • atau mengunduh dan menginstal Siege langsung dari sumbernya untuk versi terbaru dan fitur tambahan. 
Panduan ini akan memandu Anda melalui kedua metode instalasi tersebut.

1. Sebelum mulai update Ubuntu

Memastikan sistem Ubuntu Anda selalu diperbarui dengan paket-paket terbaru sangat penting untuk menjaga lingkungan komputasi yang efisien, aman, dan dapat diandalkan. Saat kita menjalankan perintah sudo apt update, daftar paket sistem akan diperbarui.

Berikut ini perintah untuk melakukan proses update dan upgrade apt Ubutnu.

update apt
[root@ns1 ~]# sudo apt update && sudo apt upgrade

2. Install Siege dengan Repository Ubunt

Siege telah disertakan dalam repositori bawaan Ubuntu sebagai alat pembanding yang praktis. Ini sangat menyederhanakan proses instalasi, memungkinkan kita menggunakan alat manajemen paket (APT) bawaan Ubuntu untuk melakukan instalasi.

Perintah sudo apt install siege memicu sistem APT untuk mencari paket Siege di repositori, menangani dependensi, dan menginstal Siege di sistem Ubuntu anda. ‘sudo’ di awal diperlukan karena memungkinkan perintah untuk dieksekusi dengan hak akses root, yang diperlukan untuk instalasi di seluruh sistem.

Untuk menginstal Siege, masukkan perintah berikut,

Install siege
[root@ns1 ~]# sudo apt install siege


3. Install Siege dengan source (download dari situs resmi)

Mengkompilasi Siege dari kode sumbernya adalah pilihan terbaik bagi mereka yang ingin selalu mendapatkan informasi terkini tentang fitur dan penyempurnaan terbaru. Metode ini memerlukan pengambilan kode sumber terbaru dan mengompilasinya secara manual, untuk memastikan Anda memiliki versi Siege yang terbaru.

Untuk memulainya, anda perlu mendapatkan file master siege terbaru. Tim Siege menyediakan tautan yang konsisten untuk versi terbaru, yang menyederhanakan proses ini. Namun, sebaiknya selalu pastikan tautan tersebut tetap valid dari waktu ke waktu.

Untuk mengunduh kode sumber terbaru, buka terminal Anda dan jalankan perintah berikut:

Install siege
[root@ns1 ~]# sudo wget http://download.joedog.org/siege/siege-latest.tar.gz
Karena file master Siege berbentuk "tar", anda harus mengekstraknya terlebih dahulu sebelum digunakan. Jalankan perintah berikut untuk mengkestrak file Siege.

Ekstrak Siege
[root@ns1 ~]# sudo tar -xvf siege-latest.tar.gz
Sebelum memulai proses kompilasi, sebaiknya instal paket zlib, yang membantu dalam kompresi dan dekompresi data.

Instal zlib
[root@ns1 ~]# sudo apt install zlib1g-dev
Sekarang, anda akan memulai proses kompilasi dan instalasi dalam direktori sumber Siege. Urutan perintah di bawah ini akan mengonfigurasi pengaturan build, mengkompilasi kode sumber, dan kemudian menginstal Siege pada sistem Ubuntu anda.

Install Siege
[root@ns1 ~]# cd siege-*/
[root@ns1 ~]# sudo ./configure --with-zlib
[root@ns1 ~]# sudo make
[root@ns1 ~]# sudo make install
setelah proses instalasi selesai, untuk lebih meyakinkan bahwa Siege telah terinstal di sistem Ubuntu anda, cek versi Siege dengan perintah berikut.

Cek versi Siege
[root@ns1 ~]# sudo siege --version

4. Proses Konfigurasi Siege

Mengkonfigurasi Siege dengan benar sangat penting agar dapat berfungsi secara optimal dan memanfaatkan kemampuannya secara penuh. Proses ini melibatkan modifikasi berkas konfigurasi Siege .siegerc, yang terletak di direktori home.

File siegerc merupakan aset utama yang berfungsi sebagai pusat kendali untuk operasi Siege. File ini terdiri dari berbagai parameter yang menentukan perilaku alat. Parameter ini meliputi jumlah pengguna yang disimulasikan, penundaan antara permintaan, dan tingkat pencatatan.

Mari kita mulai dengan menjelajahi file siegerc yang ada. Anda dapat melakukannya dengan menjalankan perintah cat.

Lihat isi script file siegerc
[root@ns1 ~]# cat /etc/siege/siegerc
Anda perlu membuka berkas menggunakan editor teks untuk mengubah konfigurasi Siege agar sesuai dengan kasus penggunaan spesifik Anda. Dalam panduan ini, kami akan menggunakan Nano karena kemudahan penggunaannya dan kesederhanaannya.

Perintah di bawah ini membantu anda untuk membuka file siegerc di editor teks nano.

Edit file siegerc
[root@ns1 ~]# sudo nano /etc/siege/siegerc
File tersebut merupakan file konfigurasi utama yang berupa opsi yang dapat anda edit, tetapi kami akan fokus pada beberapa parameter yang lebih umum digunakan, yaitu:
  • verbose: Menentukan apakah keluaran terperinci ditampilkan (benar) atau tidak (salah).
  • csv: Menunjukkan apakah keluaran harus dalam format CSV (benar) atau tidak (salah).
  • concurrent: Menentukan jumlah pengguna yang disimulasikan untuk uji beban.
  • time: Menentukan durasi uji beban.
  • delay: Mengatur waktu tunda antara setiap permintaan pengguna.
  • internet: Mensimulasikan perilaku pengguna dengan menekan URL acak di situs web (benar) atau tidak (salah).
  • benchmark: Memungkinkan Siege berjalan sebagai alat benchmark (benar) atau tidak (salah).
Sebagai contoh, jika anda ingin menyiapkan skenario tempat 25 pengguna disimulasikan, setiap pengguna mengirimkan permintaan setiap detik, dan pengujian berlangsung selama 1 jam, anda akan mengubah parameter yang relevan sebagai berikut:

Contoh script /etc/siege/siegerc
verbose = false
csv = true
concurrent = 25
time = 1H
delay = 1S
internet = false
benchmark = false
Setelah Anda membuat perubahan yang diinginkan, simpan dan keluar dengan menekan Ctrl+X, diikuti oleh Y untuk mengonfirmasi penyimpanan perubahan, lalu tekan Enter.

a. Uji Beban HTTP dengan Siege di Ubuntu

Sekarang setelah kita menginstal dan mengonfigurasi Siege, mari kita jelajahi beberapa contoh praktis untuk memberi Anda gambaran konkret tentang cara kerja alat ini. Dalam demonstrasi ini, kita akan menempatkan server web Anda di bawah uji stres, yang mensimulasikan banjir permintaan, tidak seperti serangan DDoS.

Ini bisa sangat berharga untuk memahami bagaimana situs web Anda akan menangani lalu lintas yang padat. Namun, dapatkan izin yang diperlukan dan gunakan alat ini secara bertanggung jawab. Idealnya, alat ini hanya boleh digunakan di server Anda.

b. Uji Beban BenchMark Situs Web dengan Siege

Pertama, terapkan Siege untuk menguji situs web menggunakan jumlah pengguna simulasi default (juga dikenal sebagai "pekerja"), yaitu 25. Kita juga akan mengatur durasi uji stres menjadi satu menit. Ini dicapai dengan menggunakan tanda -t 1m, seperti yang ditunjukkan pada perintah di bawah ini:

Uji benchmark
[root@ns1 ~]# siege https://www.example.com -t 1m
Setelah anda menjalankan perintah ini, Siege akan memulai uji stres, dengan mensimulasikan 25 pengguna bersamaan yang mengirim permintaan ke situs Anda selama 1 menit. Setelah pengujian selesai, Siege akan menyajikan laporan terperinci tentang hasilnya.

Ingatlah bahwa menjalankan pengujian untuk mendapatkan wawasan yang lebih bermakna dan akurat biasanya paling baik selama 5 hingga 15 menit. Durasi 1 menit hanya untuk tujuan demonstrasi.

Untuk menambah jumlah pekerja, anda dapat menggunakan tanda -c diikuti dengan jumlah yang diinginkan. Misalnya, untuk mensimulasikan 100 pekerja, gunakan tanda -c 100:

Uji benchmark
[root@ns1 ~]# siege https://www.example.com -c 100 -t 2m

c. Uji Stres Beberapa Situs Web dengan Siege

Jika Anda seorang administrator sistem atau mengelola beberapa domain, anda akan senang mengetahui bahwa Siege dapat menangani beberapa situs web secara bersamaan. Ini dapat dicapai melalui file konfigurasi /etc/siege/urls.txt, yang dapat digunakan Siege untuk menentukan situs web mana yang akan diuji stresnya.

Untuk mengonfigurasi file ini, buka dengan menggunakan teks editor nano.

Buat file pengujian urls.txt
[root@ns1 ~]# sudo nano /etc/siege/urls.txt

https://www.example.com
https://www.example2.com
http://192.168.50.1
Setelah anda membuat file urls.txt, anda dapat langsung menguji domain yang ada di dalam file tersebut dengan Siege, jaalnkan perintah berikut:


[root@ns1 ~]# sudo siege -f /etc/siege/urls.txt

d. Perintah Siege Tambahan di Ubuntu

Siege bukan hanya tentang membombardir server Anda dengan permintaan; ini adalah alat serbaguna yang menyediakan banyak opsi, yang memungkinkan Anda untuk menyesuaikan pendekatan pengujian Anda. Dari mengendalikan jumlah pengguna bersamaan hingga menyesuaikan penundaan antara setiap permintaan, opsi perintah Siege memungkinkan Anda memodelkan berbagai skenario.

Bagian ini akan membiasakan Anda dengan perintah Siege tambahan yang dapat memberdayakan Anda untuk melakukan pengujian yang lebih bernuansa dan terperinci.

e. Mengontrol Penundaan Antar Permintaan dengan Siege

Dengan Siege, Anda dapat memperkenalkan penundaan antara setiap permintaan pengguna untuk mensimulasikan perilaku pengguna yang lebih realistis. Ini memastikan bahwa permintaan tidak dikirim terus-menerus tanpa jeda.

Misalnya, dalam perintah di bawah ini:


[root@ns1 ~]# siege https://www.example.com -c 50 -d 5
Siege diinstruksikan untuk melakukan uji stres pada situs web yang ditentukan dengan 50 pengguna bersamaan, yang memperkenalkan penundaan 5 detik di antara setiap permintaan pengguna.

f. Cara menyesuaikan Metode dan Header HTTP dengan Siege

Siege memungkinkan Anda untuk menyesuaikan metode dan header HTTP uji stres Anda. Misalnya, Anda mungkin ingin mengirim permintaan POST dengan header khusus. Tanda -H memungkinkan Anda untuk mengatur header khusus, sedangkan opsi –method memungkinkan Anda untuk mengatur metode HTTP. Berikut ini cara Anda dapat menggunakan opsi ini:


siege --method="POST" -H "Content-Type: application/json"
https://www.example.com
Pada perintah di atas, kami menggunakan metode POST dan menyetel header Content-Type ke application/json untuk permintaan kami.

g. Mencatat Hasil dengan Siege

Anda mungkin ingin mencatat hasil uji stres untuk analisis lebih lanjut atau penyimpanan catatan. Siege dapat menulis hasil uji ke berkas log dengan opsi -l:


[root@ns1 ~]# siege -l https://www.example.com
Perintah ini memberi tahu Siege untuk mencatat hasil uji stres. Secara default, Siege menulis log ke file bernama siege.log di direktori home Anda.

Dengan Siege yang berhasil diinstal pada sistem Ubuntu Anda, Anda dapat melakukan benchmark dan stress test server web Anda secara efektif.