一、监控端安装
1)基础软件:安装配置cacti前,需要安装:httpd、php、mysqld、php-mysql、net-snmp、rrdtool
以上均可使用yum安装:
yum install -y httpd
yum install -y php
yum install -y mysql-server
yum install -y php-mysql
yum install -y net-snmp
yum install -y rrdtool

2)cacti安装
wget http://www.cacti.net/downloads/cacti-0.8.8a.tar.gz
tar xzvf cacti-0.8.8c.tar.gz
mv cacti-0.8.8c /var/www/html/cacti
cd /var/www/html/cacti/

创建cactidb库,并导入相关表:
mysql> create database cactidb;
mysql -u root -p cactidb<cacti.sql (cacti.sql在cacti安装包目录下)

创建数据库用户
shell> mysql -uroot -p mysql
mysql> GRANT ALL ON cactidb.* TO cactiuser@localhost IDENTIFIED BY 'cactipassword';
mysql> flush privileges;

vi /var/www/html/cacti/include/config.php
修改数据库配置:
$database_type = "mysql";
$database_default = "cactidb";
$database_hostname = "localhost";
$database_username = " cactiuser ";      //对应前面创建的mysql用户
$database_password = "cactipassword ";      //对应前面创建mysql用户的密码
$database_port = "3306";
$database_ssl = false;

访问:http://IP/cacti进行首次安装配置:
配置:RRDTool Binary Path为:/usr/local/rrdtool/bin/rrdtool
第一次默认登陆账号:admin 密码 admin
登陆后它就会让你立即修改新密码
登录cacti后,也可以在Configuration-Settings-Paths中进行配置

手动执行:php -f /var/www/html/cacti/poller.php
执行如果成功,把*/5 * * * * root php -f /var/www/html/cacti/poller.php >/dev/null 2>&1增加到/etc/crontab中,每5分钟进行一次数据采样;

安装完成后启动对应服务
/etc/init.d/httpd start
/etc/init.d/mysqld start
/usr/sbin/snmpd

二、被监控端安装
1)yum install -y net-snmp
2)配置文件替换
3)启动服务:/usr/sbin/snmpd

三、使用
1)新建设备:Console -> Devices:
2)增加图像:Console->Create->New Graphs
3)图像树管理:Console->Management->Graph Trees->Default Tree->Add
4)添加监控项: Console->Management->Graph Trees->Default Tree-> Tree Items

四、定制需要
1)负载资源将累加区域型修改为线性的图表
    ----Graph Templates,选择ucd/net - Load Average,Item #1 >>Line1;Item #3 >>Line3;Item #3 >>Line3

五、踩坑合集
1)ip/cacti的web页面无法打开
    ---系统会默认开启防火墙,关闭:/etc/init.d/iptables stop;可添加至/etc/rc.local系统重启的时候会直接关闭
    ---http服务未启动,service httpd restart

2)php -f /var/www/html/cacti/poller.php执行报时区错误,现象如下:
    [root@localhost scripts]# php -f /var/www/html/cacti/poller.php
PHP Warning:  strtotime(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Asia/Chongqing' for 'CST/8.0/no DST' instead in /var/www/html/cacti/include/global_constants.php on line 165
    ---解决方案:
        vim /etc/php.ini
        date.timezone = Asia/Shanghai
        再重启http服务:service httpd restart

3)net-snmp 已经安装,为什么没有snmpwalk和snmpget?执行snmpwalk的时候报错
    ---确保安装这几个包
        # rpm -qa |grep snmp
        net-snmp-5.1.2-11.EL4.7
        net-snmp-libs-5.1.2-11.EL4.7
        net-snmp-devel-5.1.2-11.EL4.7
        net-snmp-utils-5.1.2-11.EL4.7
        net-snmp-perl-5.1.2-11.EL4.7          

4)如何确认被监控端机器是否正确部署
    ---在监控端执行:snmpwalk -v 2c -c public 172.20.0.1     //172.20.0.1为被监控端的IP
    有返回监控数据则表示可以正常进行监控

5)监控端和被监控端正确部署,但是graphs却无法显示对应的图表和数据
    5.1)确认采集任务是否定时执行,/var/log/cron的日志中确定;  或者手动执行采集数据脚本后看看是否有图表和数据【php -f /var/www/html/cacti/poller.php】
    5.2)采集任务有执行,确认是否可以正常采集数据:snmpwalk -v 2c -c public 127.0.0.1
    5.3)/var/www/html/cacti/rra下执行:rrdtool fetch 3-172_20_0_20_traffic_in_42.rrd AVERAGE
    结果都是nan。有snmpd进程,snmpwalk有数据,rrd也正常画,但fetch却全是nan,突然想到会不会因为poller没有办法拿到数据,所以获取到的数据全是nan,而rrd直接把nan给画了上去。所以造成了有数据,但却没有图的结果

