Menyiapkan Alat Pemantauan Sistem FreeBSD Dengan Cacti
Cacti adalah antarmuka lengkap untuk RRDTool. Cacti dapat menyimpan semua informasi yang dibutuhkan untuk membuat grafik dan menyalinnya ke tabel basis data MySQL Server. Antarmuka Cacti sepenuhnya berjalan dalam PHP.
Selain dapat mengelola Grafik, Sumber Data, dan Arsip Round Robin dalam basis data, Cacti juga dapat menangani pengumpulan data. Keunggulan lain Cacti adalah dukungan SNMP bagi mereka yang terbiasa membuat grafik lalu lintas dengan MRTG.
Secara umum, dengan bantuan Cacti, Anda dapat membuat grafik penggunaan kanal, penggunaan partisi HDD, menampilkan latensi sumber daya, dan banyak lagi. Jadi, wajar jika semua orang memuji Cacti. Karena, Cacti merupakan solusi mudah untuk memantau server dan perangkat jaringan, memungkinkan Anda memantau status grafik yang indah pada berbagai interval.
Dalam artikel ini, kita akan membahas Cacti sebagai Solusi grafis lengkap berbasis RRDTool. Artikel ini tidak akan mengajarkan Anda cara menggunakan Cacti. Namun, ini akan menjelaskan cara menginstal dan mengonfigurasi Cacti pada mesin FreeBSD, sehingga Anda dapat menggunakannya untuk memantau perangkat apa pun yang Anda miliki di jaringan Anda.
** A. Spesifikasi sistem
- OS: FreeBSD 13.2
- IP address: 192.168.5.2
- Hostname: ns3
- Database: mysql80-server
- PHP version: PHP82
- PHP-FPM
- Web server: apache24
- Dependencies: "rrdtool php82 php82-ctype php82-filter php82-gd php82-gettext hp82-gmp php82-intl php82-ldap php82-mbstring php82-pcntl php82-pdo php82-pdo_mysql php82-posix php82-session php82-simplexml php82-sockets php82-snmp php82-xml php82-zlib"
B. Instal Dependensi Cacti RRDTool
Cacti berjalan dengan peramban web, sehingga membutuhkan server web seperti Apache. Agar Cacti dapat terhubung dengan Apache, ada beberapa dependensi PHP yang harus diinstal. Dependensi PHP ini akan menghubungkan Cacti dengan Apache, karena hampir semua skrip Cacti ditulis dalam PHP. Jalankan perintah berikut untuk menginstal dependensi PHP Cacti.
root@ns3:~ # pkg install php82 php82-ctype php82-filter php82-gd php82-gettext php82-intl php82-ldap php82-mbstring php82-pcntl php82-pdo php82-pdo_mysql php82-posix php82-session php82-simplexml php82-sockets php82-snmp php82-xml php82-zlib php82-gmp
Seperti yang telah dijelaskan sebelumnya, Cacti adalah RRDTool yang digunakan untuk memantau semua perangkat di jaringan komputer Anda. Oleh karena itu, Cacti membutuhkan utilitas yang dapat memantau semua aktivitas jaringan komputer kita.
Di sinilah RRDTool berperan. RRDTool memungkinkan Anda mencatat dan menganalisis data yang Anda kumpulkan dari berbagai sumber data. Bagian analisis data RRDTool didasarkan pada kemampuan untuk menghasilkan representasi grafis dengan cepat dari nilai data yang dikumpulkan selama periode waktu yang dapat ditentukan.
Jalankan perintah berikut untuk menginstal utilitas RRDTools.
root@ns3:~ # cd /usr/ports/databases/rrdtool root@ns3:/usr/ports/databases/rrdtool # make install clean
C. Buat basis data MySQL, Pengguna Cacti, dan Inisialisasi
Cacti membutuhkan server basis data untuk menyimpan semua informasi hasil pemantauan. Hasil pemantauan akan disimpan oleh Cacti dalam tabel basis data yang dapat Anda panggil kembali jika diperlukan. Basis data yang umum digunakan oleh Cacti adalah MySQL Server.
Di server basis data MySQL, kita akan membuat basis data, pengguna, dan kata sandi untuk Cacti.
Baiklah, mari kita buat basis data Cacti, beserta pengguna dan kata sandinya.
root@ns3:/usr/ports/databases/rrdtool # mysql -u root -p root@localhost [(none)]> CREATE DATABASE `cacti`; root@localhost [(none)]> CREATE USER 'usercacti'@'localhost' IDENTIFIED BY 'router123'; root@localhost [(none)]> FLUSH PRIVILEGES;
Setelah itu Anda jalankan perintah "GRANTS".
root@localhost [(none)]> GRANT ALL ON `cacti`.* TO 'usercacti'@'localhost'; root@localhost [(none)]> GRANT SELECT ON `mysql`.`time_zone_name` TO 'usercacti'@'localhost'; root@localhost [(none)]> FLUSH PRIVILEGES;
Jalankan perintah Import basis data Cacti default.
root@localhost [(none)]> exit; root@ns3:~ # mysql -u root -p cacti < /usr/local/share/cacti/cacti.sql
D. Install Cacti
Di bagian ini, proses instalasi Cacti ke sistem FreeBSD dimulai. Prosedur ini dimulai setelah Anda membuat basis data Cacti. Untuk menginstal Cacti, kita akan menggunakan sistem port FreeBSD.
Meskipun proses instalasinya memakan waktu lama, metode ini lebih lengkap karena sudah mencakup semua berkas pustaka PHP. Jalankan perintah berikut untuk menginstal Cacti.
root@ns3:~ # cd /usr/ports/net-mgmt/cacti root@ns3:/usr/ports/net-mgmt/cacti # make install clean
Semua file Cacti dari instalasi disimpan di direktori "/usr/local/share/cacti", salin file ke direktori "/usr/local/www".
root@ns3:/usr/ports/net-mgmt/cacti # cp -R /usr/local/share/cacti /usr/local/www
Jalankan perintah chown dan chmod di direktori "/usr/local/www".
root@ns3:/usr/ports/net-mgmt/cacti # chown -R www:www /usr/local/www/cacti root@ns3:/usr/ports/net-mgmt/cacti # chmod -R 775 /usr/local/www/cacti
Buat berkas config.php dengan menyalinnya dari berkas yang sudah ada. Ikuti perintah berikut.
root@ns3:/usr/ports/net-mgmt/cacti # cd /usr/local/www/cacti/include root@ns3:/usr/local/www/cacti/include # cp -R config.php.sample config.php
Buka file yang Anda copy yaitu /usr/local/www/cacti/include/config.php dan cari script dibawah
$database_type = 'mysql';
$database_default = 'cacti';
$database_hostname = 'localhost';
$database_username = 'cactiuser';
$database_password = 'cactiuser';
$database_port = '3306';
$database_retries = 5;
$database_ssl = false;
$database_ssl_key = '';
$database_ssl_cert = '';
$database_ssl_ca = '';
$database_persist = false;
Ganti isi skrip di atas dengan database Cacti yang telah anda buat di atas.
$database_type = 'mysql';
$database_default = 'cacti';
$database_hostname = 'localhost';
$database_username = 'usercacti';
$database_password = 'router123';
$database_port = '3306';
$database_retries = 5;
$database_ssl = false;
$database_ssl_key = '';
$database_ssl_cert = '';
$database_ssl_ca = '';
$database_persist = false;
E. Konfigurasi VHost Apache
Kami berasumsi Anda telah menginstal PHP-FPM di server web Apache. Kami akan menjalankan Cacti dengan virtual host Apache. Jadi, kita cukup membuka berkas /usr/local/etc/apache24/httpd.conf.
Untuk mengaktifkan virtual host Apache, ketik atau aktifkan skrip di bawah ini di dalam berkas.
LoadModule alias_module libexec/apache24/mod_alias.so
LoadModule vhost_alias_module libexec/apache24/mod_vhost_alias.so
Include etc/apache24/extra/httpd-vhosts.conf
Setelah itu, buat berkas konfigurasi Apache Virtual Host di berkas /usr/local/etc/apache24/extra/httpd-vhosts.conf. Di berkas tersebut, ketik skrip di bawah ini.
<VirtualHost 192.168.5.2:80>
ServerName datainchi.com
DocumentRoot "/usr/local/www/cacti"
DirectoryIndex index.php index.html
Alias /cacti /usr/local/www/cacti/
<Directory /usr/local/www/cacti>
AllowOverride None
Order Allow,deny
Allow from all
Require all granted
</Directory>
ErrorLog "/var/log/cacti/log"
CustomLog "/var/log/dummy-host.example.com-access_log" common
</VirtualHost>
Pada file log Cacti, jalankan perintah chown, untuk memberikan user dan group `www:www: seperti dalam contoh berikut.
root@ns3:~ # chown -R www:www /var/log/cacti/log
Hal berikutnya yang perlu dilakukan adalah menambahkan pekerjaan cron yang melakukan polling pada mesin dan router Anda setiap 5 menit. Untuk melakukannya, tambahkan baris berikut ke berkas /etc/crontab Anda.
*/5 * * * * /usr/local/bin/php /usr/local/www/cacti/poller.php > /dev/null 2>&1
Mulai ulang/Restart server web Apache24.
root@ns3:~ # service apache24 restart
Jalankan Cacti dengan membuka peramban web Google Chrome dan mengetik "http://192.168.5.2/cacti/install/install.php".
Tampilan di atas adalah layar pembuka Cacti. Ketik nama pengguna dan kata sandi Cacti. Setelah berhasil masuk, berarti Anda telah menjalankan Cacti di server FreeBSD. Sekarang Anda dapat memantau aktivitas komputer atau jaringan Anda dengan Cacti.
Semua aktivitas yang terjadi di komputer Anda akan disimpan dalam tabel basis data Cacti.
