Skip to main content

Hướng dẫn cài đặt và cấu hình Cacti trên CentOS

26,November 2016
Hướng dẫn cài đặt và cấu hình Cacti trên CentOS

Hướng dẫn cài đặt và cấu hình Cacti trên CentOS . Trong bài lab này chúng ta sẽ cùng nhau tìm hiển về hệ thống monitoring Cacti được thiết kế để giám sát hệ thống máy chủ và các thiết bị mạng. Cacti là phần mền open source có thể cài đặt trên Window và Linux. Cacti được viết trên ngôn ngữ PHP và Perl, MySQL và sử dụng giao diện web để quản trị , để cài đặt Cacti chúng ta phải sử dụng web server hộ trợ PHP và MySQL

Mô hình bài Lab:

  • Monitoring server ( cài đặt và cấu hình Cacti ): IP 172.16.20.10 
  • Giám sát Linux Server : IP 172.16.20.20  enable SNMP v2, community string : public
  • Giám sát Windows Server: IP 172.16.20.48  enable SNMP v2, community string : public
  • Giám sát Router: IP 172.16.20.100/24 enable SNMP v2, community string : public

I. Cài đặt Cacti

Bước 1: Cài đặt web server ( cài đặt Apache, PHP, MySQL ) 

yum -y install httpd httpd-devel mysql mysql-server php-mysql php-pear php-common php-gd php-devel php php-mbstring php-cli php-mysql php-snmp

Bước 2: Cài đặt SNMP và RRD Tool để giám sát và vẽ đồ thị

yum -y install net-snmp-utils net-snmp-libs php-pear-Net-SMTP rrdtool

Bước 3: Cấu hình Apache, MySQL  chuận bị cho quá trình cài đặt Cacti 

+ Cấu hình cho phép các dịch vụ tự khởi động khi server khởi động và start các service  

chkconfig httpd on 
chkconfig mysqld on
chkconfig snmpd on 

service httpd start
service mysqld start
service snmpd start

+ Cấu hình tạo mysql account và database cho quá trình cài đặt cacti

  • Chạy mysql script để tạo password cho account root của database MySQL và remove anonymous account cũng như test database 
    [root@centos6 ~]# /usr/bin/mysql_secure_installation
    Enter current password for root (enter for none):      //mặc định chưa set pasword ta nhấn enter
    Set root password? [Y/n] Y
    Remove anonymous users? [Y/n] Y
    Disallow root login remotely? [Y/n] n
    Remove test database and access to it? [Y/n] Y
    Reload privilege tables now? [Y/n] Y

     

  • Tạo account và database cacti sau đó cấp quyền cho cacti mysql account to toàn quyền trên database cacti bằng MySQL root account 
    [root@centos6 ~]# mysql -uroot -p
    Enter password:
    
    mysql> CREATE USER 'cacti'@'localhost' IDENTIFIED BY 'password';
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> GRANT ALL ON cacti.* TO 'cacti'@'localhost';
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> FLUSH PRIVILEGES;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> exit
    

     

Bước 4: Cài đặt Cacti 

+ Các bạn vào trang http://www.cacti.net để download gói Cacti mới nhất trong mục Latest Files về giải nén trong thư mục /var/www/html

cd /var/www/html/ 
wget http://www.cacti.net/downloads/cacti-0.8.8h.tar.gz
tar -xzvf cacti-0.8.8h.tar.gz
mv cacti-0.8.8h cacti

+ Import database mẫu cho "cacti" database tạo trước đó 

mysql –u root –p cacti < /var/www/html/cacti/cacti.sql  //(Nhập password root MySQL)

+ Chỉnh sửa username & password trong file cấu hình của cacti 

vim /var/www/html/cacti/include/config.php
/* make sure these values refect your actual database/host/user/password */
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";
$database_password = "password";
$database_port = "3306";
$database_ssl = false;

+ Truy cập địa chỉ http://172.16.20.10/cacti để tiến hành cài đặt -> chọn "next"

Cài đặt và cấu hình Cacti trên CentOS

 

Cài đặt và cấu hình Cacti trên CentOS

+ Kiểm tra xem có lỗi thiết package không. Nếu không lỗi click "Next"

Cài đặt và cấu hình Cacti trên CentOS

