Installer Cacti (Nettverksovervåking) på RHEL/CentOS 8/7 og Fedora 30


Cacti-verktøyet er en åpen kildekode, nettbasert grafisk løsning for nettverksovervåking og systemovervåking for IT-bedrifter. Kaktuser gjør det mulig for en bruker å polle tjenester med jevne mellomrom for å lage grafer på resulterende data ved å bruke RRDtool. Vanligvis brukes den til å tegne tidsseriedata for beregninger som diskplass osv.

I denne fremgangsmåten skal vi vise deg hvordan du installerer og setter opp en komplett nettverksovervåkingsapplikasjon kalt Cacti ved å bruke Net-SNMP-verktøyet på RHEL-, CentOS- og Fedora-systemer ved å bruke DNF-pakkebehandlingsverktøyet.

Cacti krevde at følgende pakker ble installert på dine Linux-operativsystemer som RHEL/CentOS/Fedora.

  1. Apache : En webserver for å vise nettverksgrafer laget av PHP og RRDTool.
  2. MySQL : En databaseserver for å lagre kaktusinformasjon.
  3. PHP : En skriptmodul for å lage grafer ved hjelp av RRDTool.
  4. PHP-SNMP : En PHP-utvidelse for SNMP for å få tilgang til data.
  5. NET-SNMP: En SNMP (Simple Network Management Protocol) brukes til å administrere nettverket.
  6. RRDTool : Et databaseverktøy for å administrere og hente tidsseriedata som CPU-belastning, nettverksbåndbredde osv.

Merk: Installasjonsinstruksjonene som ble vist her er skrevet basert på CentOS 7.5 Linux-distribusjon.

Installere Cacti Required Packages på RHEL/CentOS/Fedora

Først må vi installere følgende avhengighetspakker én etter én ved å bruke standard pakkebehandlingsverktøy som vist.

# yum install httpd httpd-devel   [On RHEL/CentOS 7/6]
# dnf install httpd httpd-devel   [On RHEL/CentOS 8 and Fedora 30]
# yum install mysql mysql-server      [On RHEL/CentOS 6]

MariaDB er en fellesskapsutviklet gaffel av MySQL-databaseprosjektet og gir en erstatning for MySQL. Tidligere var den offisielle støttede databasen MySQL under RHEL/CentOS og Fedora.

Nylig foretok RedHat en ny transaksjon fra MySQL til MariaDB, ettersom MariaDB er standardimplementeringen av MySQL i RHEL/CentOS 8/7 og Fedora 19 og utover.

# yum install mariadb-server -y		[On RHEL/CentOS 7]
# dnf install mariadb-server -y         [On RHEL/CentOS 8 and Fedora 30]
# yum install php-mysql php-pear php-common php-gd php-devel php php-mbstring php-cli
OR
# dnf install php-mysql php-pear php-common php-gd php-devel php php-mbstring php-cli
# yum install php-snmp
OR
# dnf install php-snmp         
# yum install net-snmp-utils net-snmp-libs
OR
# dnf install net-snmp-utils net-snmp-libs
# yum install rrdtool
OR
# dnf install rrdtool

Stirrer Apache-, MySQL- og SNMP-tjenester

Når du har installert all nødvendig programvare for Cacti-installasjon, la oss starte dem en etter en ved å bruke følgende kommandoer.

 service httpd start
 service mysqld start
 service snmpd start
 systemctl start httpd.service
 systemctl start mariadb.service
 systemctl start snmpd.service

Konfigurer systemoppstartskoblinger

Konfigurerer Apache-, MySQL- og SNMP-tjenester for å starte ved oppstart.

 /sbin/chkconfig --levels 345 httpd on
 /sbin/chkconfig --levels 345 mysqld on
 /sbin/chkconfig --levels 345 snmpd on
 systemctl enable httpd.service
 systemctl enable mariadb.service
 systemctl enable snmpd.service

Installer Cacti på RHEL/CentOS/Fedora

Her må du installere og aktivere EPEL Repository. Når du har aktivert depotet, skriv inn følgende kommando for å installere Cacti-applikasjonen.

# yum install cacti         [On RHEL/CentOS 7]
# dnf install cacti         [On RHEL/CentOS 8 and Fedora 30]

Konfigurere MySQL-server for kaktusinstallasjon

Vi må konfigurere MySQL for Cacti, for å gjøre dette må vi sikre en nyinstallert MySQL-server og deretter oppretter vi Cacti-database med brukeren Cacti. Hvis MySQL allerede er installert og sikret, trenger du ikke å gjøre det igjen.

# mysql_secure_installation

Logg inn på MySQL-serveren med et nyopprettet passord og opprett Cacti-database med brukeren Cacti og angi passordet for det.

 mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.1.73 Source distribution
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> create database cacti;
Query OK, 1 row affected (0.00 sec)

