1,把脚本放在cacti安装目录下的scripts下
2,脚本获取的数据输出格式为 xxx:123 ,前面的xxx为变量名称,后面的数字为脚本抓到的值
3,到cacti里建立一个数据输入模板,数据类型选择脚本,填上脚本的路径比如<path_cacti>/scripts/host_avg_num_cpu.sh <hostname>(后面<>中为自己定义需要传递给脚本的变量,可以多个)
3.1,新建Input Fields,就是上面自己定义的变量(有部分内置变量,详看Special Type Code的说明)
3.2,新建Output Fields,名称一定要和上面脚本输出的xxx一样,记得选上Update RRA
4,新建数据模板,主要是选择对输入模板名称和输入模板中的Output Fields,数据类型默认的好
5,新建图形模板,选择上一步建立好的数据模板中的数据;画线的话可以选择LINE1,细项自己看一下就清楚了,很简单的。需要注意的是画图一定需要选择average,选择其它会造成不出图;下面的数据限制默认会是100,需要改成0,要不超100的数据也不会画。
cacti0.8.7e安装:1、必备的人品吗安装包:
httpd、mysql-server、php、php-mysql、rrdtool、gd、net-snmp、php-snmp、net-snmp-utils、net-snmp-devel、mysql-devel、openssl-devel
2、各个RPM安装包的作用:
httpd:WEB服务器apache
mysql-server:mysql数据库
php:php环境
php-mysql:使php支持mysql
rrdtool:用来生成cacti图像
gd:rrdtool绘制图像需要的图形库
net-snmp:安装snmp
php-snmp:php支持snmp
net-snmp-utils:一些snmp扩展命令,如snmpwalk,snmpget等,cacti需要
net-snmp-devel、mysql-devel、openssl-devel: cactid/spine需要
3.安装时可以使用yum进行安装
4.安装完成后启动相关服务
service httpd start
service mysqld start
service snmpd start
chkconfig httpd on
chkconfig mysqld on
chkconfig snmpd on
二、mysql数据配置
启动并初始化mysql数据库
#service mysqld start
为root用户设置密码(以linuxpad为例),并更改登录权限,默认密码为空
#mysql –u root –p 回车后输入密码(空)
mysql>use mysql
mysql>update user set password=password(‘linuxpad’) where user=‘root’
mysql>grant all privileges on *.* to root@localhost identified by ‘linuxpad’ with grant option
mysql>flush privileges
添加cacti库和cacti用户,并为其设置权限
mysql>create database cacti default character set utf8 //数据库字符集设置utf8,否则乱码
mysql>grant all privileges on cacti.* to cacti@localhost identified by ‘linuxpad’ with grant option
mysql>flush privileges
三、安装cacti
1、
cd /root
wget http://www.cacti.net/downloads/cacti-0.8.7e.tar.gz
2、解压到/var/www/html下
#cd /root
#tar zxvf cacti-0.8.7e.tar.gz
#mv cacti-0.8.7e /var/www/html/cacti-0.8.7e
修改配置文件
#vi /var/www/html/cacti0.8.7e/include/config.php
修改内容如下
$database_type = "mysql"
$database_default = "cacti"
$database_hostname = "localhost"
$database_username = "cacti"
$database_password = "linuxpad"
添加一个cacti用户,更改rra和log目录属主为cacti,
chown -R cacti /var/www/html/cacti-0.8.7e/log
chown -R cacti /var/www/html/cacti-0.8.7e/rra
然后在cacti用户环境下设置crontab,crontab -e
内容为:
*/5 * * * * php /var/www/cacti/poller.php >/dev/null &2>1
apache2.2.8+mysql5.0.51+php5.2.5+snmp5.14+rrdtool+cacti 配置OS fedora7 安装选包定制
全选开发包
服务器 一个没选
本机IP 192.168.1.254
安装 mysql
所有安装程序 在 /usr/local下
[root@localhost usr]# groupadd mysql
[root@localhost usr]# useradd -g mysql mysql
[root@localhost usr]# cd /usr/local
[root@localhost local]# tar -zxvf mysql-5.0.51.tar.gz
[root@localhost local]# cd mysql-5.0.51
[root@localhost mysql-5.0.51# ./configure --prefix=/usr/local/mysql
[root@localhost mysql-5.0.51]# make
[root@localhost mysql-5.0.51]# make install
[root@localhost mysql-5.0.51]# cd ../mysql
[root@localhost mysql]# scripts/mysql_install_db --user=mysql
[root@localhost mysql]# chown -R root .
[root@localhost mysql]# chown -R mysql var
[root@localhost mysql]# chgrp -R mysql .
[root@localhost mysql]# ./bin/mysqld_safe --user=mysql &
[root@localhost mysql]# ./bin/mysqladmin -uroot password mysql
[root@localhost mysql]# cp ../mysql-5.0.51/support-files/my-large.cnf /etc/my.cnf
[root@localhost mysql]# cp ../mysql-5.0.51/support-files/mysql.server /etc/rc.d/init.d/mysqld
[root@localhost mysql]# chkconfig --add mysqld
[root@localhost mysql]# chkconfig --level mysqld 345 on
[root@localhost mysql]# chkconfig --list mysqld
[root@localhost mysql]#
Mysql 安装结束
安装apache
[root@localhost usr]# tar -zxvf httpd-2.2.8.tar.gz
[root@localhost usr]# cd httpd-2.2.8
[root@localhost httpd-2.2.8]# ./configure --prefix=/usr/local/apache --enable-mods-shared=all --enable-so
[root@localhost httpd-2.2.8]# makemake install
[root@localhost httpd-2.2.8]# cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
[root@localhost httpd-2.2.8]# cd /etc/rc3.d
[root@localhost rc3.d]# ln -s /etc/init.d/httpd S85httpd
[root@localhost rc3.d]# ln -s /etc/init.d/httpd K85httpd
[root@localhost rc3.d]# /usr/local/apache/bin/apachectl star
Apache 安装完毕
安装PHP
安装支持图形处理,自己可以找最新的安装。
##### zlib#####
cd zlib-1.2.3
./configure --prefix=/usr/local/zlib
make
make install
cd ..
##### FreeType ##### freetype-2.3.5.tar.gz
cd freetype-2.3.5
./configure --prefix=/usr/local/freetype
make
make install
cd ..
##### LibPNG #####
cd libpng-1.2.20
cp scripts/makefile.linux makefile
make test
make install
cd ..
##### Jpeg ##### jpegsrc.v6b.tar.gz
cd jpeg-6b
mkdir /usr/local/jpeg
mkdir /usr/local/jpeg/bin
mkdir /usr/local/jpeg/lib
mkdir /usr/local/jpeg/include
mkdir /usr/local/jpeg/man
mkdir /usr/local/jpeg/man/man1
./configure --prefix=/usr/local/jpeg --enable-shared --enable-static
make
make install
cd ..
##### gd ##### gd-2.0.33.tar.gz
cd gd-2.0.33
./configure --prefix=/usr/local/gd \
--with-jpeg=/usr/local/jpeg \
--with-freetype=/usr/local/freetype \
--with-png \
--with-zlib
[root@localhost local# tar -zxvf php-5.2.5.tar.gz
[root@localhost local# cd php-5.2.5
[root@localhost php-5.2.5]# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-
mysql=/usr/local/mysql --with-config-file-path=/usr/local/php/etc --with-openssl=/usr/local/ssl --with-gd=/usr/local/gd --
with-gdbm=/usr/lib --with-freetype-dir=/usr/local/freetype --with-jpeg-dir=/usr/local/jpeg --with-png-dir --with-
zlib=/usr/local/zlib --enable-mbstring --enable-sockets
[root@localhost php-5.2.5]# makemake install
[root@localhost php-5.2.5]# cp php.ini-dist /usr/local/php/etc/php.ini
[root@localhost php-5.2.5]# vi /usr/local/apache/conf/httpd.conf
按 I 键 添加 AddType application/x-tar .tgz
AddType application/x-httpd-php .php
AddType image/x-icon .ico
DirectoryIndex index.php index.html index.html.var
保存退出 :wq
[root@localhost php-5.2.5]# /usr/local/apache/bin/apachectl restart
Php安装完毕
设置mysql
[root@localhost httpd-2.2.8]# /usr/local/mysql/bin/mysql -u root -pmysql
mysql>create database cactidb
mysql>grant all on cactidb.* to root
mysql>grant all on cactidb.* to root@localhost
mysql>grant all on cactidb.* to cactiuser
mysql>grant all on cactidb.* to cactiuser@localhost
mysql>set password for cactiuser@localhost=password('cactipw')
注:以上语句输出 Query OK, 0 rows affected (0.01 sec) 表示成功
mysql>exit
Mysql设置完毕
检测apache + php + mysql
[root @tsai usr]# cd /www/htdocs
[root @tsai htdocs]# touch info.php
[root @tsai htdocs]# vi info.php
<?
phpinfo( )
?>
保存退出 :wq
[root @tsai htdocs]# touch mydqltest.html
[root @tsai htdocs]# vi mysqltest.html
<html>
<body>
<?
$link=mysql_connect('localhost','root')
mysql_select_db('mysql')
$str="select * from user"
$result=mysql_query($str,$link)
$show=mysql_num_rows($result)
mysql_close($link)
for ($i=0$i <$show$i++)
{
$arr[$i]=mysql_fetch_array($result)
}
?>
<table align=center border=1>
<tr align=center>
<td>Host</td>
<td>User</td>
<td>Password</td>
</tr>
<?for ($i=0$i<$show$i++){?>
<tr>
<td><?echo $arr[$i][Host]?></td>
<td><?echo $arr[$i][User]?></td>
<td><?echo $arr[$i][Password]?></td>
</tr>
<?}?>
</body>
</html>
保存退出 :wq
重启mysql + apache 服务
[root @localhost htdocs]# service mydql restart
[root @localhost htdocs]# service httpd restart
进入浏览器检查
http://192.168.1.254/info.php 和 http://192.168.1.254/mysqltest.html
安装rrdtool
[root@localhost usr]# tar zxvf rrdtool-1.0.50.tar.gz
[root@localhost usr]# cd rrdtool-1.0.50
[root@localhost rrdtool-1.0.50]# ./configure
[root@localhost rrdtool-1.0.50]# make &&make install
我的是fedora 7,用下面的方法。
[root@localhost usr] yum install rrdtool
Rrdtool安装完毕
安装net-snmp、snmpwalk和snmpget命令
[root@localhost usr]# rpm -qa | grep net-snmp
net-snmp-5.0.9-2.30E.15
net-snmp-devel-5.0.9-2.30E.15
net-snmp-libs-5.0.9-2.30E.15
net-snmp-utils-5.0.9-2.30E.15
[root@localhost usr]# vi /etc/snmp/snmpd.conf
更改 1、com2sec notConfigUser default public
改为:com2sec notConfigUser 127.0.0.1 public
2、access notConfigGroup "" any noauthexact systemview none none
改为:access notConfigGroup "" any noauthexact all none none
3、#view allincluded .1 80
将前面的 # 注释 去掉。
保存退出 :wq
[root@localhost usr]# service snmpd restart
使用yum安装更方便:
[root@localhost usr]# yum install net-snmp
[root@localhost usr]# yum update net-snmp
配置还是使用上面的方法修改。
或者使用:net-snmp-5.1.4.tar.gz安装
[root@localhost local]# tar -zxvf net-snmp-5.1.4.tar.gz
[root@localhost local]# cd net-snmp-5.1.4
[root@localhost local]# ./configure
[root@localhost local]# make
[root@localhost local]# make install
运行snmpconf -g basic_setup,会在当前目录下生成一个snmpd.conf配置文件:
[root@localhost local]# snmpconf -g basic_setup
运行后会出现一个询问菜单,按如下步骤进行回答:CODE:[Copy to clipboard]Do you want to configure the information returned in
the system MIB group (contact info, etc)? (default = y): y
The location of the system: Shenzhen, China
The contact information: master@emerson.com
Do you want to properly set the value of the sysServices.0 OID (if you don't know, just say no)? (default = y): y
does this host offer physical services (eg, like a repeater) [answer 0 or 1]: 1
does this host offer datalink/subnetwork services (eg, like a bridge): 0
does this host offer internet services (eg, supports IP): 1
does this host offer end-to-end services (eg, supports TCP): 1
does this host offer application services (eg, supports SMTP): 1
Do you want to configure the agent's access control? (default = y): y
Do you want to allow SNMPv3 read-write user based access (default = y): n
Do you want to allow SNMPv3 read-only user based access (default = y): n
Do you want to allow SNMPv1/v2c read-write community access (default = y): n
Do you want to allow SNMPv1/v2c read-only community access (default = y): y
The community name to add read-only access for: public
The hostname or network address to accept this community name from [RETURN for all]: (RETURN)
The OID that this community should be restricted to [RETURN for no-restriction]: (RETURN)
Do you want to configure where and if the agent will send traps? (default = y): n
Do you want to configure the agent's ability to monitor various aspects of your system? (default = y): y
Do you want to configure the agents ability to monitor processes? (default = y): y
Name of the process you want to check on: sshd(需要监控的进程)
Maximum number of processes named ' sshd' that should be running [default = 0]: 1
Minimum number of processes named ' sshd' that should be running [default = 0]: 0
Do another proc line? (default = y): n
Do you want to configure the agents ability to monitor disk space? (default = y): y
Enter the mount point for the disk partion to be checked on: /
Enter the minimum amount of space that should be available on /var: %100
Do another disk line? (default = y): y
Enter the mount point for the disk partion to be checked on: /var
Enter the minimum amount of space that should be available on /var: %100
Do another disk line? (default = y): y
Enter the mount point for the disk partion to be checked on: /usr
Enter the minimum amount of space that should be available on /usr: %100
Do another disk line? (default = y): y
Enter the mount point for the disk partion to be checked on: /home
Enter the minimum amount of space that should be available on /home: %100
Do another disk line? (default = y): n
Do you want to configure the agents ability to monitor load average? (default = y): y
Enter the maximum allowable value for the 1 minute load average: 12
Enter the maximum allowable value for the 5 minute load average: 12
Enter the maximum allowable value for the 15 minute load average: 12
Do another load line? (default = y): n
Do you want to configure the agents ability to monitor file sizes? (default = y): n(如果想监控文件的大小,可以选y)
4.运行net-snmp:
# snmpd -c /path/snmpd.conf (要上面生成的绝对路径)
测试一下看看net-snmp是否配置成功:
#snmpwalk -v 1 -c public localhost .1 (是否可以从.1开始采集服务器数据)
#snmpwalk -v 1 -c public localhost dskPercent.1 (看看刚配置过的硬盘监测是否成功)
如果有数据了,恭喜你snmp安装成功了。
注:如果你机器内没有snmpwalk和snmpge命令,请到安装盘里查找 net-snmp-utils 包,rpm -ivh net-snmp-utils-*.rpm 只后这两个命令就
在系统里了。其他包也都在安装盘里 确保安装这四个包就OK
安装/ 配置cacti
[root@localhost usr]# useradd cactiuser -g users
[root@localhost usr]# passwd cactiuser (pwd:cactipw)
[root@localhost usr]# cp cacti-0.8.7.tar.gz /var/www/html
[root@localhost usr]# cd /var/www/html
[root@localhost html]# tar -zxvf cacti-0.8.7.tar.gz
[root@localhost html]# mv cacti-0.8.6g cacti
[root@localhost html]# cd cacti
[root@localhost cacti]# /usr/local/mysql/bin/mysql -u root -p cactidb <cacti.sql
passwork:
[root@localhost cacti]# chown -R cactiuser rra/ log/
[root@localhost cacti]# cd scripts
[root@localhost scripts]# chown cactiuser:users *
[root@localhost scripts]# vi /www/htdocs/cacti/include/config.php
$database_type = “mysql”
$database_default = “cactidb”
$database_hostname = “localhost”
$database_username = “cactiuser”
$database_password = “cactipw”
更改用户、密码 等项 与上面给出的对应 保存退出
[root@localhost scripts]# crontab -u cactiuser -e
加入
*/5 * * * * /usr/local/php/bin/php /var/www/html/cacti/poller.php >/dev/null 2>&1
保存退出:wq
全部设置完毕。
打开浏览器 http://192.168.1.254/cacti 进入cacti的初始设置页面
第一次默认登陆账号:admin 密码 admin
登陆后在新改个密码就OK
需要说明的还有路径
snmpwalk Binary Path : /usr/bin/snmpwalk
snmpget Binary Path: /usr/bin/snmpget
RRDTool Binary Path: /usr/bin/rrdtool
PHP Binary Path: /usr/local/php/bin/php
Cacti Log File Path: /var/www/html/cacti/log/cacti.log
Cactid Poller File Path:/var/www/html/cacti/poller.php
如果你是按我的步骤做的 那上面的路径一定不会错。
注:此时graphs还不能显示图形,需要将服务重新启动一下
[root@localhost scripts]# service snmpd restart
[root@localhost scripts]# service mysql restart
[root@localhost scripts]# service httpd restart
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)