cacti 监控利器-服务安装搭建实战讲解


cacti监控服务安装搭建实战讲解


 

安装准备

 操作系统环境

系统安装包选择


需要使用3台服务器。

 一台监控的服务器C 183。一台snmp的服务器182 S1。一台web 服务器181 S2。

 

snmp简单介绍

简单网络管理协议(SNMP),由一组网络管理的标准组成,包含一个应用层协议(application layer protocol)、数据库模型(database schema)和一组资源对象。该协议能够支持网络管理系统,用以监测连接到网络上的设备是否有任何引起管理上关注的情况。该协议是互联网工程工作小组(IETF,Internet Engineering Task Force)定义的internet协议簇的一部分。SNMP的目标是管理互联网Internet上众多厂家生产的软硬件平台,因此SNMP受Internet标准网络管理框架的影响也很大。SNMP已经出到第三个版本的协议,其功能较以前已经大大地加强和改进了。


详细介绍:http://baike.baidu.com/link?url=z02jw0iHeRRubmzuEgAuuRhmb0zatU2d0O-KxxlsxUKMffxAxKprY6lTO_I-gLpnsY_bEUP0bl0n8k4Lz-BcF_

SNMP安装完整的命令集

cat /etc/redhat-release

uname -r

uname -m

yum install net-snmp* -y

ll /etc/snmp/snmpd.conf

cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.ori

cat >/etc/snmp/snmpd.conf<<EOF

com2sec local     localhost      public

com2sec mynetwork  192.168.204.0/24   public

group MyRWGroup v1         local

group MyRWGroup v2c        local

group MyRWGroup usm        local

group MyROGroup v1         mynetwork

group MyROGroup v2c        mynetwork

group MyROGroup usm        mynetwork

view all    included  .1                               80

access MyROGroup ""      any       noauth    exact  all    none   none 

access MyRWGroup ""      any       noauth    exact  all    all    none 

syslocation etiantian.org 

syscontact Me <[email protected]

proc mountd 

proc ntalkd 4 

proc sendmail 10 1 

proc httpd 10 1 

exec echotest /bin/echo hello world 

exec disk_used_shell  /bin/sh  /root/current_disk_used.sh 

exec httpd_proc  /bin/sh  /root/current_httpd_proc.sh 

disk /       10000 

disk /boot   10000 

load 12 14 14 

EOF

cat -n /etc/snmp/snmpd.conf

/etc/init.d/snmpd start

lsof -i :161

netstat -lntup|grep 161

ps -ef|grep snmpd|grep -v grep

snmpget -v 1 -c public localhost system.sysUpTime.0

tail -10 /var/log/snmpd.log

##################################################################################################

 

 

其他操作的命令集合

mkdir /home/oldboy/tools

 cd /home/oldboy/tools

 rz

 ll

 tar xf cacti_tools.tar.gz 

 tree

 cd cacti_tools

 ll

 tar zxf libart_lgpl-2.3.17.tar.gz 

 cd libart_lgpl-2.3.17

 ./configure

 make

 make install

 /bin/cp -r /usr/local/include/libart-2.0 /usr/include

 cd ../

 

 

 

 tar xf rrdtool-1.2.30.tar.gz 

 cd rrdtool-1.2.30

 ./configure 

 make && make install

 ls -l /usr/local/bin/rrdtool

 ls -l /usr/local/rrdtool-1.2.30/bin/rrdtool && ln -s /usr/local/rrdtool-1.2.30/bin/rrdtool

 ls -l /usr/local/bin/rrdtool

 ls -l /usr/local/rrdtool-1.2.30/bin/rrdtool && ln -s /usr/local/rrdtool-1.2.30/bin/rrdtool /usr/local/bin/rrdtool

 ls -l /usr/local/bin/rrdtool

 yum install gcc glibc glibc-common cairo pango zlib zlib-devel freetype freetype-devel gd gd-devel  -y

 yum install mysql* httpd* php* --skip-broken -y

 cd ../

 cd /etc/httpd/conf

 cp httpd.conf httpd.conf.oldboy.ori

 sed -i 's#\#ServerName www.example.com:80#ServerName 127.0.0.1:80#' /etc/httpd/conf/httpd.conf

 sed -i 's#DirectoryIndex index.html index.html.var#DirectoryIndex index.php index.html #' /etc/httpd/conf/httpd.conf

 egrep "127.0.0.1|index.php" /etc/httpd/conf/httpd.conf

 /etc/init.d/httpd start

 lsof -i :80

 grep DocumentRoot httpd.conf

 echo -e "<?php \nphpinfo(); \n?>" >/var/www/html/index.php

 cat /var/www/html/index.php 

 rm -f /var/www/html/index.php 

 cd ~

 /etc/init.d/mysqld start

 lsof -i :3306

 ps -ef|grep mysql

 mysql

 cd /home/oldboy/tools/

 ll

 cd cacti_tools

 ll

 tar xf cacti-0.8.8a.tar.gz 

 cd cacti-0.8.8a

 mysql cacti <cacti.sql 

 mysql -e "use cacti;show tables;"

 grep database include/config.php

 grep apache /etc/httpd/conf/httpd.conf

 chown -R apache rra/ log/

 mv ../cacti-0.8.8a /var/www/html/cacti

 cd /var/www/html/

 ll

 ll cacti/

 ll

 chown -R apache.apache cacti

 /usr/bin/php /var/www/html/cacti/poller.php

 chmod 755 /var/www/html/cacti/poller.php

 /usr/bin/php /var/www/html/cacti/poller.php

 /usr/bin/php /var/www/html/cacti/poller.php

 /usr/bin/php /var/www/html/cacti/poller.php

 /usr/bin/php /var/www/html/cacti/poller.php

 /usr/bin/php /var/www/html/cacti/poller.php

  echo '*/5 * * * *  /usr/bin/php /var/www/html/cacti/poller.php  > /dev/null 2>&1' >>/var/spool/cron/root

 crontab -l

 cat /var/www/html/cacti/poller.php

 ll /usr/local/bin/rrdtool

 /usr/bin/php

 ll /usr/bin/php

 rpm -qa |grep net-snmp

 netstat -lntup|grep 161

 /etc/init.d/iptables stop

 crontab -l

 /usr/bin/php /var/www/html/cacti/poller.php 

 /usr/bin/php /var/www/html/cacti/poller.php 

 telnet 10.0.0.181 161

 sz -y  /etc/httpd/conf/httpd.conf

 

