Cara Install Cacti dengan Cacti-Spine di Debian dan Ubuntu


Dalam tutorial ini kita akan mempelajari cara memasang dan mengonfigurasi alat pemantauan jaringan Cacti di versi terbaru Debian dan Ubuntu 16.04 LTS. Cacti akan dibuat dan diinstal dari file sumber selama panduan ini.

Cacti adalah alat pemantauan sumber terbuka yang dibuat untuk memantau jaringan, khususnya perangkat jaringan, seperti sakelar, router, server melalui protokol SNMP. Cacti berinteraksi dengan pengguna akhir dan dapat dikelola melalui antarmuka alat web.

Persyaratan

  1. LAMP Stack Dipasang di Debian 9
  2. LAMP Stack Diinstal di Ubuntu 16.04 LTS

Langkah 1: Instal dan Konfigurasikan Prasyarat untuk Cacti

1. Di Debian 9, daftar file sumber terbuka untuk diedit dan tambahkan repositori kontrib dan tidak bebas ke file dengan mengubah baris berikut:

nano /etc/apt/sources.list

Tambahkan baris berikut ke file sources.list.

deb http://ftp.ro.debian.org/debian/ stretch main contrib non-free
deb-src http://ftp.ro.debian.org/debian/ stretch main

deb http://security.debian.org/debian-security stretch/updates main contrib non-free
deb-src http://security.debian.org/debian-security stretch/updates main

2. Setelah itu, pastikan untuk memperbarui sistem dengan mengeluarkan perintah di bawah ini.

apt update
apt upgrade

3. Di tumpukan LAMP Anda, pastikan ekstensi PHP berikut ada di sistem.

apt install php7.0-snmp php7.0-xml php7.0-mbstring php7.0-json php7.0-gd php7.0-gmp php7.0-zip php7.0-ldap php7.0-mcrypt

4. Selanjutnya, edit file konfigurasi PHP dan ubah pengaturan zona waktu agar sesuai dengan lokasi fisik server Anda, dengan mengeluarkan perintah di bawah ini.

echo "date.timezone = Europe/Bucharest" >> /etc/php/7.0/apache2/php.ini 

5. Selanjutnya, masuk ke database MariaDB atau MySQL dari instalasi tumpukan LAMP Anda dan buat database untuk menginstal Cacti dengan mengeluarkan perintah berikut.

Ganti nama database kaktus, pengguna dan kata sandi agar sesuai dengan konfigurasi Anda dan pilih kata sandi yang kuat untuk database kaktus.

mysql -u root -p
mysql> create database cacti;
mysql> grant all on cacti.* to 'cactiuser'@'localhost' identified by 'password1';
mysql> flush privileges;
mysql> exit

6. Selain itu, jalankan perintah di bawah ini untuk mengizinkan pengguna kaktus memilih izin ke pengaturan data.timezone MySQL dengan mengeluarkan perintah di bawah ini.

mysql -u root -p mysql < /usr/share/mysql/mysql_test_data_timezone.sql 
mysql -u root -p -e 'grant select on mysql.time_zone_name to cactiuser@localhost'

7. Selanjutnya, buka file konfigurasi server MySQL dan tambahkan baris berikut di akhir file.

nano /etc/mysql/mariadb.conf.d/50-server.cnf [For MariaDB]
nano /etc/mysql/mysql.conf.d/mysqld.cnf      [For MySQL] 

Tambahkan baris berikut di akhir file 50-server.cnf atau mysqld.cnf.

max_heap_table_size		= 98M
tmp_table_size			= 64M
join_buffer_size		= 64M
innodb_buffer_pool_size	= 485M
innodb_doublewrite		= off
innodb_flush_log_at_timeout	= 3
innodb_read_io_threads	= 32
innodb_write_io_threads	= 16

Untuk database MariaDB, tambahkan juga baris berikut di akhir file 50-server.cnf:

innodb_additional_mem_pool_size	= 80M

8. Terakhir, mulai ulang layanan MySQL dan Apache untuk menerapkan semua pengaturan dan memverifikasi status kedua layanan dengan mengeluarkan perintah berikut.

systemctl restart mysql apache2
systemctl status mysql apache2

Langkah 2: Unduh dan Siapkan Instalasi Cacti

9. Mulai instal Cacti dari sumber dengan mengunduh dan mengekstrak arsip Cacti versi terbaru dan menyalin semua file ekstrak ke root dokumen web Apache, dengan mengeluarkan perintah berikut.

