Kuinka asentaa Cacti Cacti-Spinellä Debianissa ja Ubuntussa


Tässä opetusohjelmassa opimme asentamaan ja määrittämään Cacti-verkonvalvontatyökalun Debianin ja Ubuntu 16.04 LTS:n uusimmassa versiossa. Kaktukset rakennetaan ja asennetaan lähdetiedostoista tämän oppaan aikana.

Cacti on avoimen lähdekoodin valvontatyökalu, joka on luotu verkkojen, erityisesti verkkolaitteiden, kuten kytkimien, reitittimien ja palvelimien, valvontaan SNMP-protokollan kautta. Kaktukset ovat vuorovaikutuksessa loppukäyttäjien kanssa, ja niitä voidaan hallita verkkotyökalurajapinnan kautta.

Vaatimukset

  1. LAMP-pino asennettu Debian 9:ään
  2. LAMP Stack asennettuna Ubuntu 16.04 LTS:ään

Vaihe 1: Asenna ja määritä kaktusten edellytykset

1. Debian 9:ssä avaa lähdeluettelotiedosto muokattavaksi ja lisää contrib- ja non-free -tietovarastot tiedosto muuttamalla seuraavat rivit:

nano /etc/apt/sources.list

Lisää seuraavat rivit sources.list-tiedostoon.

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. Muista tämän jälkeen päivittää järjestelmä antamalla alla oleva komento.

apt update
apt upgrade

3. Varmista LAMP-pinossasi, että järjestelmässä on seuraavat PHP-laajennukset.

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. Muokkaa seuraavaksi PHP-määritystiedostoa ja muuta aikavyöhykeasetusta vastaamaan palvelimesi fyysistä sijaintia antamalla alla oleva komento.

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

5. Kirjaudu seuraavaksi sisään MariaDB- tai MySQL-tietokantaan LAMP-pinoasennuksesta ja luo tietokanta Cacti-asennusta varten. > antamalla seuraavat komennot.

Vaihda kaktustietokannan nimi, käyttäjä ja salasana vastaamaan omia kokoonpanojasi ja valitse vahva salasana kaktustietokantaan.

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. Anna myös alla olevat komennot, jotta kaktuskäyttäjät voivat valita MySQL:n data.timezone-asetuksen käyttöoikeudet antamalla alla olevat komennot.

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. Avaa seuraavaksi MySQL-palvelimen määritystiedosto ja lisää seuraavat rivit tiedoston loppuun.

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

Lisää seuraavat rivit 50-server.cnf- tai mysqld.cnf-tiedoston loppuun.

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

MariaDB-tietokannan osalta lisää myös seuraava rivi 50-server.cnf-tiedoston loppuun:

innodb_additional_mem_pool_size	= 80M

8. Käynnistä lopuksi MySQL- ja Apache-palvelut uudelleen ottaaksesi kaikki asetukset käyttöön ja varmistaaksesi molempien palvelujen tilan antamalla seuraavat komennot.

systemctl restart mysql apache2
systemctl status mysql apache2

Vaihe 2: Lataa ja valmistele Cacti-asennus

9. Aloita Cactin asennus lähteistä lataamalla ja purkamalla Cacti-arkiston uusin versio ja kopioi kaikki otetiedostot Apache-verkkodokumentin juureen antamalla seuraavat komennot.

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. Poista index.html-tiedosto hakemistosta /var/www/html, luo Cacti-lokitiedosto ja myönnä Apachelle kirjoitusoikeudet verkkoon juuripolku.

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

11. Muokkaa seuraavaksi kaktusasetustiedostoa ja muokkaa seuraavia rivejä alla olevan esimerkin mukaisesti.

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

Cacti-tiedostonäyte config.php. Vaihda kaktustietokannan nimi, käyttäjä ja salasana vastaavasti.

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

12. Täytä seuraavaksi kaktustietokanta cacti.sql-komentosarjalla /var/www/html/-hakemistosta antamalla alla oleva komento.

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

13. Asenna nyt lisäresursseja, sillä Cacti-moottori kerää laitetietoja SNMP-protokollan kautta ja näyttää grafiikkaa RRDtoolin avulla. Asenna ne kaikki antamalla seuraava komento.

apt install snmp snmpd snmp-mibs-downloader rrdtool

