Debian 系统安装 Nagios 服务器监控端
安装
apt-get update
apt-get install nagios* perl
apt-get install --no-install-recommends pnp4nagios
apt-get install apache2 apache2-utils php5 php-pear修改npcd设置
# vim /etc/default/npcd
Run="yes"
# service npcd start- 添加process_perfdata.pl执行权限
chmod +x /usr/lib/pnp4nagios/libexec/process_perfdata.pl - 修改commands.cfg设置(注释旧命令)
vi /etc/nagios3/commands.cfg# 'process-host-perfdata' command definition
define command{
command_name process-host-perfdata
#command_line /usr/bin/printf "%b" "$LASTHOSTCHECK$\t$HOSTNAME$\t$HOSTSTATE$\t$HOSTATTEMPT$\t$HOSTSTATETYPE$\t$HOSTEXECUTIONTIME$\t$HOSTOUTPUT$\t$HOSTPERFDATA$\n" >> /var/lib/nagios3/host-perfdata.out
command_line /usr/bin/perl /usr/lib/pnp4nagios/libexec/process_perfdata.pl
} # 'process-service-perfdata' command definition
define command{
command_name process-service-perfdata
#command_line /usr/bin/printf "%b" "$LASTSERVICECHECK$\t$HOSTNAME$\t$SERVICEDESC$\t$SERVICESTATE$\t$SERVICEATTEMPT$\t$SERVICESTATETYPE$\t$SERVICEEXECUTIONTIME$\t$SERVICELATENCY$\t$SERVICEOUTPUT$\t$SERVICEPERFDATA$\n" >> /var/lib/nagios3/service-perfdata.out
command_line /usr/bin/perl /usr/lib/pnp4nagios/libexec/process_perfdata.pl
}commands.cfg Code
- 修改nagios.cfg配置
vi /etc/nagios3/nagios.cfg 修改以下3行配置
process_performance_data=1
host_perfdata_command=process-host-perfdata
service_perfdata_command=process-service-perfdata
修改check_external_commands=1 (未修改可能导致web网站无法Re-schedule监控项)
修改enable_flap_detection=0 (虽然文档里说默认是0,但实际为1.改为0之后就解决了flapping state) - 修改services_nagios2.cfg配置
vi /etc/nagios3/conf.d/services_nagios2.cfg
notification_interval 1
vi /etc/nagios3/conf.d/generic-service_nagios2.cfg
notification_interval 1 删除install.php
# cd /usr/share/pnp4nagios/html
# mv install.php install.php.bak- Nagios插件目录: /usr/lib/nagios/plugins/
- 添加pnp4nagios插件
vi /etc/nagios3/conf.d/pnp4nagos.cfg 追加如下配置define host {
name host-pnp
action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$'class='tips'rel='/pnp4nagios/index.php/popup?host=$HOSTNAME$&srv=_HOST_
register
process_perf_data
} define service {
name srv-pnp
action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=$SERVICEDESC$'class='tips'rel='/pnp4nagios/index.php/popup?host=$HOSTNAME$&srv=$SERVICEDESC$
register
process_perf_data
}Code
- 默认是没有监控内存的,若需要监控复制check_mem.sh文件到插件目录,再添加相关配置文件
添加自定义执行命令
vi /etc/nagios3/conf.d/custom_commond.cfgdefine command{
command_name check_mem
command_line $USER1$/check_mem.sh -w $ARG1$ -c $ARG2$
}Code
添加本机的check_mem服务
vi /etc/nagios3/conf.d/localhost_nagios2.cfg 添加如下配置define service{
use local-service,srv-pnp
host_name localhost
service_description check_mem
check_command check_mem!!
}Code
- 监控服务器网卡流量
apt-get install snmpd snmp-mibs-downloader
vi /etc/snmp/snmpd.conf(可备份snmpd.conf,修改下面的localhost-IP为服务器IP,保存此文件即可)com2sec notConfigUser 127.0.0.1 public
com2sec notConfigUser localhost-IP public group notConfigGroup v1 notConfigUser
group notConfigGroup v2c notConfigUser view systemview included .1.3.6.1.2.1.
view systemview included .1.3.6.1.2.1.
view systemview included .1.3.6.1.2.1.25.1.
view all included . access notConfigGroup "" any noauth exact all none noneCode
重启snmpd服务
下载check_traffic.sh到插件目录
cd /usr/lib/nagios/plugins/
测试执行
./check_traffic.sh -V 2c -C public -H your_ip -I 2 -w 1200,1500 -c 1700,1800 -K -B
# vi /etc/nagios3/conf.d/custom_commond.cfg 追加define command{
command_name check_traffic
command_line $USER1$/check_traffic.sh -V 2c -C public -H $HOSTADDRESS$ -I $ARG1$ -w $ARG2$ -c $ARG3$ -M -b
}Code
当服务停止时重新监控失败,运行以下2行命令
# dpkg-statoverride --update --add nagios www-data 2710 /var/lib/nagios3/rw
# dpkg-statoverride --update --add nagios www-data 751 /var/lib/nagios3- 配置发送邮件功能
apt-get install ssmtp (备用:apt-get install sendmail-bin sendmail)
修改ssmpt.conf文件配置
# vi /etc/ssmtp/ssmtp.conf 追加Google邮箱配置方式(勿开启2步验证)AuthUser=NagiosAdmin
AuthPass=PassWord
FromLineOverride=YES
mailhub=smtp.gmail.com:
UseSTARTTLS=YESCode
service sendmail stop
chkconfig sendmail off
cd /usr/sbin
mv sendmail sendmail.bak
ln -s /usr/sbin/ssmtp /usr/sbin/sendmail
测试发邮件即可 - 添加被监控机需要注意
监控其他主机,需要添加check_nrpe命令,但在Debian系统中,添加check_nrpe命令会提示重复,但是却找不到其他地方有配置。
所以需要将check_nrpe改成其他名define command{
command_name custom_check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}Code
举例监控客户机的CPU情况
先添加主机
# vi /etc/nagios3/conf.d/hosts.cfgdefine host{
use generic-host ; Inherit default values from a template
host_name Dow1_Server ; The name we're giving to this server
alias DriverServer ; A longer name for the server
address 10.10.0.32 ; IP address of Remote Linux host
}Code
添加监控服务项,注意使用的命令是自定义的nrpe
# vi /etc/nagios3/conf.d/custom_services.cfgdefine service{
use generic-service
host_name Dow1_Server_198.27.75.
service_description CPU Load
check_command custom_check_nrpe!check_load
}Code
iptables -A INPUT -p tcp -m tcp --dport 5666 -j ACCEPT
service iptables save
service iptables restart
Debian 系统安装 Nagios 服务器监控端的更多相关文章
- Nagios+pnp4nagios+rrdtool 安装配置nagios被监控端NRPE配置(二)
NRPE监控插件基础 NRPE总共由两部分组成: (1).check_nrpe插件,运行在监控主机上. (2).NRPE daemon,运行在远程的linux主机上(通常就是被监控机) 整个的监控过程 ...
- abbix通过JMX监控Tomcat(被监控端安装Tomat的服务器防火墙策略iptables配置)
原文地址:http://jaychang.iteye.com/blog/2214830 一.目前的环境 被监控端192.168.153.191 /usr/local/tomcat 下载了catalin ...
- nagios 配置 check_traffic 流量监控模块(被监控端)
安装软件包yum -y install net-snmp*chkconfig nrpe onchkconfig snmpd on 使用SCP命令拷贝 check_traffic.sh 到 / usr/ ...
- 搭建基于Nagios的监控系统——之监控远程Windows服务器
分享了如何监控Linux服务器,我们来看看使用Nagios如何监控Windows服务器. 第一部分:配置被监控的Windows服务器 首先,访问 http://sourceforge.net/pr ...
- zabbix服务器监控suse系统教程
zabbix服务器监控suse系统教程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 花了近一个星期才学会了如何监控window和linux主机的基本信息以及报价情况(我已经把笔记 ...
- 1. SQL Server服务器监控实现方法
对于服务器的监控,和对数据库的监控,很少有合二为一的工具,如果有的话,一般是付费软件,或者自行开发的工具.所以如果不想购买软件,也不想花精力去开发的话,可以结合一些免费/开源的工具.自定义脚本,来完成 ...
- Nagios 系统监控
Nagios 系统监控 Nagios 是一款免费的开源 IT 基础设施监控系统,功能强大,灵活性强,能有效监控 Windows.Linux.VMware 和 Unix 主机状态,交换机.路由器等网络设 ...
- Cacti+nagios 整合监控部署文档
目录 Cacti+nagios监控部署步骤... 2 一.Cacti安装... 2 1需要安装的依赖软件包:... 2 2安装rrdtool 2 3启动数据库和httpd服务... 3 4将serve ...
- 监控之--Nagios如何监控本地主机及本地服务
上一节内容介绍了Nagios监控服务在linux环境下的安装过程,本节内容将详细介绍如何使用已经安装的Nagios服务的一些配置文件的使用以及如何监控本地相关服务,如要完成对一台主机的监控Nagios ...
随机推荐
- hibernate延迟加载org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: com.javakc.hibernate.onetomany.entity.DeptEntity.emp, could not initialize proxy - no Session
public static void main(String[] args) { DeptEntity dept = getDept("402882e762ae888d0162ae888e ...
- freemarker根据模板生成word文件实现导出功能
一.准备工作 1.创建一个03的word文档,动态的数据用占位符标志占位(如testname).然后另存为word2003的xml文件. 2.格式化xml文件,占位符的位置用${testname}代替 ...
- Vue之小入门
Vue之小入门 <div id="app">{{ greeting }}</div> <script> let oDiv = document. ...
- css行内省略号、垂直居中
应用场景分析: 一.当你的文字限定行数,超出部分的文字用省略号显示. (有两个使用场景:1.单行 2.多行) // 单行 overflow: hidden; text-overflow:ellipsi ...
- 二、npm scripts
一.执行原理 安装npm 包,会将其package.json bin 字段添加到node_modules bin 里面,创建对应的.cmd文件,因此: 例如: "scripts": ...
- Velocity ${} 和$!{}、!${}区别
前言 在使用Velocity时经常会看到三种使用变量的情况 情况一:${name} 情况二:$!{name} 情况三:!${name} 那么三者之间到底有什么区别呢?莫慌!!!哈哈 情况一:${nam ...
- [转帖]Windows 操作系统有哪些原生的工具和软件不被人了解却很有用?
Windows 操作系统有哪些原生的工具和软件不被人了解却很有用? 蛋蛋 司马米青E1E1九木 https://www.zhihu.com/question/25343481/answer/30798 ...
- [转帖]Linux 的静态库与动态库
Linux下的静态库与动态库 2017年02月18日 09:17:13 LLZK_ 阅读数:10257 标签: linux动态库静态库区别使用 更多 个人分类: Linux学习笔记 所属专栏: Lin ...
- 日期选择器date、week、time、datetime、datetime-local类型
下面只写两个类型的代码案例,其他都大同小异 date类型: <!DOCTYPE html> <html> <head> <meta charset=" ...
- Spark源码编译,官网学习
这里以spark-1.6.0版本为例 官网网址 http://spark.apache.org/docs/1.6.0/building-spark.html#building-with-build ...