CentOS6.X上安装Cacti网络监控系统和Spine轮询

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS DuckDB + QuickBI 企业套餐,8核32GB + QuickBI 专业版
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
简介:

    Cacti工具是一套开源的基于Web的网络监控和系统监控的图形解决方案。Cacti通过SNMP服务获取数据,并使用RRDtool绘制图形,提供非常直观的数据和用户管理功能。Cacti需要Web、MySQL和PHP的支持。Cacti一般用于监控网络流量、CPU负载、磁盘空间等。

wKioL1agqMHSuWDVAAGQ-kNaHtY778.jpg

Cacti官网:http://www.cacti.net/


安装Cacti需要安装的软件包:Apache、MySQL、PHP、RRTool、PHP-SNMP、NET-SNMP


一、安装Cacti需要安装的软件包

1、安装扩展源

[root@sh ~]# rpm -ivh http://mirrors.yun-idc.com/epel/6/i386/epel-release-6-8.noarch.rpm

2、安装Apache

[root@sh ~]# yum -y install httpd httpd-devel

3、安装MySQL

[root@sh ~]# yum -y install mysql mysql-server

4、安装PHP及相关软件

[root@sh ~]# yum install php php-mysql php-gd php-pear php-devel php-common php-cli php-mbstring php-mcrypt

5、启动Apache、MySQL

1
2
3
4
5
6
[root@sh ~] # chkconfig httpd on
[root@sh ~] # chkconfig mysqld on
[root@sh ~] # service httpd start
[root@sh ~] # service mysqld start
 
[root@sh ~] # mysqladmin -uroot password dbpasswd ;设置root用户密码

6、安装PHP-SNMP和NET-SNMP

[root@sh ~]# yum -y install php-snmp net-snmp net-snmp-utils net-snmp-libs

7、安装RRDTool

[root@sh ~]# yum -y install rrdtool

wKioL1agUPiRcShDAABcj__hdVY812.jpg

二、安装Cacti服务

1、下载cacti-0.8.8f.tar.gz

[root@sh ~]# wget http://www.cacti.net/downloads/cacti-0.8.8f.tar.gz


2、解压到网站目录/var/www/html/下

[root@sh ~]# tar zxf cacti-0.8.8f.tar.gz 

[root@sh ~]# mv cacti-0.8.8f /var/www/html/cacti

[root@sh ~]# chown -R apache.apache /var/www/html/


3、创建Cacti数据库、用户和密码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[root@sh ~] # mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection  id  is 9
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  'cacti' @ 'localhost'  IDENTIFIED BY  'cactipass' ;
Query OK, 0 rows affected (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.04 sec)
mysql> quit
Bye

4、导入Cacti数据库文件

[root@sh ~]# mysql -uroot -p cacti < /var/www/html/cacti/cacti.sql 


5、修改Cacti相关的MySQL数据库配置文件