SNMP详细实战安装过程


如果yum安装的比较慢的话,需要提前配置好yum最好选择阿里源

[root@test cacti]#  yum install net-snmp* -y   #所监控的和作为监控的机器都需要安装。

[root@C-SERVER ~]# cat /etc/redhat-release

CentOS release 5.8 (Final)

[root@C-SERVER ~]# unam -r

-bash: unam: command not found

[root@C-SERVER ~]# uname -r

2.6.18-308.el5

[root@C-SERVER ~]# uname -m

x86_64

[root@C-SERVER ~]# 

[root@C-SERVER ~]# yum install net-snmp* -y

 

Loaded plugins: fastestmirror, security

Loading mirror speeds from cached hostfile

 * base: mirror.bit.edu.cn

 * extras: mirror.bit.edu.cn

 * updates: mirror.bit.edu.cn

base                                                               | 1.1 kB     00:00     

extras                                                             | 2.1 kB     00:00     

updates                                                            | 1.9 kB     00:00     

updates/primary_db                                                 | 734 kB     00:00     

Setting up Install Process

Resolving Dependencies

--> Running transaction check

---> Package net-snmp.x86_64 1:5.3.2.2-17.el5_8.1 set to be updated

--> Processing Dependency: libsensors.so.3()(64bit) for package: net-snmp

---> Package net-snmp-devel.i386 1:5.3.2.2-17.el5_8.1 set to be updated

--> Processing Dependency: elfutils-devel for package: net-snmp-devel

--> Processing Dependency: lm_sensors-devel for package: net-snmp-devel

--> Processing Dependency: beecrypt-devel for package: net-snmp-devel

---> Package net-snmp-devel.x86_64 1:5.3.2.2-17.el5_8.1 set to be updated

---> Package net-snmp-libs.i386 1:5.3.2.2-17.el5_8.1 set to be updated

---> Package net-snmp-libs.x86_64 1:5.3.2.2-17.el5_8.1 set to be updated

---> Package net-snmp-perl.x86_64 1:5.3.2.2-17.el5_8.1 set to be updated

---> Package net-snmp-utils.x86_64 1:5.3.2.2-17.el5_8.1 set to be updated

--> Running transaction check

---> Package beecrypt-devel.x86_64 0:4.1.2-10.1.1 set to be updated

--> Processing Dependency: beecrypt = 4.1.2-10.1.1 for package: beecrypt-devel

--> Processing Dependency: libbeecrypt.so.6()(64bit) for package: beecrypt-devel

---> Package elfutils-devel.x86_64 0:0.137-3.el5 set to be updated

--> Processing Dependency: elfutils-devel-static-x86_64 = 0.137-3.el5 for package: elfutils-devel

---> Package lm_sensors.x86_64 0:2.10.7-9.el5 set to be updated

---> Package lm_sensors-devel.x86_64 0:2.10.7-9.el5 set to be updated

--> Running transaction check

