Wụnye Cacti (Nleba anya netwọkụ) na RHEL/CentOS 8/7 na Fedora 30


Ngwá ọrụ Cacti bụ ihe nleba anya netwọkụ na-emepe emepe na usoro nleba anya usoro eserese maka azụmahịa IT. Cacti na-enyere onye ọrụ aka ịme ntuli aka n'oge ọ bụla iji mepụta eserese na data arụpụtara site na iji RRDtool. N'ozuzu, a na-eji ya na-esetịpụ data usoro oge nke metric dị ka oghere diski, wdg.

N'ime otu a, anyị ga-egosi gị otu esi etinye ma guzobe ngwa nlekota netwọkụ zuru oke nke a na-akpọ Cacti site na iji ngwaọrụ Net-SNMP na RHEL, CentOS na sistemụ Fedora site na iji ngwa njikwa ngwugwu DNF.

Cacti chọrọ ka etinyere ngwugwu ndị a na sistemụ arụmọrụ Linux gị dị ka RHEL/CentOS/Fedora.

  1. Apache : Sava webụ iji gosipụta eserese netwọkụ mepụtara site na PHP na RRDTool.
  2. MySQL : Ebe nchekwa data iji chekwaa ozi cacti.
  3. PHP : Modul script iji mepụta eserese site na iji RRDTool.
  4. PHP-SNMP : Mgbatị PHP maka SNMP iji nweta data.
  5. NET-SNMP : SNMP (Simple Network Management Protocol) na-eji jikwaa netwọkụ.
  6. RRDTool : Ngwa nchekwa data iji jikwaa na weghachite data usoro oge dị ka ibu CPU, bandwit netwọk, wdg.

Mara: Edere ntuziaka nwụnye ebe a dabere na nkesa Linux CentOS 7.5.

Ịwụnye ngwugwu achọrọ Cacti na RHEL/CentOS/Fedora

Nke mbụ, anyị kwesịrị ịwụnye ngwungwu ndabere otu-otu site na iji ngwa njikwa ngwugwu ndabara dị ka egosiri.

# 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 bụ ndụdụ nke obodo mepere emepe nke ọrụ nchekwa data MySQL ma na-enye nnọchi maka MySQL. Na mbụ nchekwa data gọọmentị akwadoro bụ MySQL n'okpuru RHEL/CentOS na Fedora.

N'oge na-adịbeghị anya, RedHat na-eme azụmahịa ọhụrụ site na MySQL gaa na MariaDB, dị ka MariaDB bụ mmejuputa nke MySQL na RHEL/CentOS 8/7 na Fedora 19 gaa n'ihu.

# 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

Na-enyocha Apache, MySQL, na Ọrụ SNMP

Ozugbo ị wụnyela sọftụwia niile achọrọ maka nrụnye Cacti, ka anyị bido ha n'otu n'otu site na iji iwu ndị a.

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

Hazie njikọ mmalite sistemụ

Ịhazi Apache, MySQL na SNMP Services ka ịmalite na buut.

 /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

Wụnye Cacti na RHEL/CentOS/Fedora

N'ebe a, ịkwesịrị ịwụnye ma mee ka ebe nchekwa EPEL rụọ ọrụ. Ozugbo ịmechara ebe nchekwa ahụ, pịnye iwu a ka ịwụnye ngwa Cacti.

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

Na-ahazi MySQL Server maka nwụnye Cacti

Anyị kwesịrị ịhazi MySQL maka Cacti, iji mee nke a, anyị kwesịrị ịchekwa ihe nkesa MySQL arụnyere ọhụrụ wee mepụta Cacti nchekwa data na onye ọrụ Cacti. Ọ bụrụ na ị bụ MySQL arụnyere na echekwara, mgbe ahụ ọ dịghị mkpa ime ya ọzọ.

# mysql_secure_installation

Jiri paswọọdụ emepụtara ọhụrụ banye na sava MySQL wee mepụta nchekwa data Cacti na onye ọrụ Cacti wee tọọ paswọọdụ maka ya.

 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

