cacti监内网本机TCP连接状况

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: Cacti是由php开发的网页,运行于LA/NMP平台,可利用SNMP获取数据,周期性的执行能够取得数据的命令,将取回的数据保存至rrd文件当中,利用rrdtool绘出图形。

Cacti是由php开发的网页,运行于LA/NMP平台,可利用SNMP获取数据,周期性的执行能够取得数据的命令,将取回的数据保存至rrd文件当中,利用rrdtool绘出图形。
snmp原理详解
http://blog.csdn.net/shanzhizi/article/details/11606767
http://www.cnblogs.com/xdp-gacl/p/3978825.html
rrdtool原理详解
http://blog.liuts.com/post/215/
LAMP环境已经编译搭建
虚拟主机配置

<VirtualHost *:80>
        DocumentRoot "/web/vhosts/cacti"
        DirectoryIndex index.shtml index.html index.php
        ErrorLog "logs/cacti_error.log"
        CustomLog "logs/cacti_access.log" common
        ProxyRequests Off  ProxyPassMatch^/(.*\.php)$fcgi://127.0.0.1:9000/web/vhosts/cacti/$1 
        <Directory /web/vhosts/cacti >
            Options FollowSymLinks Includes 
            AllowOverride All
            Require all granted
        </Directory>
</VirtualHost>

安装snmp并配置

# yum -y install rrdtool net-snmp net-snmp-libs net-snmp-utils 
修改配置文件/etc/snmp/snmpd.conf中的默认community,后启动服务
eg:   com2sec notConfigUser  127.0.0.1     mypublic
# chkconfig snmpd on 
# service snmpd start 

安装cacti,解压安装包到虚拟主机的根目录

# mkdir -p /web/vhosts/
# tar xvf cacti-0.8.8h.tar.gz -C /web/vhosts/
# ln -sv /web/vhosts/cacti-0.8.8h /web/vhosts/cacti

初始化数据,更新授权

# cd /web/vhosts/cacti
# mysqladmin create cactidb
# mysql cactidb < cacti.sql 
# mysql -e "GRANT ALL ON cactidb.* to cactiuser@localhost IDENTIFIED BY 'cactipasswd'"
# mysqladmin flush-privileges

创建系统用户cactiuser,修改cacti安装目录下rra和log目录的属主属组

# useradd cactiuser
# id cactiuser
uid=501(cactiuser) gid=501(cactiuser) groups=501(cactiuser)
# chown -R cactiuser:cactiuser rra log

修改Cacti配置文件中的mysql连接参数

# cat include/config.php
$database_type = "mysql";
$database_default = "cactidb";
$database_hostname = "localhost";
$database_username = "cactiuser";
$database_password = "cactipasswd";
$database_port = "3306";
$database_ssl = false;
$url_path = "/"; #此处修改了cacti默认访问路径,不需要在访问地址后加/cacti

以cactiuser用户身份添加cacti收集数据的任务计划

# echo '*/5 * * * * /usr/local/php/bin/php /web/vhosts/cacti/poller.php &>/dev/null' > /var/spool/cron/cactiuser
# echo "date.timezone = Asia/Shanghai" >> /etc/php.ini 修改php时区
# hwclock -w  #同步硬件时间到系统
# hwclock 
Mon 25 Jul 2016 06:57:17 PM CST  -0.347178 seconds
# date
Mon Jul 25 18:57:20 CST 2016
# service httpd restart
# service snmpd restart

在浏览器中输入http://ip按照提示进行安装
这里写图片描述
编辑脚本获取TCP数据

# cd /web/vhosts/cacti/scripts/
# cat tcpcon.sh 
#!/bin/bash
#$1: hostname/ip
#$2:snmp community
SNMPNETSTAT=/usr/bin/snmpnetstat
TF=`mktemp /tmp/$1_tcpcon.XXXXXXX`
$SNMPNETSTAT -v 2c -c $2 -Can -Cp tcp $1 > $TF
EST=`grep -i 'established' $TF |wc -l`
TWAIT=`grep -i 'timewait' $TF |wc -l`
SYNRECV=`grep -i 'synreceived' $TF |wc -l`
echo -n "established:$EST"
echo -n "timewait:$TWAIT"
echo -n "synreceived:$SYNRECV"

Console -> Data Input Methods -> (Edit)
定义Data Input Methods,添加SNMP-TCP connections,数据收集方法为脚本,脚本路径为cacti安装目录下的tcpcon.sh,并传递两个参数
这里写图片描述
Console -> Data Templates -> (Edit)
定义数据模板,关联数据输入方法,添加3个数据源
这里写图片描述
Console -> Data Sources -> (Edit)定义数据源
这里写图片描述
Console -> Graph Templates -> (Edit)定义图像模板
这里写图片描述

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
缓存 网络协议 网络架构
四十、TCP协议的特点、TCP报文段格式和TCP的连接管理
四十、TCP协议的特点、TCP报文段格式和TCP的连接管理
四十、TCP协议的特点、TCP报文段格式和TCP的连接管理
|
网络协议
计算机网络学习27:TCP连接与连接释放
客户端和服务端都是先建立传输控制模块
计算机网络学习27:TCP连接与连接释放
|
缓存 网络协议 Java
在项目中使用Curator的Java 客户端搭建后进行长TCP连接和TCP权限配置【Zookeeper】
在项目中使用Curator的Java 客户端搭建后进行长TCP连接和TCP权限配置【Zookeeper】
298 0
在项目中使用Curator的Java 客户端搭建后进行长TCP连接和TCP权限配置【Zookeeper】
|
网络协议
Netty之第一次 TCP 连接时发生了什么
Netty之第一次 TCP 连接时发生了什么
180 0
|
网络协议
|
Web App开发 网络协议 网络安全
89. 5 连问一个 TCP 连接可以发多少个 HTTP 请求
89. 5 连问一个 TCP 连接可以发多少个 HTTP 请求
135 0
89. 5 连问一个 TCP 连接可以发多少个 HTTP 请求
|
网络协议
TCP建立连接的三次握手
看了点网络的书,回顾下TCP的连接细节,记一下
208 0
TCP建立连接的三次握手
|
网络协议
Flutter TCP连接
Flutter TCP连接
|
网络协议 Java 数据库连接
mybatis学习(12)com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 连接到主机 127.0.0.1 的 TCP/IP
mybatis学习(12)com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 连接到主机 127.0.0.1 的 TCP/IP
268 0
mybatis学习(12)com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 连接到主机 127.0.0.1 的 TCP/IP
|
缓存 网络协议 安全
《网络是怎么样连接的》读书笔记 - Tcp/IP连接(二)(下)
《网络是怎么样连接的》读书笔记 - Tcp/IP连接(二)(下)
157 0