---> Package beecrypt.x86_64 0:4.1.2-10.1.1 set to be updated

---> Package elfutils-devel-static.x86_64 0:0.137-3.el5 set to be updated

--> Finished Dependency Resolution

 

Dependencies Resolved

 

==========================================================================================

 Package                     Arch         Version                     Repository     Size

==========================================================================================

Installing:

 net-snmp                    x86_64       1:5.3.2.2-17.el5_8.1        updates       706 k

 net-snmp-devel              i386         1:5.3.2.2-17.el5_8.1        updates       1.9 M

 net-snmp-devel              x86_64       1:5.3.2.2-17.el5_8.1        updates       2.0 M

 net-snmp-perl               x86_64       1:5.3.2.2-17.el5_8.1        updates       201 k

 net-snmp-utils              x86_64       1:5.3.2.2-17.el5_8.1        updates       192 k

Updating:

 net-snmp-libs               i386         1:5.3.2.2-17.el5_8.1        updates       1.3 M

 net-snmp-libs               x86_64       1:5.3.2.2-17.el5_8.1        updates       1.3 M

Installing for dependencies:

 beecrypt                    x86_64       4.1.2-10.1.1                base           87 k

 beecrypt-devel              x86_64       4.1.2-10.1.1                base          118 k

 elfutils-devel              x86_64       0.137-3.el5                 base           62 k

 elfutils-devel-static       x86_64       0.137-3.el5                 base          119 k

 lm_sensors                  x86_64       2.10.7-9.el5                base          525 k

 lm_sensors-devel            x86_64       2.10.7-9.el5                base           85 k

 

Transaction Summary

==========================================================================================

Install      11 Package(s)

Upgrade       2 Package(s)

 

Total download size: 8.5 M

Downloading Packages:

(1/13): elfutils-devel-0.137-3.el5.x86_64.rpm                      |  62 kB     00:00     

(2/13): lm_sensors-devel-2.10.7-9.el5.x86_64.rpm                   |  85 kB     00:00     

(3/13): beecrypt-4.1.2-10.1.1.x86_64.rpm                           |  87 kB     00:00     

(4/13): beecrypt-devel-4.1.2-10.1.1.x86_64.rpm                     | 118 kB     00:00     

(5/13): elfutils-devel-static-0.137-3.el5.x86_64.rpm               | 119 kB     00:00     

(6/13): net-snmp-utils-5.3.2.2-17.el5_8.1.x86_64.rpm               | 192 kB     00:00     

(7/13): net-snmp-perl-5.3.2.2-17.el5_8.1.x86_64.rpm                | 201 kB     00:00     

(8/13): lm_sensors-2.10.7-9.el5.x86_64.rpm                         | 525 kB     00:00     

(9/13): net-snmp-5.3.2.2-17.el5_8.1.x86_64.rpm                     | 706 kB     00:00     

(10/13): net-snmp-libs-5.3.2.2-17.el5_8.1.i386.rpm                 | 1.3 MB     00:00     

(11/13): net-snmp-libs-5.3.2.2-17.el5_8.1.x86_64.rpm               | 1.3 MB     00:01     

(12/13): net-snmp-devel-5.3.2.2-17.el5_8.1.i386.rpm                | 1.9 MB     00:01     

(13/13): net-snmp-devel-5.3.2.2-17.el5_8.1.x86_64.rpm              | 2.0 MB     00:01     

------------------------------------------------------------------------------------------

Total                                                     888 kB/s | 8.5 MB     00:09     

Running rpm_check_debug

Running Transaction Test

Finished Transaction Test

Transaction Test Succeeded

Running Transaction

  Updating       : net-snmp-libs                                                     1/15 

  Installing     : lm_sensors                                                        2/15 

  Installing     : net-snmp                                                          3/15 

  Updating       : net-snmp-libs                                                     4/15 

  Installing     : beecrypt                                                          5/15 

  Installing     : net-snmp-perl                                                     6/15 

  Installing     : net-snmp-utils                                                    7/15 

  Installing     : beecrypt-devel                                                    8/15 

  Installing     : lm_sensors-devel                                                  9/15 

  Installing     : elfutils-devel                                                   10/15 

  Installing     : elfutils-devel-static                                            11/15 

  Installing     : net-snmp-devel                                                   12/15 

  Installing     : net-snmp-devel                                                   13/15 

  Cleanup        : net-snmp-libs                                                    14/15 

  Cleanup        : net-snmp-libs                                                    15/15 

 

Installed:

  net-snmp.x86_64 1:5.3.2.2-17.el5_8.1         net-snmp-devel.i386 1:5.3.2.2-17.el5_8.1   

  net-snmp-devel.x86_64 1:5.3.2.2-17.el5_8.1   net-snmp-perl.x86_64 1:5.3.2.2-17.el5_8.1  

  net-snmp-utils.x86_64 1:5.3.2.2-17.el5_8.1  

 