1
[root@sh ~] # vim /var/www/html/cacti/include/config.php
1
2
3
4
5
6
7
8
/*  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 =  "cactipass" ;
$database_port =  "3306" ;
$database_ssl =  false ;


6、添加防火墙规则允许外部访问80端口

1
2
3
[root@sh ~] # iptables -A INPUT -p udp --dport 80 -j ACCEPT
[root@sh ~] # iptables -A INPUT -p tcp --dport 80 -j ACCEPT
[root@sh ~] # service iptables save


7、配置Cacti虚拟主机文件,创建/etc/httpd/conf.d/cacti.conf,允许192.168.1.0的网段访问

1
2
3
4
5
6
7
[root@sh ~] # vim /etc/httpd/conf.d/cacti.conf
Alias  /cacti     /var/www/html/cacti
<Directory  /var/www/html/cacti/ >
         Order Deny,Allow
         Deny from all
         Allow from 192.168.1.0 /24
< /Directory >


8、调整系统时间,并且修改php.ini对应的时区为'Asia/Shanghai'

1
2
3
4
[root@sh ~] # ntpdate time.nist.gov
[root@sh ~] # hwclock    ;写入BIOS
#添加时间自动同步计划任务
0 11 * * *  /usr/sbin/ntpdate  time .nist.gov;hwclock -w
1
2
[root@sh ~] # vim /etc/php.ini
date .timezone =  'Asia/Shanghai'

9、配置cacti轮询php脚本,添加cron计划任务,让它每五分钟执行一次以生成图像显示

1
* /5  * * * *   /usr/bin/php  /var/www/html/cacti/poller .php
1
2
3
4
5
6
7
[root@sh ~] # /usr/bin/php /var/www/html/cacti/poller.php
OK u:0.00 s:0.01 r:0.08
OK u:0.00 s:0.01 r:0.10
OK u:0.00 s:0.01 r:0.11
OK u:0.00 s:0.01 r:0.13
OK u:0.00 s:0.01 r:0.19
01 /21/2016  03:15:01 PM - SYSTEM STATS: Time:0.3285 Method:cmd.php Processes:1 Threads:N /A  Hosts:2 HostsPerProcess:2 DataSources:5 RRDsProcessed:5


10、重启服务

1
2
3
4
[root@sh ~] # service httpd restart
[root@sh ~] # service mysqld restart
[root@sh ~] # service snmpd restart
[root@sh ~] # service crond restart


11、浏览器登录http://IP/cacti/install/完成安装向导

wKioL1aggwnBNB_-AAFgGoHIBts880.jpg

Cacti默认登录用户和密码都是admin,根据提示修改,进入Cacti的Web界面

wKioL1agg5_i1dssAADKHJGyKBs790.jpg

安装完成


三、安装Cacti加速轮询器Spine

1、下载spine-0.8.8f,版本对应cacti的版本

[root@sh ~]# wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.8f.tar.gz

2、安装Spine依赖的包

[root@sh ~]# yum -y install libtool net-snmp-devel mysql-devel

3、编译安装Spine

1
2
3
4
5
6
7
8
9
10
[root@sh cacti-spine-0.8.8f] # ./configure 
[root@sh cacti-spine-0.8.8f] # make
[root@sh cacti-spine-0.8.8f] # make install
make [1]: Entering directory ` /root/cacti-spine-0 .8.8f'
  /bin/mkdir  -p  '/usr/local/spine/bin'
   /bin/sh  . /libtool    --mode= install  /usr/bin/install  -c spine  '/usr/local/spine/bin'
libtool:  install /usr/bin/install  -c spine  /usr/local/spine/bin/spine
  /bin/mkdir  -p  '/usr/local/spine/etc'
  /usr/bin/install  -c -m 644 spine.conf.dist  '/usr/local/spine/etc'
make [1]: Leaving directory ` /root/cacti-spine-0 .8.8f'
1
2
[root@sh cacti-spine-0.8.8f] # ls /usr/local/spine/
bin  etc

4、配置spine.conf文件,指定cacti数据库、用户和密码

[root@sh ~]# cp /usr/local/spine/etc/spine.conf.dist /etc/spine.conf

[root@sh ~]# vim /etc/spine.conf 

wKioL1ag5LXAX0rgAAAUaZVITj4400.jpg


5、执行Spine轮询脚本获取监测主机信息

1
2
3
4
[root@sh ~] # /usr/local/spine/bin/spine 
SPINE: Using spine config  file  [ /etc/spine .conf]
SPINE: Version 0.8.8f starting
SPINE: Time: 0.2636 s, Threads: 5, Hosts: 2


6、在Cacti页面选择Spine为默认轮询方式

console--->Settings--->Paths--->Spine Poller File Path--->/usr/local/spine/bin/spine--->save

wKiom1ag5cHjUFGEAACBb3A_nS4105.jpg

Poller--->Poller Type--->spine--->save

wKioL1ag5pngKI3lAABp3QWA5Es787.jpg

Cacti配置完成



本文转自 HMLinux 51CTO博客,原文链接:http://blog.51cto.com/7424593/1737348

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
7月前
|
存储 分布式计算 Linux
安装篇--CentOS 7 虚拟机安装
VMware 装 CentOS 7 不知道从哪下手?这篇超详细图文教程手把手教你在 VMware Workstation 中完成 CentOS 7 桌面系统的完整安装流程。从 ISO 镜像下载、虚拟机配置,到安装图形界面、设置用户密码,每一步都有截图讲解,适合零基础新手快速上手。装好之后无论你是要搭 Hadoop 集群,还是练 Linux ,这个环境都够你折腾一整天!
3249 3
|
6月前
|
Ubuntu 网络协议 网络安全
解决Ubuntu系统的网络连接问题
以上步骤通常可以帮助解决大多数Ubuntu系统的网络连接问题。如果问题仍然存在,可能需要更深入的诊断,或考虑联系网络管理员或专业技术人员。
1685 18
|
6月前
|
监控 安全 网络协议
Cisco Identity Services Engine (ISE) 3.5 发布 - 基于身份的网络访问控制和策略实施系统
Cisco Identity Services Engine (ISE) 3.5 发布 - 基于身份的网络访问控制和策略实施系统
710 1
Cisco Identity Services Engine (ISE) 3.5 发布 - 基于身份的网络访问控制和策略实施系统
|
6月前
|
监控 关系型数据库 MySQL
在CentOS系统中,如何统计哪个进程打开了文件描述符?
利用上述方法,你可以有效地监控和统计CentOS系统中的进程打开的文件描述符数量,以帮助排查错误或优化系统配置。通过组合使用各种工具和命令,可以获得对系统状态和行为的深入了解,进而做出相应的调整和
313 5
|
6月前
|
机器学习/深度学习 大数据 关系型数据库
基于python大数据的青少年网络使用情况分析及预测系统
本研究基于Python大数据技术,构建青少年网络行为分析系统,旨在破解现有防沉迷模式下用户画像模糊、预警滞后等难题。通过整合多平台亿级数据,运用机器学习实现精准行为预测与实时干预,推动数字治理向“数据驱动”转型,为家庭、学校及政府提供科学决策支持,助力青少年健康上网。
|
7月前
|
安全 关系型数据库 MySQL
CentOS 7 yum 安装 MySQL教程
在CentOS 7上安装MySQL 8,其实流程很清晰。首先通过官方Yum仓库来安装服务,然后启动并设为开机自启。最重要的环节是首次安全设置:需要先从日志里找到临时密码来登录,再修改成你自己的密码,并为远程连接创建用户和授权。最后,也别忘了在服务器防火墙上放行3306端口,这样远程才能连上。
1862 16
|
8月前
|
安全 KVM 虚拟化
Cisco Identity Services Engine (ISE) 3.4 - 基于身份的网络访问控制和策略实施系统
Cisco Identity Services Engine (ISE) 3.4 - 基于身份的网络访问控制和策略实施系统
497 2
Cisco Identity Services Engine (ISE) 3.4 - 基于身份的网络访问控制和策略实施系统
|
7月前
|
机器学习/深度学习 传感器 算法
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
511 2
|
8月前
|
运维 Linux 开发者
Linux系统中使用Python的ping3库进行网络连通性测试
以上步骤展示了如何利用 Python 的 `ping3` 库来检测网络连通性,并且提供了基本错误处理方法以确保程序能够优雅地处理各种意外情形。通过简洁明快、易读易懂、实操性强等特点使得该方法非常适合开发者或系统管理员快速集成至自动化工具链之内进行日常运维任务之需求满足。
596 18