+ Login băng account mặc định user: admin  password: admin 

Cài đặt và cấu hình Cacti trên CentOS

+ Đổi password cho account admin tại lần đăng nhập đầu tiên

Cài đặt và cấu hình Cacti trên CentOS

+ Hiển thị kết quả 

Cài đặt và cấu hình Cacti trên CentOS

+ Chuyển qua tab "graphs" ta thấy lỗi hiển thị đồ thị trên Cacti. 

Cài đặt và cấu hình Cacti trên CentOS

+ Để khắc phục lỗi đồ thị trên. Chúng ta cần cấu hình Cacti cứ 5 minutes sẽ thu thập thông tin và lưu trong rrd files. Lúc này trên "Graphs" tab sẽ hiển thị đồ họa dựa trên những thông tin thu thập được trong rrd files trong thư mục "/var/www/html/cacti/rra". Bây giờ chúng ta tiến hành cấu hình cứ 5 phút sẽ thu thập thông tin về các thiết bị cần theo dõi bằng php script "/var/www/html/cacti/poller.php" với user account cacti từ CentOS server 

[root@centos6 ~]# useradd cacti
[root@centos6 ~]# passwd cacti

+ Tạo crontab cho account cacti sẽ thu thập dữ liệu 5 phút 1 lần và đẩy dư liệu về thư mục "/var/www/html/cacti/rra"

crontab -u cacti -e
*/5 * * * * /usr/bin/php /var/www/html/cacti/poller.php

+ Change permission cho thư mục "/var/www/html/cacti/rra" và log file

chown cacti /var/www/html/cacti/rra
chown cacti /var/www/html/cacti/log/cacti.log

+ Chỉnh lại timezone trong file php.ini 

vim /etc/php.ini
/* change timezone to "Asia/Ho_Chi_Minh" */
date.timezone = "Asia/Ho_Chi_Minh"

+ Khởi động lại service apache và khởi tạo dữ liệu thu thập lần đầu bằng account cacti

service httpd restart 
su - cacti 
/usr/bin/php /var/www/html/cacti/poller.php

+ Truy cập lại địa chỉ http://172.16.20.10/cacti/graph_view.php để kiểm tra 

Cài đặt và cấu hình Cacti trên CentOS

+ Tới đây chúng ta đã kết thúc quá trình cài đặt Cacti trên CentOS. Phần tiếp theo chúng ta sẽ cấu hình monitoring các thiết bị trong mạng 

II. Cấu hình Cacti   

1. Giám sát Linux Server bằng SNMP ( IP 172.16.20.20 ) 

+ Cài đặt và cấu hình SNMP trên Linux Server CentOS ( IP: 172.16.20.20 ) cần theo dõi

yum -y install net-snmp-utils net-snmp

+ Cấu hình SNMP string community trong file /etc/snmp/snmpd.conf

cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.org
vim /etc/snmp/snmpd.conf
/* thêm string community snmp */
rocommunity public

+ Khởi động SNMP service 

chkconfig snmpd on 
service snmpd start 

+ Thêm thiết bị cần theo dõi vào Cacti site : Chọn Device -> Add 

Cài đặt và cấu hình Cacti trên CentOS

+ Tạo đồ thị trên Linux Server vừa thêm -> chọn " Create Graphs for this Host "

Cài đặt và cấu hình Cacti trên CentOS

+ Tạo Graph Templates muốn theo dõi như "network interface - eth0, Memory, Load ..." . Chọn và click "Create"

Cài đặt và cấu hình Cacti trên CentOS

+ Vào mục "Graph Trees" để tạo Graph Trees mới. "Name: Linux Servers" -> chọn "Create"

Cài đặt và cấu hình Cacti trên CentOS

+ Thêm CentOS6 vào "Graph Trees" Linux Server vừa tạo . Chọn Graph Trees -> Linux Servers . Trong mục Tree Items chọn  Add 

Cài đặt và cấu hình Cacti trên CentOS

+ Kiểm tra hiển thị dữ liệu trên đồ thị. Chọn " graphs -> Linux Servers -> Host: Linux - CentOS6 "

Cài đặt và cấu hình Cacti trên CentOS