Dependency Installed:

  beecrypt.x86_64 0:4.1.2-10.1.1           beecrypt-devel.x86_64 0:4.1.2-10.1.1           

  elfutils-devel.x86_64 0:0.137-3.el5      elfutils-devel-static.x86_64 0:0.137-3.el5     

  lm_sensors.x86_64 0:2.10.7-9.el5         lm_sensors-devel.x86_64 0:2.10.7-9.el5         

 

Updated:

  net-snmp-libs.i386 1:5.3.2.2-17.el5_8.1    net-snmp-libs.x86_64 1:5.3.2.2-17.el5_8.1   

 

Complete!

查看是否存在默认的snmp配置文件。

[root@C-SERVER ~]# ll /etc/snmp/snmpd.conf

-rw-r--r-- 1 root root 18579 May 21 17:00 /etc/snmp/snmpd.conf

[root@C-SERVER ~]# cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.ori

增加snmp配置文件内容。全部清空原始内容,然后添加如下内容。

[root@C-SERVER ~]# cat >/etc/snmp/snmpd.conf<<EOF

com2sec local     localhost      public

com2sec mynetwork  10.0.0.0/24   public

group MyRWGroup v1         local

group MyRWGroup v2c        local

group MyRWGroup usm        local

group MyROGroup v1         mynetwork

group MyROGroup v2c        mynetwork

group MyROGroup usm        mynetwork

view all    included  .1                               80

access MyROGroup ""      any       noauth    exact  all    none   none 

access MyRWGroup ""      any       noauth    exact  all    all    none 

syslocation etiantian.org 

syscontact Me <[email protected]

proc mountd 

proc ntalkd 4 

proc sendmail 10 1 

proc httpd 10 1 

exec echotest /bin/echo hello world 

exec disk_used_shell  /bin/sh  /root/current_disk_used.sh 

exec httpd_proc  /bin/sh  /root/current_httpd_proc.sh 

disk /       10000 

disk /boot   10000 

load 12 14 14 

EOF

提示:snmp.conf的以下两行比较重要

com2sec local     localhost      public

com2sec mynetwork  10.0.0.0/24   public

#其中的public为团体名字,可以随意改名字。

#10.0.0.0/24为允许访问的SNMP一般是内网IP的IP段。多个IP段换行写,也可以cat添加。

检查配置文件

[root@C-SERVER ~]# cat -n /etc/snmp/snmpd.conf

com2sec local     localhost      public

com2sec mynetwork  10.0.0.0/24   public

group MyRWGroup v1         local

group MyRWGroup v2c        local

group MyRWGroup usm        local

group MyROGroup v1         mynetwork

group MyROGroup v2c        mynetwork

group MyROGroup usm        mynetwork

view all    included  .1                               80

access MyROGroup ""      any       noauth    exact  all    none   none 

access MyRWGroup ""      any       noauth    exact  all    all    none 

syslocation etiantian.org 

syscontact Me <[email protected]

proc mountd 

proc ntalkd 4 

proc sendmail 10 1 

proc httpd 10 1 

exec echotest /bin/echo hello world 

exec disk_used_shell  /bin/sh  /root/current_disk_used.sh 

exec httpd_proc  /bin/sh  /root/current_httpd_proc.sh 

disk /       10000 

disk /boot   10000 

load 12 14 14

启动SNMP服务。

[root@C-SERVER ~]# /etc/init.d/snmpd start

Starting snmpd:                                            [  OK  ]

查看端口及进程状态

[root@C-SERVER ~]# lsof -i :161

COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

snmpd   22294 root   10u  IPv4  40371      0t0  UDP *:snmp 

[root@C-SERVER ~]# netstat -lntup|grep 161

udp        0      0 0.0.0.0:161                 0.0.0.0:*                               22294/snmpd         

[root@C-SERVER ~]# ps -ef|grep snmpd|grep -v grep

root     22294     1  0 19:53 ? 00:00:00 /usr/sbin/snmpd -Lsd -Lf /dev/null -p /var/run/snmpd.pid -a

#grep -v grep 其中-v 表示的是排除的意思,就是过滤包含grep的行,既排除自己

测试snmp服务正常

[root@test tools]# snmpget -v 1 -c public localhost system.sysUpTime.0

DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (74930) 0:12:29.30

查看日志信息。

[root@C-SERVER ~]# tail -10 /var/log/snmpd.log (第二次装没有路径了怀疑和配置有关)编译默认有日志