mysql> GRANT ALL ON cacti.* TO [email  IDENTIFIED BY 'tecmint';
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> quit;
Bye
 mysql -u root -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 5.5.41-MariaDB MariaDB Server
Copyright (c) 2000, 2014, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database cacti;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> GRANT ALL ON cacti.* TO [email  IDENTIFIED BY 'tecmint';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> FLUSH privileges;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> quit;
Bye

Finn ut databasefilbanen ved å bruke RPM-kommandoen, for å installere kaktustabeller i den nyopprettede kaktusdatabasen, bruk følgende kommando.

# rpm -ql cacti | grep cacti.sql
/usr/share/doc/cacti-1.2.6/cacti.sql
OR
/usr/share/doc/cacti/cacti.sql

Nå har vi av plasseringen av Cacti.sql-filen, skriv inn følgende kommando for å installere tabeller, her må du skrive inn Cacti-brukerpassordet.

 mysql -u cacti -p cacti < /usr/share/doc/cacti-0.8.8b/cacti.sql
Enter password:

Åpne filen som heter /etc/cacti/db.php med en hvilken som helst editor.

# vi /etc/cacti/db.php

Gjør følgende endringer og lagre filen. Pass på at du angir passordet riktig.

/* make sure these values reflect your actual database/host/user/password */
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";
$database_password = "your-password-here";
$database_port = "3306";
$database_ssl = false;

Konfigurere brannmur for Cacti

 iptables -A INPUT -p udp -m state --state NEW --dport 80 -j ACCEPT
 iptables -A INPUT -p tcp -m state --state NEW --dport 80 -j ACCEPT
 service iptables save
 firewall-cmd --permanent --zone=public --add-service=http
 firewall-cmd --reload

Konfigurere Apache Server for Cacti-installasjon

Åpne filen som heter /etc/httpd/conf.d/cacti.conf med ditt valg av editor.

# vi /etc/httpd/conf.d/cacti.conf

Du må aktivere tilgang til Cacti-applikasjonen for ditt lokale nettverk eller per IP-nivå. For eksempel har vi aktivert tilgang til vårt lokale LAN-nettverk 172.16.16.0/20. I ditt tilfelle ville det vært annerledes.

Alias /cacti    /usr/share/cacti
 
<Directory /usr/share/cacti/>
        Order Deny,Allow
        Deny from all
        Allow from 172.16.16.0/20
</Directory>

I den nyeste versjonen av Apache (f.eks. Apache 2.4), må du kanskje endre i henhold til følgende innstillinger.

Alias /cacti    /usr/share/cacti

<Directory /usr/share/cacti/>
        <IfModule mod_authz_core.c>
                # httpd 2.4
                Require all granted
        </IfModule>
        <IfModule !mod_authz_core.c>
                # httpd 2.2
                Order deny,allow
                Deny from all
                Allow from all
        </IfModule>
</Directory>

Til slutt, start Apache-tjenesten på nytt.

 service httpd restart				[On RHEL/CentOS 6 and Fedora 18-12]
 systemctl restart httpd.service		[On RHEL/CentOS 8/7 and Fedora 19 onwards]

Innstilling av Cron for kaktuser

Åpne filen /etc/cron.d/cacti.

# vi /etc/cron.d/cacti

Fjern kommentarer på følgende linje. Poller.php-skriptet kjører hvert 5. minutt og samler inn data fra kjente verter som brukes av Cacti-applikasjonen for å vise grafer.

#*/5 * * * *    cacti   /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1

Kjører Cacti Installer Setup

Endelig er Cacti klar, bare gå til http://DIN-IP-HER/cacti/ og følg installasjonsinstruksjonen gjennom følgende skjermbilder. Skriv inn standard påloggingsdetaljer og trykk Enter-knappen.

User: admin
Password: admin

Deretter endrer du standard Cacti-passord.

Godta Cacti-lisensavtalen.

Deretter viser skjermen forhåndsinstallasjonssjekker for Cacti-installasjon, vennligst korriger de foreslåtte innstillingene i /etc/php.ini-filen som vist og start Apache på nytt etter å ha gjort endringer.

memory_limit = 800M
max_execution_time = 60
date.timezone = Asia/Kolkata

På samme måte må du også gi tilgang til MySQL TimeZone-databasen for brukeren Cacti, slik at databasen fylles med global TimeZone-informasjon.

mysql> use mysql;
mysql> GRANT SELECT ON mysql.time_zone_name TO [email ;
mysql> flush privileges;

Vennligst velg installasjonstype som Ny installasjon.

Sørg for at alle følgende katalogtillatelser er riktige før du fortsetter.

Sørg for at alle disse kritiske binære plasseringer og versjoner er riktige før du fortsetter.

Velg standard datakildeprofil som skal brukes for avstemningskilder.

Vennligst velg enhetsmalene du ønsker å bruke etter Cacti-installasjonen.

Sett Server Collation i MySQL-konfigurasjonsfilen /etc/my.cnf under [mysqld]-delen som vist.

[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci

Din Cacti Server er nesten klar. Vennligst bekreft at du er glad for å fortsette.

For mer informasjon og bruk, besøk kaktussiden.