海运的博客

Cacti监控Threshold调用CDEF数据转换模板

发布时间:May 24, 2012 // 分类:Cacti // No Comments

Cacti监控网卡流量默认以字节为单位,用thold插件监控报警还要将KB转换为Mbit,极不方便,可以新建数据转换模板在thold模板中调用。
管理界面—Graph Management——CDEFs——add——模板名称:
新建以下项目:

Item #1     Special Data Source: CURRENT_DATA_SOURCE     
Item #2     Custom String: 8     
Item #3     Operator: *     
Item #4     Custom String: 1024     
Item #5     Operator: /     
Item #6     Custom String: 1024     
Item #7     Operator: /

相当于当前数据*8/1024/1024,即字节—位—千位—兆位。
cacti添加CDEF数据转换.png
然后在Threshold监控模板中调用:
cacti监控thold调用CDEF数据转换.png

Cacti监控TCP连接状态

发布时间:May 19, 2012 // 分类:Cacti // No Comments

Cacti服务端新建TCP状态获取脚本:

wget https://www.haiyun.me/download/tcp-connections.zip
unzip tcp-connections.zip

修改get_tcp_connections脚本目录:

CACTIDIR=/cactipath/scripts

修改cacti_graph_template_tcp_connections.xml模板内脚本路径:

/bin/bash /var/www/htdocs/cacti/scripts/get_tcp_connections

然后在Cacti界面导入cacti_graph_template_tcp_connections.xml模板。
TCP连接状态监控效果如下:
cacti监控tcp连接.png

用Cacti监控Nginx状态

发布时间:May 18, 2012 // 分类:Cacti // No Comments

此方案需先开启Nginx状态监控Cacti服务器安装数据获取脚本:

wget https://www.haiyun.me/download/cacti-nginx.tar.gz
tar zxvf cacti-nginx.tar.gz
cd cacti-nginx
cp get_nginx_clients_status.pl cactipath/scripts/
cp get_nginx_socket_status.pl cactipath/scripts/
chmod 0755 cactipath/scripts/get_nginx_socket_status.pl
chmod 0755 cactipath/scripts/get_nginx_clients_status.pl

测试数据获取:

perl get_nginx_clients_status.pl https://www.haiyun.me/nginx_status
nginx_active:2 nginx_reading:0 nginx_writing:1 nginx_waiting:1 

如出现no (LWP::UserAgent not found)需安装perl组件:

yum -y install perl-libwww-perl

Cacti管理界面导入xml模板,相关主机添加Nginx Clients Stat、Nginx Sockets Stat模板。
Nginx监控效果图如下:
cacti监控nginx状态.png

用Cacti监控服务器硬盘IO

发布时间:May 14, 2012 // 分类:Cacti // 3 Comments

此监控模板以iostat命令为数据源,需先安装cacti和sysstat组件。

yum -y install systat unzip
wget https://www.haiyun.me/download/cacti-iostat.zip
unzip cacti-iostat.zip
cd markround-Cacti-iostat-templates-7394c7b/

复制iostat.pl到被监控服务器目录:

cp scripts/iostat.pl  /usr/local/bin/iostat.pl

被监控服务器snmp配置文件添加:

echo "pass .1.3.6.1.3.1 /usr/bin/perl /usr/local/bin/iostat.pl" >> /etc/snmp/snmpd.conf
service snmpd restart

复制iostat.xml至Cacti安装目录:

cp snmp_queries/linux/iostat.xml  /cactipath/resource/snmp_queries/
#新版本cacti如果无法采集数据需删除ioName字段
#sed -i 's/:ioName//g' cactipath/resource/snmp_queries/iostat.xml 

添加计划任务,用于采集数据。

cat > /etc/cron.d/iostat <<EOF
*/5 * * * * root cd /tmp && iostat -xkd 2 2 | sed 's/,/\./g' > io.tmp && mv io.tmp iostat.cache
EOF

测试数据采集是否正常:

snmpwalk -v1 -c public www.haiyun.me .1.3.6.1.3.1.2
SNMPv2-SMI::experimental.1.2.1 = STRING: "sda"
SNMPv2-SMI::experimental.1.2.2 = STRING: "sda1"
SNMPv2-SMI::experimental.1.2.3 = STRING: "sda2"
SNMPv2-SMI::experimental.1.2.4 = STRING: "dm-0"
SNMPv2-SMI::experimental.1.2.5 = STRING: "dm-1"
SNMPv2-SMI::experimental.1.2.6 = STRING: "hdc"

Cacti界面导入templates/linux目录下模板:
cacti导入模板.png
然后在新建设备时添加相应的模板,效果图如下:
cacti监控io效果图(iostat).png

Cacti安装高效轮询器spine

发布时间:May 14, 2012 // 分类:Cacti // No Comments

Cacti默认轮询器cmd.php执行效率有点低,spine为C语言编写的组件,性能要好许多。
编译安装spine需以下软件支持:

net-snmp-devel
mysql
mysql-devel
openssl-devel

安装spine要和Cacti的版本相匹配,本文以最新版cacti0.8.8a安装为例。

cd /usr/local/src
wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.8a.tar.gz
tar zxvf cacti-spine-0.8.8a.tar.gz 
cd cacti-spine-0.8.8a
./configure
make
make install

配置spine:

cd /usr/local/spine/etc/
mv spine.conf.dist spine.conf
vim spine.conf

填写数据库信息,即Cacti数据库。

DB_Host         localhost
DB_Database     cacti
DB_User         root
DB_Pass         passwd
DB_Port         3306

设置spine路径,Console——Settings——Paths
cacti设置spine路径.png
更改cacti轮询器为spine,Console——Settings——Poller
cacti更改轮询器为spine.png
测试spine轮询器:

/usr/local/spine/bin/spine 
SPINE: Using spine config file [spine.conf]
SPINE: Version 0.8.8a starting
SPINE: Time: 0.1167 s, Threads: 1, Hosts: 2

如出现FATAL: Unable to read configuration file! (Spine init)请确认以上配置是否正确。

分类
最新文章
最近回复
  • opnfense: 谢谢博主!!!解决问题了!!!我之前一直以为内置的odhcp6就是唯一管理ipv6的方式
  • liyk: 这个方法获取的IPv6大概20分钟之后就会失效,默认路由先消失,然后Global IPV6再消失
  • 海运: 不好意思,没有。
  • zongboa: 您好,請問一下有immortalwrt設定guest Wi-Fi的GUI教學嗎?感謝您。
  • 海运: 恩山有很多。
  • swsend: 大佬可以分享一下固件吗,谢谢。
  • Jimmy: 方法一 nghtp3步骤需要改成如下才能编译成功: git clone https://git...
  • 海运: 地址格式和udpxy一样,udpxy和msd_lite能用这个就能用。
  • 1: 怎么用 编译后的程序在家里路由器内任意一台设备上运行就可以吗?比如笔记本电脑 m参数是笔记本的...
  • 孤狼: ups_status_set: seems that UPS [BK650M2-CH] is ...