Otu esi etinye Cacti na Cacti-Spine na Debian na Ubuntu


N'ime nkuzi a, anyị ga-amụta otu esi etinye ma hazie ngwaọrụ nlekota Cacti na ụdị Debian na Ubuntu 16.04 LTS kachasị ọhụrụ. A ga-ewu ma tinye Cacti site na faịlụ isi mmalite n'oge ntuziaka a.

Cacti bụ ngwa nleba anya nke mepere emepe emebere maka netwọkụ nleba anya, ọkachasị ngwaọrụ netwọkụ, dị ka switches, routers, sava site na SNMP protocol. Cacti na-emekọrịta ihe na ndị ọrụ njedebe na enwere ike ijikwa ya site na ngwa ngwa weebụ.

  1. Akụnyere LAMP Stack na Debian 9
  2. Akụnyere LAMP Stack na Ubuntu 16.04 LTS

Kwụpụ 1: Wụnye ma hazie ihe achọrọ maka Cacti

1. Na Debian 9, mepee faịlụ ndepụta isi mmalite maka edezi ma tinye ntinye aka na ebe nchekwa na-abụghị nke efu na faịlụ ahụ site na ịgbanwe ahịrị ndị a:

# nano /etc/apt/sources.list

Tinye ahịrị ndị a na faịlụ Source.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. E mesịa, jide n'aka na imelite usoro site n'inye iwu n'okpuru.

# apt update
# apt upgrade

3. Na nchịkọta LAMP gị jide n'aka na ndọtị PHP ndị a dị na sistemụ.

# 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. Na-esote, dezie faịlụ nhazi PHP ma gbanwee oge mpaghara mpaghara iji kwekọọ na ọnọdụ anụ ahụ nke ihe nkesa gị, site n'inye iwu dị n'okpuru.

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

5. Na-esote, banye na MariaDB ma ọ bụ MySQL nchekwa data site na nchịkọta LAMP gị ma mepụta nchekwa data maka ịwụnye Cacti site na ịnye iwu ndị a.

Dochie aha nchekwa data cacti, onye ọrụ na paswọọdụ iji dakọtara nhazi nke gị wee họrọ paswọọdụ siri ike maka nchekwa data cacti.

# 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. Ọzọkwa, nye iwu ndị dị n'okpuru ka ikwe ka onye ọrụ cacti họrọ ikike na MySQL data.timezone settings site n'inye iwu ndị dị n'okpuru.

# 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 [email '

7. Ọzọ, mepee faịlụ nhazi ihe nkesa MySQL ma gbakwunye ahịrị ndị a na njedebe nke faịlụ ahụ.

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

Tinye ahịrị ndị a na njedebe nke faịlụ 50-server.cnf ma ọ bụ 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

Maka nchekwa data MariaDB tinyekwara ahịrị a na njedebe nke faịlụ 50-server.cnf:

innodb_additional_mem_pool_size	= 80M

8. N'ikpeazụ, malitegharịa MySQL na ọrụ Apache iji tinye ntọala niile ma nyochaa ọnọdụ ọrụ abụọ ahụ site na ịnye iwu ndị a.

# systemctl restart mysql apache2
# systemctl status mysql apache2

Kwụpụ 2: Budata ma kwado nwụnye Cacti

9. Malite wụnye Cacti site na isi mmalite site na nbudata na wepụ ihe ọhụrụ Cacti Archive ma detuo faịlụ niile wepụ na mgbọrọgwụ akwụkwọ weebụ Apache, site n'inye iwu ndị a.

# 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. Wepụ faịlụ index.html site na/var/www/html ndekọ, mepụta Cacti log faịlụ ma nye Apache ikike ide akwụkwọ na ụzọ mgbọrọgwụ weebụ.

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

11. Na-esote, dezie faịlụ nhazi cacti ma gbanwee ahịrị ndị a dị ka egosiri na ihe atụ n'okpuru.

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

Cacti config.php faịlụ sample. Dochie aha nchekwa data cacti, onye ọrụ na paswọọdụ ya.

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

12. Na-esote, bipụta cacti nchekwa data na cacti.sql script si /var/www/html/ directory site n'inye iwu n'okpuru.

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

13. Ugbu a wụnye ụfọdụ ihe ndị ọzọ, dị ka Cacti engine na-anakọta data ngwaọrụ site na usoro SNMP ma gosipụta eserese site na iji RRDtool. Wụnye ha niile site n'inye iwu na-eso.

# apt install snmp snmpd snmp-mibs-downloader rrdtool