Chọpụta ụzọ faịlụ nchekwa data site na iji iwu RPM, iji wụnye tebụl cacti n'ime nchekwa data Cacti emepụtara ọhụrụ, jiri iwu na-esonụ.

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

Ugbu a, anyị nwere ebe Cacti.sql faịlụ, pịnye iwu na-esonụ iji wụnye tebụl, ebe a, ị kwesịrị pịnye Cacti njirimara paswọọdụ.

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

Mepee faịlụ a na-akpọ /etc/cacti/db.php na onye nchịkọta akụkọ ọ bụla.

# vi /etc/cacti/db.php

Mee mgbanwe ndị a ma chekwaa faịlụ ahụ. Gbaa mbọ hụ na ịtọọ paswọọdụ ziri ezi.

/* 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;

Na-ahazi Firewall maka 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

Na-ahazi sava Apache maka nwụnye Cacti

Mepee faịlụ a na-akpọ /etc/httpd/conf.d/cacti.conf na nhọrọ nchịkọta akụkọ gị.

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

Ịkwesịrị ịme ka ịnweta ngwa Cacti maka netwọkụ mpaghara gị ma ọ bụ kwa ọkwa IP. Dịka ọmụmaatụ, anyị enyela ohere ịnweta netwọkụ LAN mpaghara anyị 172.16.16.0/20. N'ọnọdụ gị, ọ ga-adị iche.

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

Na ụdị Apache kachasị ọhụrụ (dịka: Apache 2.4), ị nwere ike ịgbanwe dịka ntọala ndị a si dị.

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>

N'ikpeazụ, malitegharịa ọrụ Apache.

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

Ịtọlite Cron maka Cacti

Mepee faịlụ /etc/cron.d/cacti.

# vi /etc/cron.d/cacti

Uncomment na-esonụ ahịrị. Edemede poller.php na-agba 5mins ọ bụla wee na-anakọta data nke ndị ọbịa ama ama nke ngwa Cacti na-eji gosipụta eserese.

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

Na-arụ ọrụ nhazi Cacti Installer

N'ikpeazụ, Cacti dị njikere, naanị gaa na http://YOUR-IP-HERE/cacti/ ma soro ntuziaka installer site na ihuenyo ndị a. Tinye nkọwa nbanye ndabara wee pịa bọtịnụ Tinye.

User: admin
Password: admin

Ọzọ, gbanwee paswọọdụ Cacti ndabara.

Nabata nkwekọrịta ikike Cacti.

Na-esote, ihuenyo na-egosi Pre-installation Checks maka nrụnye Cacti, biko dozie ntọala ndị a tụrụ aro na faịlụ /etc/php.ini dị ka egosiri wee malitegharịa Apache mgbe emechara mgbanwe.

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

N'otu aka ahụ, ị kwesịrị ịnye ohere ịnweta MySQL TimeZone nchekwa data maka onye ọrụ Cacti, nke mere na nchekwa data jupụtara na ozi TimeZone zuru ụwa ọnụ.

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

Biko họrọ Ụdị nrụnye ka Nwụnye ọhụrụ.

Gbaa mbọ hụ na ikike ndekọ aha niile ndị a ziri ezi tupu ịga n'ihu.

Gbaa mbọ hụ na ebe ọnụọgụ ọnụọgụ abụọ ndị a dị oke egwu na ụkpụrụ ụdị dị mma tupu ịga n'ihu.

Biko họrọ Profaịlụ Isi mmalite Data ndabara nke a ga-eji maka isi mmalite ntuli aka.

Biko, họrọ ụdị ngwaọrụ ịchọrọ iji mgbe arụnyere Cacti.

Tọọ mkpokọta nkesa na faịlụ nhazi MySQL /etc/my.cnf n'okpuru ngalaba [mysqld] dị ka egosiri.

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

Ihe nkesa Cacti gị adịla njikere. Biko gosi na obi dị gị ụtọ ịga n'ihu.

Maka ozi ndị ọzọ na ojiji biko gaa na Cacti Page.