14. Varmista, että SNMP-palvelu on käytössä käynnistämällä snmpd-daemon uudelleen antamalla alla oleva komento. Tarkista myös snmpd-daemonin tila ja sen avoimet portit.

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

Vaihe 3: Lataa ja asenna Cacti-Spine

15. Cacti-Spine on C-kirjoitettu korvike oletusarvoiselle cmd.php -pollerille. Cacti-Spine tarjoaa nopeamman suoritusajan. Kääntääksesi Cacti-Spine poolerin lähteistä, asenna alla vaaditut riippuvuudet järjestelmääsi.

---------------- 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. Kun olet asentanut yllä olevat riippuvuudet, lataa Cacti-Spine-arkiston uusin versio, pura tarball ja käännä cacti-spine antamalla seuraavat komentosarjat .

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. Käännä ja asenna Cacti-Spine lähteistä antamalla seuraavat komennot.

./bootstrap 
./configure 
make
make install

18. Varmista seuraavaksi, että spine-binary on juuritilin omistuksessa, ja aseta spine-apuohjelman suid-bitti suorittamalla seuraavat komennot.

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

19. Muokkaa nyt Cacti Spine -määritystiedostoa ja lisää kaktustietokannan nimi, käyttäjä ja salasana Spine conf -tiedostoon alla olevan esimerkin mukaisesti.

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

Lisää seuraavat asetukset spine.conf-tiedostoon.

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

Vaihe 4: Cacti Installation Wizard -asennus

20. Asenna Cacti avaamalla selain ja siirtymällä järjestelmän IP-osoitteeseen tai verkkotunnuksen nimeen seuraavassa URL-osoitteessa.

http://your_IP/install

Valitse ensin Hyväksy käyttöoikeussopimus ja jatka painamalla Seuraava-painiketta.

21. Tarkista seuraavaksi järjestelmävaatimukset ja jatka painamalla Seuraava-painiketta.

22. Valitse seuraavassa ikkunassa Uusi ensisijainen palvelin ja jatka painamalla Seuraava-painiketta.

23. Tarkista seuraavaksi kriittiset binäärisijainnit ja -versiot ja muuta Spine-binääripoluksi /usr/local/spine/bin/spine. Kun olet valmis, jatka painamalla Seuraava-painiketta.

24. Tarkista seuraavaksi, että kaikki verkkopalvelimen hakemistooikeudet ovat paikoillaan (kirjoitusoikeudet on asetettu), ja jatka painamalla Seuraava-painiketta.

25. Tarkista seuraavassa vaiheessa kaikki mallit ja paina Valmis-painiketta asennuksen viimeistelemiseksi.

26. Kirjaudu sisään Cactin verkkokäyttöliittymään alla näytetyillä oletustunnuksilla ja vaihda järjestelmänvalvojan salasana seuraavien kuvakaappausten mukaisesti.

Username: admin
Password: admin

27. Siirry seuraavaksi kohtaan Console -> Configuration -> Settings -> Poller ja vaihda Poller Type -arvoksi cmd.php<. Spine-binääriin ja vieritä alas Tallenna-painikkeeseen tallentaaksesi asetukset.

28. Siirry sitten kohtaan Konsoli -> Määritykset -> Asetukset -> Polut ja lisää seuraava polku Cacti-Spine-määritystiedostoon:

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

Ota määritykset käyttöön painamalla Tallenna-painiketta.

29. Viimeinen asetus, jonka avulla Cacti poller voi alkaa kerätä tietoja valvotuista laitteista, on lisätä uusi crontab-tehtävä, jotta jokaiselle laitteelle voidaan tehdä kysely SNMP:n kautta 5 minuutin välein.

Crontab-työn on oltava www-data-tilin omistuksessa.

crontab -u www-data -e

Lisää Cron-tiedosto:

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

30. Odota muutama minuutti, että Cacti kerää tietoja, ja siirry kohtaan Kaaviot -> Oletuspuu, jolloin sinun pitäisi nähdä valvotuista laitteistasi kerätyt kaaviot.

Siinä kaikki! Olet onnistuneesti asentanut ja määrittänyt Cactin ja Cacti-Spine pooler, lähteistä, uusimmassa Debian 9- ja Ubuntu 16.04 -julkaisussa. LTS-palvelin.