Vyhledávání na webu

Jak nainstalovat Cacti s Cacti-Spine v Debianu a Ubuntu


V tomto tutoriálu se naučíme, jak nainstalovat a nakonfigurovat nástroj pro monitorování sítě Cacti v nejnovější verzi Debian a Ubuntu 16.04 LTS. Cacti budou sestaveny a nainstalovány ze zdrojových souborů během této příručky.

Cacti je open source monitorovací nástroj vytvořený pro monitorování sítí, zejména síťových zařízení, jako jsou přepínače, routery, servery prostřednictvím protokolu SNMP. Kaktusy komunikují s koncovými uživateli a lze je spravovat prostřednictvím webového rozhraní nástroje.

Požadavky

  1. LAMP Stack nainstalovaný v Debianu 9
  2. LAMP Stack nainstalovaný v Ubuntu 16.04 LTS

Krok 1: Nainstalujte a nakonfigurujte předpoklady pro Cacti

1. V Debianu 9 otevřete soubor se seznamem zdrojů pro úpravy a přidejte do něj úložiště contrib a non-free soubor změnou následujících řádků:

nano /etc/apt/sources.list

Přidejte následující řádky do souboru 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. Poté nezapomeňte aktualizovat systém zadáním níže uvedeného příkazu.

apt update
apt upgrade

3. V zásobníku LAMP se ujistěte, že jsou v systému přítomna následující rozšíření PHP.

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. Dále upravte konfigurační soubor PHP a změňte nastavení časového pásma tak, aby odpovídalo fyzickému umístění vašeho serveru, zadáním níže uvedeného příkazu.

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

5. Dále se přihlaste k databázi MariaDB nebo MySQL z instalace zásobníku LAMP a vytvořte databázi pro instalaci Cacti zadáním následujících příkazů.

Nahraďte název databáze kaktusů, uživatele a heslo tak, aby odpovídaly vašim vlastním konfiguracím, a zvolte silné heslo pro databázi 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. Vydáním níže uvedených příkazů také povolte uživateli kaktusů vybrat oprávnění k nastavení MySQL data.timezone zadáním níže uvedených příkazů.

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. Dále otevřete konfigurační soubor serveru MySQL a na konec souboru přidejte následující řádky.

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

Přidejte následující řádky na konec souboru 50-server.cnf nebo 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

Pro databázi MariaDB také přidejte následující řádek na konec souboru 50-server.cnf:

innodb_additional_mem_pool_size	= 80M

8. Nakonec restartujte služby MySQL a Apache, abyste použili všechna nastavení a ověřte stav obou služeb vydáním následujících příkazů.

systemctl restart mysql apache2
systemctl status mysql apache2

Krok 2: Stáhněte a připravte instalaci kaktusů

9. Spusťte instalaci Cacti ze zdrojů stažením a rozbalením nejnovější verze archivu Cacti a zkopírujte všechny extrahované soubory do kořenového adresáře webových dokumentů Apache zadáním následujících příkazů.

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. Odstraňte soubor index.html z adresáře /var/www/html, vytvořte soubor protokolu Cacti a udělte Apache oprávnění k zápisu na web kořenová cesta.

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

11. Dále upravte konfigurační soubor kaktusů a upravte následující řádky, jak je uvedeno v příkladu níže.

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

Ukázka souboru Cacti config.php. Podle toho nahraďte název databáze kaktusů, uživatele a heslo.

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

12. Dále naplňte databázi kaktusů skriptem cacti.sql z adresáře /var/www/html/ zadáním níže uvedeného příkazu.

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

13. Nyní nainstalujte nějaké další prostředky, protože modul Cacti shromažďuje data zařízení prostřednictvím protokolu SNMP a zobrazuje grafiku pomocí nástroje RRDtool. Nainstalujte je všechny zadáním následujícího příkazu.

apt install snmp snmpd snmp-mibs-downloader rrdtool