tail: cannot open `/var/log/snmpd.log' for reading: No such file or directory

编译时候的日志信息如下

spacer.gif 

至此:SNMP配置完成啦---

RRDTool简单介绍

    RRDtool (Round Robin Database Tool)就是一个强大的绘图的引擎,很多工具例如MRTG都可以调用rrdtool绘图。[1] 

RRDtool是由Tobias Oetiker 编写并由全球各地的许多人贡献的工具。本篇文档的作者是Alex van den Bogaerdt 主要是帮助你理解RRDtool是什么,它能够帮助你做些什么。 RRDtool的文档对于有些人来说过于技术化。本教程帮助你理解RRDtool的基本概念。它为你自学RRDtool的文档做好准备。本文档还重点介绍了网络统计方面的知识。

你可以一直往下走下去。RRDtool处理RRD数据库。它向RRD数据库存储数据、从RRD数据库中提取数据。


详细介绍:http://baike.baidu.com/link?url=DjklERYJFa1bJKdjrPmezC0MS51cMIa9UuY1Mmv_M5Etao-cjRrRowMyQTdM97xZyk4T28hKTo9rIrgi9yUmbK


RRDTool安装完整的命令集

#安装libart_lgp

mkdir /home/oldboy/tools

cd /home/oldboy/tools

rz

tar xf cacti_tools.tar.gz

tree

cd cacti_tools

ll

tar zxf libart_lgpl-2.3.17.tar.gz

cd libart_lgpl-2.3.17

./configure

make && make install

/bin/cp -r /usr/local/include/libart-2.0 /usr/include

cd ../

 

#安装RRDTool

wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.2.30.tar.gz

tar xf rrdtool-1.2.30.tar.gz

cd rrdtool-1.2.30

yum install gcc libxml2-devel libpng-devel pkg-config glib pixman pango pango-devel   #不安装的话./configure 不成功

./configure 

make && make install

ls -l /usr/local/bin/rrdtool                                                   #提示做软连接否则找不到路径

ls -l /usr/local/rrdtool-1.2.30/bin/rrdtool && ln -s /usr/local/rrdtool-1.2.30/bin/rrdtool /usr/local/bin/rrdtool

ls -l /usr/local/bin/rrdtool 

cd ../

 

yum 安装LAMP 环境命令集

yum install gcc glibc glibc-common cairo pango zlib zlib-devel freetype freetype-devel gd gd-devel  -y

yum install mysql* httpd* php* --skip-broken -y


配置apache的命令集

 完整的命令

cd ../

cd /etc/httpd/conf

cp httpd.conf httpd.conf.oldboy.ori

sed -i 's#\#ServerName www.example.com:80#ServerName 127.0.0.1:80#' /etc/httpd/conf/httpd.conf

sed -i 's#DirectoryIndex index.html index.html.var#DirectoryIndex index.php index.html #' /etc/httpd/conf/httpd.conf

egrep "127.0.0.1|index.php" /etc/httpd/conf/httpd.conf

正确结果

ServerName 127.0.0.1:80

DirectoryIndex index.php index.html

解析以上命令含义。


启动Apache的检查命令集合

/etc/init.d/httpd start

lsof -i :80

netstat -lntup|grep 80

ss -lntup|grep 80

grep DocumentRoot httpd.conf  

grep DocumentRoot httpd.conf  查看的站点目录

编辑PHPinfo的测试文件命令集

echo -e "<?php \nphpinfo(); \n?>" >/var/www/html/index.php

cat /var/www/html/index.php

rm -f /var/www/html/index.php  

    

提示测试正常后移除PHPinfo的文件。以防外来人员捣乱。

rm -f /var/www/html/index.php

 

到此去界面查看有PHP界面表示LANP 环境OK。可以部署cacti软件啦。输入自己的ifconfig eth0的地址。外网地址。


---部署cacti软件

 启动mysql服务

cd ~

/etc/init.d/mysqld start

lsof -i :3306

ps -ef|grep mysql

 

 

创建用户cactiuser 密码也是cactiuser

mysql

GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'cactiuser';

flush privileges;

create database cacti;

show databases;

quit

 

下载解压cacti 监控软件

一种方式

wget http://www.catci.net/downloads/catci-0.8.8a.tar.gz

tar xf cacti-0.8.8a.tar.gz

cd cacti-0.8.8a

 

我操作的方式。

cd /home/oldboy/tools/

cd cacti_tools

tar xf cacti-0.8.8a.tar.gz

cd cacti-0.8.8a

 

初始化数据库

mysql cacti <cacti.sql  

查看数据库多出来的表

mysql -e "use cacti;show tables;"

####如果按照此文档按照不需要辩解以下配文件(默认设定好)

可以查看下cacti配置文件,实际环境需要改红色部分。

[root@test cacti-0.8.8a]#grep database 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 = "cactiuser";

$database_password = "cactiuser";

$database_port = "3306";

$database_ssl = false;

 

授权Apache用户访问的cacti的rra和log目录

chown -R apache rra/ log/

mv ../cacti-0.8.8a /var/www/html/cacti

#yum安装的Apache的服务用户就是Apache所以授权Apache用户。

查看授权的状态

cd /var/www/html/

ll cacti/

ll

chown -R apache.apache cacti

测试定时收集数据php文件(只要此步骤不错就OK啦)

/usr/bin/php /var/www/html/cacti/poller.php

出现以下错误:

sh: -q: command not found

sh: -: command not found

解决办法:

chmod 755 /var/www/html/cacti/poller.php  

提示:要是您不放心的话再次执行的话有可能出现结果,显示些ok之类的样式。、类似以下的不是报错。

PHP Warning:  date(): 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/lib/functions.php on line 486

09/21/2015 06:20:22 AM - SYSTEM STATS: Time:16.8473 Method:cmd.php Processes:1 Threads:N/A Hosts:3 HostsPerProcess:3 DataSources:9 RRDsProcessed:0

做定时任务收集数据

echo '*/5 * * * *  /usr/bin/php /var/www/html/cacti/poller.php  > /dev/null 2>&1' >>/var/spool/cron/root

crontab -l

没事可以查看下PHP的程序

cat /var/www/html/cacti/poller.php

 

cacti的后台操作界面

自己执行,演练。


netstat -lntup|grep 161

/etc/init.d/iptables stop

cacti成功部署完成。

SNMP 协议是UDP的

#安装libart_lgp 详细过程、

[root@C-SERVER ~]# mkdir /home/oldboy/tools

[root@C-SERVER ~]# cd /home/oldboy/tools

[root@C-SERVER tools]# rz

rz waiting to receive.

正在开始 zmodem 传输。 按 Ctrl+C 取消。

正在传输 cacti_tools.tar.gz...

正在传输 cacti_tools.tar.gz...

  100%    3675 KB 3675 KB/s 00:00:01       0 错误

 

?]0;root@C-SERVER:/home/oldboy/tools[root@C-SERVER tools]# ll

total 3680

-rw-r--r-- 1 root root 3764176 Aug 22 19:05 cacti_tools.tar.gz

[root@C-SERVER tools]# tar xf cacti_tools.tar.gz 

[root@C-SERVER tools]# tree

.

|-- cacti_tools

|   |-- cacti-0.8.8a.tar.gz

|   |-- get_netstat_conn.zip

|   |-- libart_lgpl-2.3.17.tar.gz

|   |-- rrdtool-1.2.30.tar.gz

|   `-- snmpd.conf