Linux:cacti环境部署的更多相关文章

  1. linux项目环境部署入门

    linux目录 /bin 二进制可执行命令 (ls,cat,mkdir等) /dev 设备特殊文件/etc 系统管理和配置文件/etc/rc.d 启动的配置文件和脚本 /opt 额外安装的可选应用程序 ...

  2. LINUX测试环境部署nginx(五)

    安装配置nginx 安装编译环境:yum -y install pcre-devel openssl openssl-devel 拷贝nginx压缩文件到目标目录后,解压tar -zxvf nginx ...

  3. (转)LINUX测试环境部署Redis(四)

    安装配置Redis 第一部分:安装redis  希望将redis安装到此目录 1 /usr/local/redis 希望将安装包下载到此目录 1 /usr/local/src 那么安装过程指令如下: ...

  4. LINUX测试环境部署manggo(六)

    安装配置manggo 复制安装包mongodb-linux-x86_64-2.6.5.tgz到/usr/local/目录下,或者如果有网络可以直接使用wget命令下载安装包到/usr/local目录下 ...

  5. LINUX测试环境部署mysql(三)

    安装配置mysql 1.安装 查看有没有安装过: yum list installed mysql* rpm -qa | grep mysql* 查看有没有安装包: yum list mysql* 安 ...

  6. nodejs puppeteer linux(centos)环境部署以及用puppeteer简单截图

    1.安装Node环境 如果有安装Node请忽略第1点 #下载cd /usr/local/srcwget https://nodejs.org/dist/v10.15.3/node-v10.15.3-l ...

  7. linux服务器环境部署(三、docker部署nginx)

    一.下载nginx镜像 官网地址:https://hub.docker.com/_/nginx #下载镜像 默认为最新版本 docker pull nginx#下载指定版本 docker pull n ...

  8. Linux测试环境部署tomcat(二)

    安装配置tomcat 1:在http://tomcat.apache.org/download-80.cgi下载最新安装包 2:安装tomcat 将apache-tomcat-8.0.21.tar.g ...

  9. Linux测试环境部署jdk(一)

    安装配置JDK yum install -y lrzsz  安装rz,方便xshell上传下载文件 Jdk: jdk-6u1-linux-i586 Tomcat: apache-tomcat-7.0. ...

随机推荐

  1. Web性能测试的简介

    一.术语 1.并发用户:并发一般分两种.1)严格意义上的并发,即所有的用户在同一时刻做同一件事情或操作,这种操作一般指做同一类型的业务:2)广义范围的并发,与前者主要区别,尽管多个用户对系统发出了请求 ...

  2. oracle中的rownum

    1.oracle存在rownum关键字,它是一个伪列(系统分配在结果集上的一个特殊列) SELECT * FROM  oracleTable WHERE ROWNUM=1 上面这条语句是能够查询出第一 ...

  3. IOS上解决内存越界访问问题

    IOS经常会混合使用C代码,而在C中,对内存的读写是很频繁的操作. 其中,内存越界读写 unsigned char* p =(unsigned char*)malloc(10); unsigned c ...

  4. windows2003 DHCP中批处理绑定IP与MAC

    最近正在实施Windows Server 2008 R2 DHCP服务器部署,要求把员工的IP地址和MAC以及姓名完成在DHCP服务器上的绑定,使用的系统是windows2003-x64,要添加的用户 ...

  5. IntelliJ IDEA 的 20 个代码自动完成的特性

    http://www.oschina.net/question/12_70799 在这篇文章中,我想向您展示 IntelliJ IDEA 中最棒的 20 个代码自动完成的特性,可让 Java 编码变得 ...

  6. weex环境搭建

    1. 安装weex-toolkit sudo npm install -g weex-toolkit 装完之后就可以使用weex命令了.输入weex命令可以看到: weex test.we --qr ...

  7. Storm进阶

    并行度 在Storm集群中真正运行Topology的主要有三个实体:worker.executor.task,下图是可以表示他们之间的关系. 数据流模型 对于一个Spout或Bolt,都会有多个tas ...

  8. [转]''\\=DevExpress 中 汉化包 汉化方法

    [DevExpress]DevExpress 中 汉化包 汉化方法 2016-02-17 21:13 1781人阅读 评论(0) 收藏 举报  分类: DevExpress(24)  版权声明:本文为 ...

  9. MSSQL 多行合并为一行

    select ptl_a01, ptl_piitem, ( ) as ptl_count, STUFF((SELECT ','+ltrim(ptl_pdid) FROM PRODUCT_TRACEAB ...

  10. SQLServer2005删除log文件和清空日志的方案

    数据库在使用过程中会使日志文件不断增加,使得数据库的性能下降,并且占用大量的磁盘空间.SQL Server数据库都有log文件,log文件记录用户对数据库修改的操作.可以通过直接删除log文件和清空日 ...