14. Ověřte, zda je služba SNMP spuštěna a spuštěna restartováním démona snmpd zadáním níže uvedeného příkazu. Zkontrolujte také stav démona snmpd a jeho otevřené porty.

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

Krok 3: Stáhněte a nainstalujte Cacti-Spine

15. Cacti-Spine je v jazyce C napsaná náhrada za výchozí pole cmd.php. Cacti-Spine poskytuje rychlejší dobu provedení. Chcete-li zkompilovat Cacti-Spine pooler ze zdrojů, nainstalujte do svého systému níže uvedené požadované závislosti.

---------------- 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. Po instalaci výše uvedených závislostí si stáhněte nejnovější verzi archivu Cacti-Spine, rozbalte tarball a zkompilujte cacti-spine zadáním následující řady příkazů .

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. Zkompilujte a nainstalujte Cacti-Spine ze zdrojů zadáním následujících příkazů.

./bootstrap 
./configure 
make
make install

18. Dále se ujistěte, že binární soubor páteře je vlastněn účtem root a nastavte bit suid pro obslužný program páteře spuštěním následujících příkazů.

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

19. Nyní upravte konfigurační soubor Cacti Spine a přidejte název databáze kaktusů, uživatele a heslo do souboru Spine conf, jak je znázorněno v příkladu níže.

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

Přidejte následující konfiguraci do souboru spine.conf.

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

Krok 4: Nastavení průvodce instalací kaktusů

20. Chcete-li nainstalovat Cacti, otevřete prohlížeč a přejděte na adresu IP systému nebo název domény na následující adrese URL.

http://your_IP/install

Nejprve zaškrtněte Přijmout licenční smlouvu a pokračujte stisknutím tlačítka Další.

21. Dále zkontrolujte systémové požadavky a pokračujte stisknutím tlačítka Další.

22. V dalším okně vyberte Nový primární server a pokračujte stisknutím tlačítka Další.

23. Dále ověřte kritická binární umístění a verze a změňte binární cestu Spine na /usr/local/spine/bin/spine. Po dokončení pokračujte stisknutím tlačítka Další.

24. Dále zkontrolujte, zda jsou všechna oprávnění k adresáři webového serveru nastavena (oprávnění k zápisu jsou nastavena) a pokračujte stisknutím tlačítka Další.

25. V dalším kroku zkontrolujte všechny šablony a kliknutím na tlačítko Dokončit dokončete proces instalace.

26. Přihlaste se do webového rozhraní Cacti pomocí výchozích přihlašovacích údajů uvedených níže a změňte heslo správce, jak je znázorněno na následujících snímcích obrazovky.

Username: admin
Password: admin

27. Dále přejděte na Konzola -> Konfigurace -> Nastavení -> Poller a změňte Typ pollera z cmd.php< na Spine binární a přejděte dolů na tlačítko Uložit pro uložení konfigurace.

28. Poté přejděte na Console -> Configuration -> Settings -> Paths a přidejte následující cestu do konfiguračního souboru Cacti-Spine:

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

Chcete-li použít konfiguraci, klikněte na tlačítko Uložit.

29. Konečné nastavení, které umožňuje Cacti poller začít shromažďovat data z monitorovaných zařízení, je přidat novou úlohu crontab, aby bylo možné každých 5 minut dotazovat každé zařízení přes SNMP.

Úloha crontab musí být vlastněna účtem www-data.

crontab -u www-data -e

Přidat záznam souboru Cron:

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

30. Počkejte několik minut, než Cacti shromáždí data, a přejděte do Grafy -> Výchozí strom a měli byste vidět grafy shromážděné pro vaše monitorovaná zařízení.

To je vše! Úspěšně jste nainstalovali a nakonfigurovali Cacti s Cacti-Spine pooler ze zdrojů v nejnovější verzi Debian 9 a Ubuntu 16.04 LTSserver.