Tutorial ini berfokus pada instalasi dan konfigurasi utilitas sar dan ksar pada CentOS, Debian dan Ubuntu dan menunjukkan cara membuat laporan PDF secara otomatis dengan menggunakan skrip shell sederhana untuk memudahkan pemantauan penggunaan sumber daya server harian.
Bagian 1: Install Software Pemantauan SAR
SAR (system activity reports) adalah alat pemantau sistem yang ringan dan real-time. SAR dapat memberikan laporan penggunaan sumber daya server sesuai kebutuhan. SAR memberikan output pada terminal secara default dan juga menyimpan informasi per-hari, Jadi SAR akan menjadi utilitas yang sangat berguna dan kuat untuk Administrator Sistem.
SAR dapat diinstal dalam semua Linux flavors, SAR adalah bagian dari paket sysstat.
Instal dan Konfigurasi SAR
Untuk Debian/Ubuntu
# sudo apt-get install sysstat
Untuk RedHat/CentOS
# sudo yum install sysstat
Atau jika Anda ingin install sysstat terbaru dari source.
wget http://pagesperso-orange.fr/sebastien.godard/sysstat-12.1.4.tar.bz2 tar -xvf sysstat-12.1.4.tar.bz2 cd sysstat-12.1.4/ ./configure --enable-install-cron make make install
Jika Anda menginstal sar dari source maka ia akan install systat di /usr/local/bin/
Setelah instalasi, verifikasi versi SAR
# sar -V sysstat version 11.2.0
Setelah itu, pastikan untuk memverifikasi pengumpulan data SAR telah diaktifkan.
Di Ubuntu, buka file konfigurasi sysstat dengan perintah nano dan periksa nilai ENABLED
#sudo nano /etc/default/sysstat ENABLED="true"
kemudian restart layanan sar dan aktifkannya pada startup sistem.
# systemctl start sysstat # systemctl enable sysstat
Sekarang periksa sar telah berfungsi dengan baik dalam sistem dengan menjalankan perintah berikut. Di sini interval waktu 2 detik dan output 4 kali.
[system@redhat ~]$ sar 2 4 Linux 5.0.16-200.fc29.x86_64 (redhat) 05/22/2019 _x86_64_ (4 CPU) 12:18:13 AM CPU %user %nice %system %iowait %steal %idle 12:18:15 AM all 1.25 0.00 0.50 0.00 0.00 98.24 12:18:17 AM all 2.50 0.00 0.38 0.00 0.00 97.12 12:18:19 AM all 2.12 0.00 0.62 0.12 0.00 97.12 12:18:21 AM all 1.75 0.00 0.50 0.00 0.00 97.75 Average: all 1.91 0.00 0.50 0.03 0.00 97.56
Kita cukup menjalankan perintah sar untuk memeriksa penggunaan sumber daya.
[root@redhat script]# sar Linux 5.0.16-200.fc29.x86_64 (redhat) 05/24/2019 _x86_64_ (4 CPU) 12:00:01 AM CPU %user %nice %system %iowait %steal %idle 12:10:01 AM all 4.02 0.05 1.45 1.40 0.00 93.09 12:20:01 AM all 6.27 0.02 1.82 0.56 0.00 91.33 12:30:01 AM all 10.61 0.03 2.69 0.64 0.00 86.03 12:40:01 AM all 9.26 0.05 2.45 0.59 0.00 87.65
Secara default interval sar diatur ke setiap 10 menit. Kita dapat mengubah nilai ini dengan mengedit file berikut.
sudo nano /etc/cron.d/sysstat
# Run system activity accounting tool every 10 minutes */10 * * * * root /usr/lib64/sa/sa1 1 1 # 0 * * * * root /usr/lib64/sa/sa1 600 6 & # Generate a daily summary of process accounting at 23:53 53 23 * * * root /usr/lib64/sa/sa2 -A
Dalam file di atas, sa1 adalah skrip shell untuk mengumpulkan dan menyimpan data binary dalam aktivitas sistem, file data harian dan sa2 adalah skrip shell yang menulis laporan harian di /var/log/sa pada akhir hari (23:53 pada waktu di cronjob).
Bagian 2: Install KSAR
KSAR menghasilkan grafik dari nilai SAR yang sangat mudah untuk dianalisis. KSAR didasarkan pada JAVA sehingga kita harus memiliki JDK 8 atau lebih yang diinstal pada sistem kita. KSAR bukan bagian dari repositori sistem, kita harus mengunduh KSAR secara manual.
Pertama, instal java di redhat / centos
sudo yum install java-1.8.0-OpenJDK.x86_64
kemudian install ksar pada sistem
wget https://excellmedia.dl.sourceforge.net/project/ksar/ksar/5.0.6/kSar-5.0.6.zip unzip kSar-5.0.6.zip cd kSar-5.0.6/
Sekarang kumpulkan statistik perintah sar menggunakan perintah berikut..
LC_ALL=C sar -A -f /var/log/sa/sa21 > ~/Desktop/sar21
sudo chmod u+x run.sh
sh run.sh &
kita harus menjalankan skrip run.sh sebagai user normal, jangan jalankan skrip KSAR sebagai pengguna root atau dengan awalan sudo
.
sekarang KSAR akan menampilkan GUI yang mudah digunakan dan sederhana.
Sekarang Klik Data ->Load from text file -> cari file di ~/Desktop/sar21.
Sekarang file sar telah dimuat di KSAR.
Sekarang kita dapat mengekspor grafik dalam format pdf, jpg, png, csv, txt. Di sini kita mengekspor grafik dalam pdf dan memilih semua nilai selama ekspor pdf.
Sekarang buka pdf tersebut, maka akan menampilkan semua sumber daya server.
Di sini kita dapat memantau CPU load dalam sehari di server.
Ini adalah penggunaan memori dalam satu hari
Dengan cara ini kita dapat memantau dan menghasilkan data CPU, memori, prosesor, I/O, swap, soket, dan banyak grafik sumber daya sistem lainnya yang sangat mudah untuk berguna untuk pemantauan harian.
Bagian 3: Buat Script Untuk Pemantauan
KSAR GUI sangat user-friendly. Tetapi skrip akan menghasilkan grafik KSAR harian lebih efektif dan menghemat waktu.
Di bagian ini, kita akan membuat dua script.
Script pertama akan menghasilkan grafik selama sehari setiap hari.
vi sar_script.sh
#!/bin/bash i=`date --date="1 days ago" +%d` LC_ALL=C sar -A -f /var/log/sa/sa$i > /home/admin/sar_report/sardaily_report$i cd /home/soham/Downloads/kSar-5.0.6/ java -jar kSar.jar -input /home/admin/sar_report/sardaily_report$i -outputPDF /home/admin/sar_report/sardaily$(date --date="1 days ago" +%b)$i.pdf echo "Ksar graph successfully generated"
sudo chmod u+x sar_script.sh
Script di atas akan menghasilkan laporan sumber daya sistem dalam satu hari. Kita dapat mengatur script ini dalam cronjob untuk mengotomatiskan pembuatan grafik sar dalam format pdf.
crontab -e
* 10 * * * /bin/sh /home/admin/script/sar_script.sh
Cronjob ini menghasilkan grafik pdf setiap hari dari nilai sar pada pukul 10 pagi.
Selanjutnya, kami akan menghasilkan laporan statistik sar untuk sebulan penuh.
#!/bin/bash function sar_value(){ #This is set for 31 possible days. for i in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31; do LC_ALL=C sar -A -f /var/log/sa/sa$i >> /home/admin/sar_report/sarmonthly$(date --date="1 days ago" +%b).txt done } Function for script sar_value
Sekarang kita mengambil file teks output script pertama di atas sebagai input pada script kedua untuk menghasilkan grafik pdf.
java -jar kSar.jar -input /home/admin/sar_report/sarmonthly$(date --date="1 days ago" +%b).txt -outputPDF /home/admin/sar_report/sar_monthly.pdf
Ini akan menghasilkan laporan sebulan penuh dalam satu file pdf.
Kita dapat menyiapkan cron untuk pembuatan laporan secara otomatis seperti yang ditunjukkan di atas. Jika kita ingin mengarahkan laporan grafik kSar dari server ke komputer lokal maka kita dapat mengatur ssh tanpa sandi antara server dan komputer lokal dan mengatur otomatisasi dengan menambahkan rsync ke dalam skrip di atas.
Dengan cara ini kita dapat menggunakan utilitas sar dengan sangat efektif untuk tugas pemantauan harian sistem.