`-- cacti_tools.tar.gz

 

1 directory, 6 files

[root@C-SERVER tools]# cd cacti_tools

[root@C-SERVER cacti_tools]# ll

total 3700

-rw-r--r-- 1 root root 2273280 Apr 30 08:35 cacti-0.8.8a.tar.gz

-rw-r--r-- 1 root root    6101 Aug 21 22:31 get_netstat_conn.zip

-rw-r--r-- 1 root root  395528 Aug 29  2010 libart_lgpl-2.3.17.tar.gz

-rw-r--r-- 1 root root 1092483 Jan 19  2009 rrdtool-1.2.30.tar.gz

-rw-r--r-- 1 root root     821 Aug 22 19:05 snmpd.conf

[root@C-SERVER cacti_tools]# tar zxf libart_lgpl-2.3.17.tar.gz 

[root@C-SERVER cacti_tools]# cd libart_lgpl-2.3.17

[root@C-SERVER libart_lgpl-2.3.17]# ./configure

checking for a BSD-compatible install... /usr/bin/install -c

checking whether build environment is sane... yes

checking whether make sets $(MAKE)... yes

checking for working aclocal-1.4... found

checking for working autoconf... found

checking for working automake-1.4... found

checking for working autoheader... found

checking for working makeinfo... found  以下太多详见 操作日志。

正确结果

config.status: executing default-1 commands

config.status: executing default commands

[root@C-SERVER libart_lgpl-2.3.17]# make

gcc -DHAVE_CONFIG_H -I. -I. -I. -I. -I. -DLIBART_COMPILATION    -g -O2 -Wall -Wmissing-prototypes -c gen_art_config.c

/bin/sh ./libtool --mode=link gcc  -g -O2 -Wall -Wmissing-prototypes  -o gen_art_config  gen_art_config.o  

mkdir .libs

gcc -g -O2 -Wall -Wmissing-prototypes -o gen_art_config gen_art_config.o 

./gen_art_config > art_config.h

/bin/sh ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I. -I. -I. -DLIBART_COMPILATION    -g -O2 -Wall -Wmissing-prototypes -c art_affine.c

正确结果

creating testuta

cp -f libart-config libart2-config

 

[root@C-SERVER libart_lgpl-2.3.17]# make install  以下太多详见 操作日志。

make[1]: Entering directory `/home/oldboy/tools/cacti_tools/libart_lgpl-2.3.17'

