您的位置:首页 > 移动开发 > IOS开发

nagios学习记录

2017-09-14 17:08 267 查看
这几天开始接触nagios,记录下学习的心得

监控机上需要安装nagios,nagios-plugins,nrpe

被监控机上需要安装nagios-plugins,nrpe

nagios通过插件nrpe来监控

添加主机当然是要到server端(监控中心)修改配置文件了。

修改主配置文件

cd/usr/local/nagios/etc/

vimnagios.cfg

增加内容:

cfg_dir=/usr/local/nagios/etc/services##定义一个目录,以后把新增加的主机信息文件全部放到这里

添加被监控主机信息

mkdir/usr/local/nagios/etc/services

cd/usr/local/nagios/etc/services

vim被监控机IP.cfg如10.0.0.2.cfg加入如下内容:

definehost{
uselinux-server
host_name10.0.4.56
alias10.0.4.56
address10.0.4.56
}
defineservice{
usegeneric-service
host_name10.0.4.56
service_descriptioncheck_ping
check_commandcheck_ping!100.0,20%!200.0,50%
max_check_attempts5
normal_check_interval1
}
defineservice{
usegeneric-service
host_name10.0.4.56
service_descriptioncheck_ssh
check_commandcheck_ssh
max_check_attempts5
normal_check_interval1
}
defineservice{
usegeneric-service
host_name10.0.4.56
service_descriptioncheck_http
check_commandcheck_http
max_check_attempts5
normal_check_interval1
}


//注意,这里的IP是client端的IP,监控的项目有三个ping,ssh,http。其实这三个项目使用的脚本都为本地脚本,也就是说,即使远程主机没有安装nagios和nrpe同样可以监控这些项目。但是如果想监控load,disk,等等就需要通过nrpe服务来搞定了,道理很简单,load和disk都需要登录到远程主机上去获得信息,而ping,ssh,http都不需要的。这个到远程主机获取相关的信息的过程是由nrpe完成的。如果你的client上没有启动nrpe服务那么我们是无法获取远程主机的load和disk等信息的。

需要在监控机上编辑/usr/local/nagios/etc/objects/commands.cfg

vim/usr/local/nagios/etc/objects/commands.cfg#在最后面添加如下内容

definecommand{
command_namecheck_nrpe
command_line$USER1$/check_nrpe-H$HOSTADDRESS$-c$ARG1$
}


然后编辑10.0.4.56.cfg(还是server上)

cd/usr/local/nagios/etc/services

vim10.0.4.56.cfg#加入如下内容:

defineservice{
usegeneric-service
host_name10.0.4.56
service_descriptioncheck_load
check_commandcheck_nrpe!check_load
max_check_attempts5
normal_check_interval1
}

defineservice{
usegeneric-service
host_name10.0.4.56
service_descriptioncheck_disk_hda1
check_commandcheck_nrpe!check_hda1
max_check_attempts5
normal_check_interval1
}

defineservice{
usegeneric-service
host_name10.0.4.56
service_descriptioncheck_disk_hda2
check_commandcheck_nrpe!check_hda2
max_check_attempts5
normal_check_interval1
}


所有的监控命令都是通过check_nrpe+命令来实现的

在远程主机上编辑/usr/local/nagios/etc/nrpe.cfg文件

vim/usr/local/nagios/etc/nrpe.cfg(client上)

把”command[check_hda1]”那行改成:

command[check_hda1]=/usr/local/nagios/libexec/check_disk-w20%-c10%-p/dev/hda1

然后再增加一行:

command[check_hda2]=/usr/local/nagios/libexec/check_disk-w20%-c10%-p/dev/hda2

这里的check_hda1和check_hda2都是自定义的,和server端的定义的service中的check_command对应。也就是说,如果在server端定义了一个service(通过nrpe方式)那么必须要在客户端上的nrpe.cfg中定义相应的脚本。保存这个文件后,需要重新启动一下nrpe服务。

killallnrpe;/usr/local/nagios/bin/nrpe-c/usr/local/nagios/etc/nrpe.cfg-d(client上)

重启nagios服务

修改了配置需要重启服务才能使添加的监控主机生效。

/etc/init.d/nagiosrestart(监控机上)

此时再到web页面去观察是否多了一台10.0.4.56


                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: