Cacti este un instrument gratuit și gratuit de monitorizare și grafică a rețelei de surse scrise în PHP. Cu ajutorul RRDtool (instrumentul bazei de date Round-Robin), Cacti poate fi utilizat pentru a oferi diferite caracteristici utile, inclusiv colecționari de date la distanță și locale, șablonarea graficului, descoperirea rețelei, automatizarea gestionării dispozitivelor etc.
Cerințe preliminare
Pasul 1: Configurați o stivă LAMP actualizată
Înainte de a putea instala și rula corect Cacti, trebuie să configurați o stivă LAMP sau un mediu de operare web echivalent.
Următoarele vor configura un stack LAMP actualizat pentru Cacti, care constă din CentOS 7, Apache 2.4, MariaDB 10.2 și PHP 7.1. Dacă doriți să aflați mai multe detalii despre stiva LAMP sau utilizați o altă stivă, consultați alte tutoriale Vultr .
# Install Apache 2.4
sudo yum install httpd -y
sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf
sudo systemctl start httpd.service
sudo systemctl enable httpd.service
# Install MariaDB 10.2
curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
sudo yum install MariaDB-server MariaDB-client -y
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
# Secure MariaDB 10.2
sudo /usr/bin/mysql_secure_installation
# When prompted, answer questions as below:
# - Enter current password for root (enter for none): Just press the Enter button
# - Set root password? [Y/n]: Y
# - New password: your-MariaDB-root-password
# - Re-enter new password: your-MariaDB-root-password
# - Remove anonymous users? [Y/n]: Y
# - Disallow root login remotely? [Y/n]: Y
# - Remove test database and access to it? [Y/n]: Y
# - Reload privilege tables now? [Y/n]: Y
# Create a MariaDB database for Cacti
mysql -u root -p
# For security purposes, be sure to replace "cacti", "cactiuser", and "yourpassword" with your own ones.
CREATE DATABASE cacti;
CREATE USER 'cactiuser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON cacti.* TO 'cactiuser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;
# Install required PHP 7.1 components for Cacti
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
sudo yum install -y mod_php71w php71w-process php71w-common php71w-pdo php71w-xml php71w-ldap php71w-mbstring php71w-gd php71w-snmp php71w-mysqlnd php71w-cli php71w-mcrypt php71w-opcache php71w-imap php71w-intl
sudo cp /etc/php.ini /etc/php.ini.bak
sudo sed -i 's#;date.timezone =#date.timezone = America/Los_Angeles#' /etc/php.ini
# Modify firewall rules
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
Pasul 2: Instalați alte dependențe necesare
Pe lângă configurarea unei stive LAMP practice, trebuie să instalați mai multe dependențe pentru Cacti după cum urmează.
sudo yum install -y net-snmp net-snmp-utils rrdtool
sudo systemctl start snmpd.service
sudo systemctl enable snmpd.service
Pasul 3: Pregătiți fișierele Cacti și baza de date
Descărcați și decomprimați arhiva Cacti 1.1.
cd
wget http://www.cacti.net/downloads/cacti-1.1.20.tar.gz
tar -zxvf cacti-1.1.20.tar.gz
Mutați fișierele Cacti într-o locație adecvată, creați logfișierul Cacti și apoi acordați-le permisiunile corespunzătoare.
sudo mv ~/cacti-1.1.20 /opt
sudo ln -s /opt/cacti-1.1.20 /var/www/html/cacti
sudo touch /opt/cacti-1.1.20/log/cacti.log
sudo chown -R apache:apache /opt/cacti-1.1.20
Importați informațiile despre fusul orar și datele Cacti în baza de date MariaDB pe care am configurat-o mai devreme.
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql
mysql -u root -p cacti < /var/www/html/cacti/cacti.sql
mysql -u root -p
# In the MySQL shell:
GRANT SELECT ON mysql.time_zone_name TO cactiuser@localhost IDENTIFIED BY 'yourpassword';
FLUSH PRIVILEGES;
EXIT;
Configurarea parametrilor Cacti.
Utilizați vieditorul pentru a deschide fișierul de configurare Cacti:
sudo vi /var/www/html/cacti/include/config.php
Asigurați-vă că parametrii de mai jos utilizează valori corecte.
$database_type = 'mysql';
$database_default = 'cacti';
$database_hostname = 'localhost';
$database_username = 'cactiuser';
$database_password = 'yourpassword';
$database_port = '3306';
$database_ssl = false;
$url_path = '/cacti/';
Salvează și închide.
:wq!
Configurați o lucrare cron pentru Cacti.
sudo crontab -u apache -e
Populați fișierul cu:
*/5 * * * * php /var/www/html/cacti/poller.php > /dev/null 2>&1
Salvează și închide.
:wq!
Pasul 4: Configurați o gazdă virtuală Apache pentru Cacti
Pentru a face ca Apache să servească Cacti, trebuie să configurați o gazdă virtuală Apache pentru Cacti după cum urmează.
Notă: Nu uitați să modificați valorile și ServerAdmin, în mod corespunzător ServerName, ServerAliaspe aparat.
cat <<EOF | sudo tee -a /etc/httpd/conf.d/cacti.conf
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/html/
ServerName cacti.example.com
ServerAlias www.cacti.example.com
<Directory /var/www/html/cacti/>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/httpd/cacti.example.com-error_log
CustomLog /var/log/httpd/cacti.example.com-access_log common
</VirtualHost>
EOF
Reporniți Apache pentru a pune în aplicare toate modificările.
sudo systemctl restart httpd.service
Pasul 5: Actualizați setările MariaDB
Pentru a oferi performanțe mai bune atunci când utilizați Cacti, trebuie să actualizați mai multe setări MariaDB cu valorile recomandate.
Copia de rezervă a /etc/my.cnffișierului și apoi utilizați vieditorul pentru a-l deschide:
sudo cp /etc/my.cnf /etc/my.cnf.bak
sudo vi /etc/my.cnf
Găsiți linia [client-server]și adăugați conținutul după cum se arată.
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
collation-server=utf8mb4_unicode_ci
init-connect='SET NAMES utf8mb4'
character-set-server = utf8mb4
max_heap_table_size=64M
tmp_table_size=80M
join_buffer_size=80M
innodb_buffer_pool_size=256M
innodb_doublewrite=OFF
innodb_flush_log_at_timeout=3
innodb_read_io_threads=32
innodb_write_io_threads=16
Salvează și închide.
:wq!
Reporniți MariaDB pentru a pune în aplicare toate modificările.
sudo systemctl restart mariadb.service
Pasul 6: Continuați instalarea Cacti folosind asistentul de instalare Cacti într-un browser web
Indicați-vă browser-ul web preferat http://203.0.113.1/cactiși veți fi introdus în Cacti Installation Wizardinterfață.
În License Agreementpagină, verificați Accept GPL License Agreementopțiunea, apoi faceți clic pe Nextbuton.
În Pre-installation Checkspagină, toate cerințele ar trebui să fie satisfăcute. Doar faceți clic pe Nextbuton pentru a continua.
În Installation Typepagină, alegeți New Primary Serveropțiunea, apoi faceți clic pe Nextbuton.
În Critical Binary Locations and Versionspagină, ignorați Spine Binary File Locationeroarea, deoarece nu am instalat deloc coloana vertebrală. Doar faceți clic pe Nextbuton pentru a continua.
În Directory Permission Checkspagină, asigurați-vă că toate directoarele specificate pot fi scrise, apoi faceți clic pe Nextbuton.
În Template Setuppagină, verificați Local Linux Machineopțiunea, apoi faceți clic pe Finishbutonul pentru a finaliza instalarea și treceți la interfața de logare.
Pe User Logininterfață, utilizați numele de utilizator implicit adminși parola implicită adminpentru a vă autentifica.
După conectare, vi se va cere să modificați parola imediat. Asigurați-vă că furnizați o parolă puternică care satisface toate cerințele solicitate.
Aceasta este totul pentru instalarea și configurarea Cacti. Mai târziu, ar trebui să configurați RRDtool în consecință, astfel încât Cacti să poată obține datele necesare pentru grafic.