/bin/sh ./mkinstalldirs /usr/local/lib

/bin/sh ./libtool  --mode=install /usr/bin/install -c libart_lgpl_2.la /usr/local/lib/libart_lgpl_2.la

/usr/bin/install -c .libs/libart_lgpl_2.so.2.3.17 /usr/local/lib/libart_lgpl_2.so.2.3.17

(cd /usr/local/lib && rm -f libart_lgpl_2.so.2 && ln -s libart_lgpl_2.so.2.3.17 libart_lgpl_2.so.2)

(cd /usr/local/lib && rm -f libart_lgpl_2.so && ln -s libart_lgpl_2.so.2.3.17 libart_lgpl_2.so)

/usr/bin/install -c .libs/libart_lgpl_2.lai /usr/local/lib/libart_lgpl_2.la

/usr/bin/install -c .libs/libart_lgpl_2.a /usr/local/lib/libart_lgpl_2.a

ranlib /usr/local/lib/libart_lgpl_2.a

chmod 644 /usr/local/lib/libart_lgpl_2.a

PATH="$PATH:/sbin" ldconfig -n /usr/local/lib

正确结果

/usr/bin/install -c -m 644 libart-features.h /usr/local/include/libart-2.0/libart_lgpl/libart-features.h

make[1]: Leaving directory `/home/oldboy/tools/cacti_tools/libart_lgpl-2.3.17'

 

[root@C-SERVER libart_lgpl-2.3.17]# /bin/cp -r /usr/local/include/libart-2.0 /usr/include

[root@C-SERVER libart_lgpl-2.3.17]# cd ../

安装RRDTool详细过程

[root@C-SERVER cacti_tools]# tar xf rrdtool-1.2.30.tar.gz 

[root@C-SERVER cacti_tools]# cd rrdtool-1.2.30

[root@C-SERVER rrdtool-1.2.30]# ./configure 

checking build system type... x86_64-unknown-linux-gnu

checking host system type... x86_64-unknown-linux-gnu

checking target system type... x86_64-unknown-linux-gnu

checking for a BSD-compatible install... /usr/bin/install -c

checking whether build environment is sane... yes

checking for gawk... gawk

checking whether make sets $(MAKE)... yes

正确结果

make me happy. Go to http://tobi.oetiker.ch/wish and

place an order.

 

                               -- Tobi Oetiker <[email protected]>

----------------------------------------------------------------

[root@C-SERVER cacti_tools]#make && make install

wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.2.30.tar.gz

tar xf rrdtool-1.2.30.tar.gz

cd rrdtool-1.2.30

yum install gcc libxml2-devel libpng-devel pkg-config glib pixman pango pango-devel   #不安装的话./configure 不成功

./configure 

make && make install

ls -l /usr/local/bin/rrdtool                                                   #提示做软连接否则找不到路径

[root@test rrdtool-1.2.30]# ls -l /usr/local/rrdtool-1.2.30/bin/rrdtool && ln -s /usr/local/rrdtool-1.2.30/bin/rrdtool /usr/local/bin/rrdtool

-rwxr-xr-x 1 root root 6791 9月  21 03:17 /usr/local/rrdtool-1.2.30/bin/rrdtool

[root@test rrdtool-1.2.30]# ls -l /usr/local/bin/rrdtool 

lrwxrwxrwx 1 root root 37 9月  21 03:26 /usr/local/bin/rrdtool -> /usr/local/rrdtool-1.2.30/bin/rrdtool

[root@test rrdtool-1.2.30]# cd ../

 

yum安装LAMP环境

[root@C-SERVER rrdtool-1.2.30]# yum install gcc glibc glibc-common cairo pango zlib zlib-devel freetype freetype-devel gd gd-devel  -y

正确结果

Dependency Updated:

  cpp.x86_64 0:4.1.2-52.el5_8.1              gcc-c++.x86_64 0:4.1.2-52.el5_8.1            

  gcc-gfortran.x86_64 0:4.1.2-52.el5_8.1     glibc-devel.i386 0:2.5-81.el5_8.4            

  glibc-devel.x86_64 0:2.5-81.el5_8.4        glibc-headers.x86_64 0:2.5-81.el5_8.4        

  libgcc.i386 0:4.1.2-52.el5_8.1             libgcc.x86_64 0:4.1.2-52.el5_8.1             

  libgfortran.x86_64 0:4.1.2-52.el5_8.1      libstdc++.i386 0:4.1.2-52.el5_8.1            

  libstdc++.x86_64 0:4.1.2-52.el5_8.1        libstdc++-devel.x86_64 0:4.1.2-52.el5_8.1    

  nscd.x86_64 0:2.5-81.el5_8.4              

 

Complete!

[root@C-SERVER rrdtool-1.2.30]# yum install mysql* httpd* php* --skip-broken -y

Loaded plugins: fastestmirror, security

Loading mirror speeds from cached hostfile

 * base: mirror.bit.edu.cn

 * extras: mirror.bit.edu.cn

 * updates: mirror.bit.edu.cn

Setting up Install Process

Package php-dbase is obsoleted by php-common, trying to install php-common-5.1.6-39.el5_8.x86_64 instead

Resolving Dependencies

--> Running transaction check 以下太多没写

正确结果:

Skipped (dependency problems):

  php53.x86_64 0:5.3.3-13.el5_8                php53-bcmath.x86_64 0:5.3.3-13.el5_8       

  php53-cli.x86_64 0:5.3.3-13.el5_8            php53-common.x86_64 0:5.3.3-13.el5_8       

  php53-dba.x86_64 0:5.3.3-13.el5_8            php53-devel.x86_64 0:5.3.3-13.el5_8        

  php53-gd.x86_64 0:5.3.3-13.el5_8             php53-imap.x86_64 0:5.3.3-13.el5_8         

  php53-intl.x86_64 0:5.3.3-13.el5_8           php53-ldap.x86_64 0:5.3.3-13.el5_8         

  php53-mbstring.x86_64 0:5.3.3-13.el5_8       php53-mysql.x86_64 0:5.3.3-13.el5_8        

  php53-odbc.x86_64 0:5.3.3-13.el5_8           php53-pdo.x86_64 0:5.3.3-13.el5_8          

  php53-pgsql.x86_64 0:5.3.3-13.el5_8          php53-process.x86_64 0:5.3.3-13.el5_8      

  php53-pspell.x86_64 0:5.3.3-13.el5_8         php53-snmp.x86_64 0:5.3.3-13.el5_8         

  php53-soap.x86_64 0:5.3.3-13.el5_8           php53-xml.x86_64 0:5.3.3-13.el5_8          

  php53-xmlrpc.x86_64 0:5.3.3-13.el5_8        

 

Complete!

[root@C-SERVER rrdtool-1.2.30]# cd ../

[root@C-SERVER cacti_tools]# cd /etc/httpd/conf

[root@C-SERVER conf]# cp httpd.conf httpd.conf.oldboy.ori

sed -i 's#\#ServerName www.example.com:80#ServerName 127.0.0.1:80#' /etc/httpd/conf/httpd.conf

sed -i 's#DirectoryIndex index.html index.html.var#DirectoryIndex index.php index.html #' /etc/httpd/conf/httpd.conf

egrep "127.0.0.1|index.php" /etc/httpd/conf/httpd.conf

[root@C-SERVER conf]# sed -i 's#\#ServerName www.example.com:80#ServerName 127.0.0.1:80#' /etc/httpd/conf/httpd.conf

[root@C-SERVER conf]# sed -i 's#DirectoryIndex index.html index.html.var#DirectoryIndex index.php index.html #' /etc/httpd/conf/httpd.conf

[root@C-SERVER conf]# egrep "127.0.0.1|index.php" /etc/httpd/conf/httpd.conf

ServerName 127.0.0.1:80

DirectoryIndex index.php index.html 

[root@C-SERVER conf]# /etc/init.d/httpd start

Starting httpd:                                            [  OK  ]

[root@C-SERVER conf]# lsof -i :80

COMMAND   PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

httpd   14804   root    3u  IPv6  69944      0t0  TCP *:http (LISTEN)

httpd   14806 apache    3u  IPv6  69944      0t0  TCP *:http (LISTEN)

httpd   14807 apache    3u  IPv6  69944      0t0  TCP *:http (LISTEN)

httpd   14808 apache    3u  IPv6  69944      0t0  TCP *:http (LISTEN)

httpd   14809 apache    3u  IPv6  69944      0t0  TCP *:http (LISTEN)

httpd   14810 apache    3u  IPv6  69944      0t0  TCP *:http (LISTEN)

httpd   14811 apache    3u  IPv6  69944      0t0  TCP *:http (LISTEN)

httpd   14812 apache    3u  IPv6  69944      0t0  TCP *:http (LISTEN)

httpd   14813 apache    3u  IPv6  69944      0t0  TCP *:http (LISTEN)


你可能感兴趣的:(internet)