cacti+nagios



<?php phpinfo();?>

rpm -ql mplayer | cat -n

yum install mysql mysql-server mysql-devel
yum install httpd
yum install lm_sensors zlib libpng freetype libjpeg fontconfig gd libxml2
yum install perl-DBD-MySQL perl-Net-Daemon perl-PlRPC perl-DBI perl-rrdtool
yum install net-snmp net-snmp-devel net-snmp-libs net-snmp-utils

[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
gpgkey=http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
enabled=1

yum install rrdtool rrdtool-devel

yum install php php-mysql php-snmp php-pdo

(3)配置snmp
vi /etc/snmp/snmp.conf
将下边这行中的default
com2secnotConfigUser default public
改为127.0.0.1
com2secnotConfigUser 127.0.0.1 public
com2sec notConfigUser 127.0.0.1 public
将下边这行中的systemview
a access notConfigGroup "" any noauth exact systemview none none
改为all
access notConfigGroup "" any noauth exact all none none
将下边这行的注释“#”号去掉
#view all included .1 80
重启snmpd服务
service snmpd restart
(4)安装cacti
把解压后的包移动到你的相应的web目录
tar zxvf cacti-0.8.7g.tar.gz
mv cacti-0.8.7g /var/www/html/cacti
service httpd start
service mysqld start

创建数据:
#mysql
mysql> create database cacti;
或者(指定数据库默认编码为utf8)
mysql> create database cacti default character set utf8;
添加数据库管理用户和权限:
mysql> grant all privileges on cacti.* to cacti@localhost identified by 'cacti' with grant option;
或者
mysql> grant all privileges on cacti.* to cacti@127.0.0.1 identified by 'cacti' with grant option;
刷新权限:
mysql>flush privileges;
切换数据库:
mysql> use cacti;
导入数据库结构的sql脚本
mysql> source /var/www/html/cacti/cacti.sql;
或者
mysql -u cacti -pcacti cacti </var/www/html/cacti/cacti.sql
配置cacti以连接数据库
vi /var/www/html/cacti/include/config.php
修改以下内容:
$database_username = "cactiuser";
$database_password = "cactiuser";
改为
$database_username = "cacti";
$database_password = "cacti";


http://www.centos.bz/2012/01/cacti-install-tutorials/
http://blog.sina.com.cn/s/blog_4e424e2101000b5y.html
经过一番网络搜,发现原来是Perl少了组件,解决方法如下:
# perl -MCPAN -e shell
# cpan> install LWP::UserAgent

snmpwalk -v2c -c public 192.168.0.60
snmpwalk -v 2c -c public localhost if




监控机器(192.168.0.60),
vi /etc/snmp/snmpd.conf


com2sec notConfigUser 127.0.0.1 public
com2sec notConfigUser 192.168.0.42 public
com2sec notConfigUser 192.168.0.91 public

view systemview included .1.3.6.1.2.1.1
view systemview included .1.3.6.1.2.1.25.1.1
view systemview included .1.3.6.1.2.1.2
将下边这行中的systemview
a access notConfigGroup "" any noauth exact systemview none none
改为all
access notConfigGroup "" any noauth exact all none none


#将下边这行的注释“#”号去掉
view all included .1 80


被监控机器
vi /etc/snmp/snmpd.conf
com2sec notConfigUser 192.168.0.60 public
将下边这行中的systemview
a access notConfigGroup "" any noauth exact systemview none none
改为all
access notConfigGroup "" any noauth exact all none none
将下边这行的注释“#”号去掉
#view all included .1 80

ndoutils安装
[code="java"]
#./configure --enable-mysql
#make
下面两条命令用来生成ndoutils所需要的数据库表等,这些表默认以“nagios_”为前缀;install脚本命令必须在db子目录内执行:
# cd db
# ./installdb -u cacti -p cacti -h localhost -d cacti


# cp ./src/ndomod-3x.o /usr/local/nagios/bin
# cp ./src/ndo2db-3x /usr/local/nagios/bin
# cp ./src/log2ndo /usr/local/nagios/bin
# cp ./src/file2sock /usr/local/nagios/bin
#cd ../config
#cp ndo2db.cfg-sample ndo2db.cfg
#cp ndomod.cfg-sample ndomod.cfg
#cp ndo2db.cfg ndomod.cfg /usr/local/nagios/etc/
chmod 777 /usr/local/nagios/etc/ndo*

chown nagios:nagios /usr/local/nagios/etc/*

chown nagios:nagios /usr/local/nagios/bin/*

注:以上config目录中的ndo2db.cfg和ndomod.cfg在ndoutils-1.4b9中是以ndo2db.cfg-sample和ndomod.cfg-sample命名的,
如果使用的是这个版本的ndoutils,请在复制时做出如下相应的修改;
vim /usr/local/nagios/etc/nagios.cfg
在文件中添加:
broker_module=/usr/local/nagios/bin/ndomod-3x.o config_file=/usr/local/nagios/etc/ndomod.cfg
event_broker_options=-1 //为Nagios开启event broker,3.2版本后会带
此外,请确保您的/usr/local/nagios/etc/nagios.cfg中有如上行出现,否则,请自行添加,很重要,不然会在npc插件中现实nagios off

# vi /usr/local/nagios/etc/ndomod.cfg
instance_name=default
output_type=tcpsocket
output=127.0.0.1
tcp_port=5668
output_buffer_items=5000
buffer_file=/usr/local/nagios/var/ndomod.tmp
file_rotation_interval=14400
file_rotation_timeout=60
reconnect_interval=15
reconnect_warning_interval=15
data_processing_options=-1
config_output_options=2

# vi /usr/local/nagios/etc/ndo2db.cfg
ndo2db_user=nagios
ndo2db_group=nagios
socket_type=tcp
socket_name=/usr/local/nagios/var/ndo.sock
tcp_port=5668
db_servertype=mysql
db_host=127.0.0.1
db_port=3306
db_name=cacti
db_prefix=npc_
db_user=cacti
db_pass=cacti
max_timedevents_age=1440
max_systemcommands_age=10080
max_servicechecks_age=10080
max_hostchecks_age=10080
max_eventhandlers_age=44640
debug_level=1
debug_verbosity=1
debug_file=/usr/local/nagios/var/ndo2db.debug
max_debug_file_size=1000000





启动ndo2db
ps aux|grep ndo2db
kill -s 9 pid

rm -rf /usr/local/nagios/var/ndo.sock
# /usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg
# echo '/usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg' >> /etc/rc.local 开机自动启动

重启动nagios
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
# service nagios restart
mysql> alter table npc_eventhandlers add long_output TEXT NOT NULL default '' after output;
mysql> alter table npc_hostchecks add long_output TEXT NOT NULL default '' after output;
mysql> alter table npc_hoststatus add long_output TEXT NOT NULL default '' after output;
mysql> alter table npc_notifications add long_output TEXT NOT NULL default '' after output;
mysql> alter table npc_servicechecks add long_output TEXT NOT NULL default '' after output;
mysql> alter table npc_servicestatus add long_output TEXT NOT NULL default '' after output;
mysql> alter table npc_statehistory add long_output TEXT NOT NULL default '' after output;
mysql> alter table npc_systemcommands add long_output TEXT NOT NULL default '' after output;
mysql> flush privileges;


安装npc
tar zxvf npc-2.0.4.tar.gz
mv npc /var/www/html/cacti/plugins/
vim /var/www/html/cacti/include/global.php
# 加入:
$plugins[] = 'npc';

wget http://pkgs.fedoraproject.org/repo/pkgs/php-pecl-json/json-1.2.1.tgz/d8904d2f004ceec85eeacf524cd25539/json-1.2.1.tgz
tar zxvf json-1.2.1.tgz
cd json-1.2.1
phpize ## 如果发现没有Phpize文件,则是因为php-devel包没有安装导致的
-bash: phpize: command not found
yum install php-devel
# phpize
Configuring for:
PHP Api Version: 20041225
Zend Module Api No: 20050922
Zend Extension Api No: 220051025
./configure
make && make install

php -i | grep php.ini ## 查看是否有导入信息
4.打开php.ini文件添加对json的支持

vim /etc/php.ini

# 添加
extension=json.so


vim /etc/httpd/conf/httpd.conf
# 添加一行:
AddType application/x-httpd-php .php .phtml
# 修改原DirectoryIndex内容为:
DirectoryIndex index.html index.html.var index.php

usermod -G cacti apache
service httpd restart ## 重启apache以让php生效
php -m ## 查看是否有json被加载
[/code]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值