14. Nyochaa ma ọ bụrụ na ọrụ SNMP na-arụ ọrụ site na ịmalitegharị snmpd daemon site n'inye iwu dị n'okpuru. Leleekwa ọnọdụ snmpd daemon na ọdụ ụgbọ mmiri mepere emepe.

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

Kwụpụ 3: Budata ma wụnye Cacti-Spine

15. Cacti-Spine bụ onye nnọchi C edere maka ndabara cmd.php poller. Cacti-Spine na-enye oge igbu oge ngwa ngwa. Iji chịkọta Cacti-Spine pooler site na isi mmalite tinye ihe ndabere achọrọ na sistemụ gị.

---------------- 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  

.

# 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. Chịkọta ma wụnye Cacti-Spine site na isi mmalite site n'inye iwu ndị a.

# ./bootstrap 
# ./configure 
# make
# make install

18. Na-esote, jide n'aka na ọnụọgụ abụọ spine nwere site na akaụntụ mgbọrọgwụ wee debe suid bit maka ọrụ ọkpụkpụ azụ site na-agba ọsọ iwu ndị a.

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

19. Ugbu a, dezie faịlụ nhazi Cacti Spine ma tinye aha nchekwa data cacti, onye ọrụ na paswọọdụ na faịlụ Spine conf dị ka e gosipụtara na ihe atụ dị n'okpuru.

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

Tinye nhazi ndị a na faịlụ spine.conf.

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

Kwụpụ 4: Ntọala Ọkachamara nwụnye Cacti

20. Iji wụnye Cacti, mepee ihe nchọgharị wee gaa na adreesị IP sistemụ gị ma ọ bụ aha ngalaba na URL ndị a.

http://your_IP/install

Nke mbụ, lelee Agreement License Agreement wee pịa bọtịnụ na-esote ka ịga n'ihu.

21. Ọzọ, lelee ma ọ bụrụ na usoro chọrọ wee kụọ bọtịnụ ọzọ ka ịga n'ihu.

22. Na-esote window, họrọ New Primary Server na see na-esote button na-aga n'ihu.

23. Na-esote, nyochaa ọnọdụ ọnụọgụ abụọ dị egwu na nsụgharị ma gbanwee ụzọ ọnụọgụ abụọ Spine na/usr/local/spine/bin/spine. Mgbe ịmechara, pịa bọtịnụ ọzọ ka ịga n'ihu.

24. Na-esote, lelee ma ọ bụrụ na ikike ndekọ ndekọ ihe nkesa weebụ dị ebe (edebere ikikere ederede) wee pịa bọtịnụ na-esote ka ịga n'ihu.

25. Na nzọụkwụ ọzọ ịlele niile ndebiri na see na N'isi bọtịnụ ka rụchaa echichi usoro.

26. Banye na Cacti webụ interface na nzere ndabara egosiri n'okpuru wee gbanwee paswọọdụ nchịkwa, dị ka egosiri na nseta ihuenyo ndị a.

Username: admin
Password: admin

27. Ọzọ, gaa na Console -> Nhazi -> Ntọala -> Poller ma gbanwee Ụdị Poller site na cmd.php gaa na ọnụọgụ abụọ Spine wee gbadaa na bọtịnụ Chekwaa iji chekwaa nhazi ahụ.

28. Mgbe ahụ, gaa na Console -> Nhazi -> Ntọala -> Ụzọ ma tinye ụzọ na-esonụ na faịlụ nhazi Cacti-Spine:

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

Pịa bọtịnụ Chekwa ka itinye nhazi.

29. Ntọala ikpeazụ nke na-enyere Cacti poller aka ịmalite ịnakọta data sitere na ngwaọrụ ndị a na-enyocha bụ ịgbakwunye ọrụ crontab ọhụrụ iji jụọ ngwaọrụ ọ bụla site na SNMP kwa nkeji 5 ọ bụla.

Ọrụ crontab ga-abụ nke akaụntụ www-data nwe ya.

# crontab -u www-data -e

Tinye ntinye faịlụ Cron:

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

30. Chere nkeji ole na ole maka Cacti ịnakọta data wee gaa na Graphs -> Osisi ndabara ma ị ga-ahụ eserese anakọtara maka ngwaọrụ nyocha gị.

Ọ gwụla! Ị tinyela ma hazie Cacti na Cacti-Spine pooler, site na isi mmalite, na ntọhapụ ọhụrụ nke Debian 9 na Ubuntu 16.04 LTS nkesa.