wget https://www.cacti.net/downloads/cacti-latest.tar.gz
tar xfz cacti-latest.tar.gz 
cp -rf cacti-1.1.27/* /var/www/html/

10. Hapus file index.html dari direktori /var/www/html, buat file log Cacti dan berikan Apache izin menulis ke web jalur akar.

rm /var/www/html/index.html
touch /var/www/html/log/cacti.log
chown -R www-data:www-data /var/www/html/

11. Selanjutnya, edit file konfigurasi kaktus dan ubah baris berikut seperti yang ditunjukkan pada contoh di bawah.

nano /var/www/html/include/config.php

Contoh file config.php kaktus. Ganti nama database kaktus, pengguna dan kata sandi yang sesuai.

$database_type     = 'mysql';
$database_default  = 'cacti';
$database_hostname = 'localhost';
$database_username = 'cactiuser';
$database_password = 'password1;
$database_port     = '3306';
$database_ssl      = false;
$url_path = '/';

12. Selanjutnya, isi database kaktus dengan skrip cacti.sql dari direktori /var/www/html/ dengan mengeluarkan perintah di bawah ini.

mysql -u cactiuser cacti -p < /var/www/html/cacti.sql 

13. Sekarang instal beberapa sumber daya tambahan, karena mesin Cacti mengumpulkan data perangkat melalui protokol SNMP dan menampilkan grafik dengan menggunakan RRDtool. Instal semuanya dengan mengeluarkan perintah berikut.

apt install snmp snmpd snmp-mibs-downloader rrdtool

14. Verifikasi apakah layanan SNMP aktif dan berjalan dengan memulai ulang daemon snmpd dengan mengeluarkan perintah di bawah ini. Periksa juga status daemon snmpd dan port terbukanya.

systemctl restart snmpd.service 
systemctl status snmpd.service
ss -tulpn| grep snmp

Langkah 3: Unduh dan Instal Cacti-Spine

15. Cacti-Spine adalah pengganti tulisan C untuk poller cmd.php default. Cacti-Spine memberikan waktu eksekusi yang lebih cepat. Untuk mengkompilasi pooler Cacti-Spine dari sumber, instal dependensi yang diperlukan di bawah ini di sistem Anda.

---------------- On Debian 9 ---------------- 
apt install build-essential dos2unix dh-autoreconf help2man libssl-dev libmysql++-dev librrds-perl libsnmp-dev libmariadb-dev libmariadbclient-dev

---------------- On Ubuntu ---------------- 
apt install build-essential dos2unix dh-autoreconf help2man libssl-dev libmysql++-dev  librrds-perl libsnmp-dev libmysqlclient-dev libmysqld-dev  

16. Setelah Anda menginstal dependensi di atas, unduh arsip Cacti-Spine versi terbaru, ekstrak tarball dan kompilasi cacti-spine dengan mengeluarkan serangkaian perintah berikut .

wget https://www.cacti.net/downloads/spine/cacti-spine-latest.tar.gz
tar xfz cacti-spine-latest.tar.gz 
cd cacti-spine-1.1.27/

17. Kompilasi dan instal Cacti-Spine dari sumber dengan mengeluarkan perintah berikut.

./bootstrap 
./configure 
make
make install

18. Selanjutnya, pastikan biner tulang belakang dimiliki oleh akun root dan atur bit suid untuk utilitas tulang belakang dengan menjalankan perintah berikut.

chown root:root /usr/local/spine/bin/spine 
chmod +s /usr/local/spine/bin/spine

19. Sekarang, edit file konfigurasi Cacti Spine dan tambahkan nama database kaktus, pengguna dan kata sandi ke file Spine conf seperti yang diilustrasikan dalam contoh di bawah.

nano /usr/local/spine/etc/spine.conf

Tambahkan konfigurasi berikut ke file spine.conf.

DB_Host localhost
DB_Database cacti
DB_User cactiuser
DB_Pass password1
DB_Port 3306
DB_PreG 0

Langkah 4: Pengaturan Wizard Instalasi Cacti

20. Untuk menginstal Cacti, buka browser dan navigasikan ke alamat IP sistem atau nama domain Anda di URL berikut.

http://your_IP/install

Pertama, centang Setujui Perjanjian Lisensi dan tekan tombol Berikutnya untuk melanjutkan.

21. Selanjutnya, periksa persyaratan sistem dan tekan tombol Berikutnya untuk melanjutkan.

22. Di jendela berikutnya, pilih Server Utama Baru dan tekan tombol Berikutnya untuk melanjutkan.

23. Selanjutnya, verifikasi lokasi dan versi biner penting dan ubah jalur biner Spine ke /usr/local/spine/bin/spine. Setelah selesai, tekan tombol Berikutnya untuk melanjutkan.

24. Selanjutnya, periksa apakah semua izin direktori server web sudah ada (izin tulis telah disetel) dan tekan tombol Berikutnya untuk melanjutkan.

25. Pada langkah selanjutnya periksa semua template dan tekan tombol Selesai untuk menyelesaikan proses instalasi.

26. Masuk ke antarmuka web Cacti dengan kredensial default yang ditunjukkan di bawah dan ubah kata sandi admin, seperti yang diilustrasikan dalam tangkapan layar berikut.

Username: admin
Password: admin

27. Selanjutnya, buka Konsol -> Konfigurasi -> Pengaturan -> Poller dan ubah Jenis Poller dari cmd.php< ke biner Spine dan gulir ke bawah ke tombol Simpan untuk menyimpan konfigurasi.

28. Lalu, buka Konsol -> Konfigurasi -> Pengaturan -> Jalur dan tambahkan jalur berikut ke file konfigurasi Cacti-Spine:

/usr/local/spine/etc/spine.conf 

Tekan tombol Simpan untuk menerapkan konfigurasi.

29. Penyiapan terakhir yang memungkinkan poller Cacti mulai mengumpulkan data dari perangkat yang dipantau adalah menambahkan tugas crontab baru untuk melakukan kueri pada setiap perangkat melalui SNMP setiap 5 menit.

Tugas crontab harus dimiliki oleh akun www-data.

crontab -u www-data -e

Tambahkan entri file Cron:

*/5 * * * * /usr/bin/php /var/www/html/poller.php

30. Tunggu beberapa menit hingga Cacti mengumpulkan data dan buka Grafik -> Pohon Default dan Anda akan melihat grafik yang dikumpulkan untuk perangkat yang Anda pantau.

Itu saja! Anda telah berhasil menginstal dan mengonfigurasi Cacti dengan pooler Cacti-Spine, dari sumber, dalam rilis terbaru Debian 9 dan Ubuntu 16.04 server LTS.