+ Đến đây chúng ta đã kết thúc quá trình add Linux Server cần theo dõi vào Cacti. Phần tiếp chúng ta sẽ làm trên Windows 

2. Giám sát Windows Server bằng SNMP

+ Đầu tiên chúng ta cần cài đặt dịch vụ SNMP và cấu hình community string cho SNMP service. Để cài đặt SNMP service . Chọn Add Roles and Feature Wizard -> Next đến mục Features tích vào mục " SNMP Service " -> chọn Next để cài đặt sau đó vào services.msc và cấu hình community string và trap server như bên dưới

Cài đặt và cấu hình Cacti trên CentOSCài đặt và cấu hình Cacti trên CentOS

 

Cài đặt và cấu hình Cacti trên CentOS

+ Enable SNMP services automatically

Cài đặt và cấu hình Cacti trên CentOS

+ Bước tiếp theo, add Windows Server 2012 vào Cacti site: Vào console -> chọn Console -> Device -> Add. Thêm thông tin như bên dưới chọn "Create" 

Cài đặt và cấu hình Cacti trên CentOS

+ Ở mục  "Associated Graph Templates"  "Associated Data Queries" chúng ta add lần lượt như hình bên dưới -> Xong click save

Cài đặt và cấu hình Cacti trên CentOS

+ Tiếp theo chúng ta tạo Graph Templates cho Windows Server host ở trên . Chọn "Device -> Windows Server 2012"  . Click "Create Graphs for this Host"

Cài đặt và cấu hình Cacti trên CentOS

+ Tích vào những service bạn muốn monitor như card mạng, memory, cpu ... từ Windows Server 2012 host -> click "Create"

Cài đặt và cấu hình Cacti trên CentOS

+ Tạo "Graph Trees"  . Chọn console -> Graph Trees -> Add . Thêm thông tin "Name: Windows Servers " -> click "Creae"

Cài đặt và cấu hình Cacti trên CentOS

+ Thêm Windows Hosts cần giám sát vào "Graph Trees" Windows Servers . Chọn "Console -> Graph Trees -> Windows Servers. Dưới Tree Items -> click "Add" và thêm thông số như dưới -> Create

Cài đặt và cấu hình Cacti trên CentOS

+ Kiểm tra hiển thị dữ liệu bằng đồ họa. Chọn "graphs -> Windows Servers" -> chọn "Host: Windows Server 2012

Cài đặt và cấu hình Cacti trên CentOS

3. Giám sát Routers Switch bằng SNMP 

Cài đặt và cấu hình Cacti trên CentOS

+ Chúng ta kết nối router R1 trên GNS3 với mạng LAN bằng cách setup Cloud 1 với interface của PC như hình vẽ

+ Cấu hình ip cho interface fa0/0 và enable SNMP với community string là public  trên router cisco R1

R1#config t
R1(config)#int fa0/0
R1(config-if)#ip add 172.16.20.100 255.255.255.0
R1(config-if)#no shut
R1(config-if)#exit
R1(config)#snmp-server community public RO
R1(config)#exit
R1#copy run start

+ Bước tiếp theo chúng ta tiến hành Add router cần theo dõi vào Cacti " Console -> Device -> Add "

Cài đặt và cấu hình Cacti trên CentOS

+ Sau khi nhấn "Create" chúng ta chuyển qua bước tạo đồ thị dữ liệu cho router. Mặc định ở mục "Associated Graph Templates""Associated Data Queries" đã add sẵn graph monitor CPU và Interfaces cho router R1 -> Chúng ta chọn "Create Graphs for this Host" 

Cài đặt và cấu hình Cacti trên CentOS

+ Bước tiếp theo tích chọn mục muốn hiển thị đồ họa như CPU, interface ... Sau đó chọn "Create" 

Cài đặt và cấu hình Cacti trên CentOS

+ Tiếp theo chúng ta tao "Graph Trees -  Routers" và add item router R1 vào 

Cài đặt và cấu hình Cacti trên CentOS

+ Chọn "Graphs -> Routers -> Host: Router R1" để hiện thị đồ họa

Cài đặt và cấu hình Cacti trên CentOS

 + Đến đây chúng ta đã hoàn thành xong bài lab cài đặt và cấu hình Cacti trên CentOS . Cảm ơn các bạn đã theo dõi