nagios主动方式监控tcp服务web/syncd/mysql及url





cd /usr/local/nagios/libexec/

[root@node4 libexec]# ./check_tcp -H 192.168.8.40 -p 80

TCP OK - 0.010 second response time on port 80|time=0.010334s;;;0.000000;10.000000

[root@node4 libexec]# ./check_tcp -H 192.168.8.198 -p 8888

TCP OK - 0.002 second response time on port 8888|time=0.001964s;;;0.000000;10.000000





# ./check_tcp -H 192.168.8.198 -p 22  

TCP OK - 0.002 second response time on port 22|time=0.001633s;;;0.000000;10.000000





1.添加关于url链接的监控

①添加自定义的servies目录

cd /usr/local/nagios/etc/objects/

# mkdir services

[root@node4 objects]# chown -R nagios.nagios services

编辑/usr/local/nagios/etc/nagios.cfg文件

添加配置

cfg_dir=/usr/local/nagios/etc/objects/services

注:

作为别用增加一个services目录,优点很多,在目录下只要符合*.cfg就可以被nagios加载,使用脚本批量部署时非常方便的随机命名配置文件





②在services目录下添加:blog.cfg文件

文件内容可以参考/usr/local/nagios/etc/objects/templates.cfg文件的service部分





# cat services/blog.cfg 





define service{

        use                             generic-service

        host_name                       centossz008

        service_description             blog_url

        check_command                   check_weburl!-I 192.168.8.40

        check_period                    24x7                 

        max_check_attempts              3                      

        normal_check_interval           2                     

        retry_check_interval            1                     

        contact_groups                  admins 

        notification_period             24x7 

        notification_options            w,u,c,r                

        notification_interval           30                 

        }





③在commands.cfg添加关于checkweburl的命令

# 'check_weburl" command definition

define command{

        command_name    check_weburl

        command_line    $USER1$/check_http $ARG1$ -w 10 -c 30

        }



检测语法service nagios checkconfig,重载nagios配置service nagios reload





2.对特殊url地址的监控

添加对blog.chinasoft.com的解析

/etc/hosts

192.168.8.40 blog.chinasoft.com





# curl -I http://blog.chinasoft.com

HTTP/1.1 200 OK

Date: Fri, 22 Jul 2016 01:55:44 GMT

Server: Apache/2.4.9 (Unix)

X-Powered-By: PHP/5.4.26

Content-Type: text/html





注意:类似/pma/index.php的这种uri需要添加双引号

define service{

        use                             generic-service

        host_name                       centossz008

        service_description             phpadmin_url

        check_command                   check_weburl!-H blog.chinasoft.com -u "/pma/index.php"

        check_period                    24x7

        max_check_attempts              3

        normal_check_interval           2

        retry_check_interval            1

        contact_groups                  admins

        notification_period             24x7

        notification_options            w,u,c,r

        notification_interval           30

        }





在客户机上执行破坏性操作,会提示错误

/web/a.com/htdocs/pma

# mv index.php index.php.bak





phpadmin_url

WARNING 07-22-2016 10:27:160d 0h 22m 2s3/3HTTP WARNING: HTTP/1.1 404 Not Found - 217 bytes in 0.006 second response
time 





3.对tcp服务的监控,可以通过监控端口实现





①对rsyncd服务监控

在客户端node3.chinasoft.com执行:

# touch /etc/rsyncd.conf

[root@node3 ~]# rsync --daemon

[root@node3 ~]# lsof -i :873

COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

rsync   59285 root    4u  IPv4 237676      0t0  TCP *:rsync (LISTEN)

rsync   59285 root    5u  IPv6 237677      0t0  TCP *:rsync (LISTEN)





vim /usr/local/nagios/etc/objects/services/blog.cfg 





define service{

        use                             generic-service

        host_name                       node3.chinasoft.com

        service_description             sync_port

        check_command                   check_tcp!837

        check_period                    24x7

        max_check_attempts              3

        normal_check_interval           2

        retry_check_interval            1

        contact_groups                  admins

        notification_period             24x7

        notification_options            w,u,c,r

        notification_interval           30

        }





# ../../libexec/check_tcp -H 192.168.8.41 -p 873

TCP OK - 0.001 second response time on port 873|time=0.001093s;;;0.000000;10.000000





发现是定义的端口错误应该是873不是837:

check_command                   check_tcp!873





②对mysql的3306端口监控

vim /usr/local/nagios/etc/objects/services/blog.cfg 





define service{

        use                             generic-service

        host_name                       centossz008

        service_description             mysql_port

        check_command                   check_tcp!3306

        check_period                    24x7

        max_check_attempts              3

        normal_check_interval           2

        retry_check_interval            1

        contact_groups                  admins

        notification_period             24x7

        notification_options            w,u,c,r

        notification_interval           30

        }





4.被动方式监控web的80端口

在被监控端即192.168.8.40的nrpe.cfg中添加命令定义:

command[check_port_80]=/usr/local/nagios/libexec/check_tcp -H 192.168.8.40 -p 80 -w 6 -c 10

编辑主服务器的文件

vim /usr/local/nagios/etc/objects/services/blog.cfg





define service{

        use                             generic-service

        host_name                       centossz008

        service_description             blog_port_80_beidong

        check_command                   check_nrpe!80

        check_period                    24x7

        max_check_attempts              3

        normal_check_interval           2

        retry_check_interval            1

        contact_groups                  admins

        notification_period             24x7

        notification_options            w,u,c,r

        notification_interval           30

        }

发现报错:

排错:

服务端执行

# /usr/local/nagios/libexec/check_tcp -H 192.168.8.40 -p 80 -w 6 -c 10

TCP OK - 0.002 second response time on port 80|time=0.001845s;6.000000;10.000000;0.000000;10.000000

# /usr/local/nagios/libexec/check_nrpe -H 192.168.8.40 -c check_port_80

NRPE: Command 'check_port_80' not defined

原来是定义反了,需要在客户端的nrpe.cfg文件中定义check_port_80命令才OK

5.定义监控组,如监控所有机器的交换分区swap状态

cat /usr/local/nagios/etc/objects/services/servergroup.cfg





define servicegroup{

        servicegroup_name Swap Useage

        alias   Linux Servers

        members node3.chinasoft.com,Swap Useage,node4.chinasoft.com,Swap Useage,centossz008,Swap Useage

}





报错:

Error: Could not find a service matching host name 'node3.chinasoft.com' and description 'Swap Useage' (config file '/usr/local/nagios/etc/objects/services/servergroup.cfg', starting on line 1)





/usr/local/nagios/etc/objects/servie.cfg中没有定义check_swap或者描述description 'Swap Useage'不一致,如下图:

备注:

可以通过# tail /usr/local/nagios/var/nagios.log来定位错误

nagios系列(四)之nagios主动方式监控tcp常用的80/3306等端口监控web/syncd/mysql及url服务的更多相关文章

  1. nagios系列(八)之nagios通过nsclient监控windows主机

    nagios通过nsclient监控windows主机 1.下载NSClient -0.3.8-Win32.rar安装在需要被监控的windows主机中 可以设置密码,此处密码留空 2.通过在nagi ...

  2. nagios系列(三)之nagios被动监控模式之添加系统负载load、swap、磁盘iostat及memory内存监控详解

    环境: nagios server:192.168.8.42 host_name:node4.chinasoft.com nagios client:192.168.8.41 host_name:no ...

  3. nagios系列(五)之nagios图形显示的配置及自定义插件检测密码是否修改详解

    nagios图形显示的配置 在服务端安装相关软件 #1.图形显示管理的依赖库 yum install cairo pango zlib zlib-devel freetype freetype-dev ...

  4. 分布式监控系统Zabbix-完整安装记录 -添加端口监控

    对于进程和端口的监控,可以使用zabbix自带的key进行监控,只需要在server端维护就可以了,相比于nagios使用插件去监控的方式更为简单.下面简单介绍配置:监控端口zabbix监控端口使用如 ...

  5. nagios系列(六)之nagios实现对服务器cpu温度的监控

    1.安装硬件传感器监控软件sensors yum install -y lm_sensors* 2.运行sensors-detect进行传感器检测 ##一路回车即可 Do you want to ov ...

  6. nagios系列(二)之nagios客户端的安装及配置

    1.添加nagios用户 echo "------ step 1: add nagios user------" #create user group /usr/sbin/user ...

  7. docker系列四之docker镜像与容器的常用命令

    docker镜像与容器的常用命令 一.概述   docker的镜像于容器是docker中两个至关重要的概念,首先给各位读者解释一下笔者对于这两个概念的理解.镜像,我们从字面意思上看,镜子里成像,我们人 ...

  8. CEIWEI CommMonitor 串口监控精灵v11.0 串口过滤 串口监控

    CEIWEI CommMonitor   串行端口监控精灵是用于 RS232 / RS422 / RS485 端口监控的专业 强大的系统实用程序软件.CEIWEI  CommMonitor 监控显示, ...

  9. Zabbix设置自定义监控项之——监控tcp连接状态

    目录 一.用户自定义参数 二.配置 监控 TCP 连接状态 在实际监控中,除了官方自带的一些监控项,我们很多时候有一些定制化监控,比如特定的服务.TCP 连接状态等等,这时候就需要自定义监控项.自定义 ...

随机推荐

  1. 关于chrome控制台出现代码叠加页面不能正常显示大小问题

    见下图页面出现在chrome中的情况 描述状态:代码都变小了才出现控制台代码叠加问题 解决办法:使用鼠标滚轮放大代码就行啦,在设置里面让页面的大小显示为100%就可以了.

  2. asp.net 结合本地jQuery使在提交时显示错误提示

    最近在做一个项目,做的表单有的比较长,如果直接点提交,错误提示有时可能用户看不见,对用户体验不好.还有客户端提交有点慢,担心用户重复提交,于是做了个检测用户提交表单验证是否有错误,没错误就提交,且把按 ...

  3. Gulp小记

    安装 总的来说,玩gulp的流程是这样的: 安装nodejs -> 全局安装gulp -> 项目安装gulp以及gulp插件 -> 配置gulpfile.js -> 运行任务 ...

  4. python 压缩文件为zip后删除原文件

    压缩.log 文件为zip后删除原文件 需要注意:本人作为小白,该脚本需要和.log在一起,后面有时间需要改正. #!/usr/local/python/bin/python #-*-coding=u ...

  5. Hdu 5072 Coprime(容斥+同色三角形)

    原题链接 题意选出三个数,要求两两互质或是两两不互质.求有多少组这样的三个数. 分析 同色三角形n个点 每两个点连一条边(可以为红色或者黑色),求形成的三条边颜色相同的三角形的个数反面考虑这个问题,只 ...

  6. 【输入法】Rime-中州韵 基本设置 附:官方定制指南

    前言 不知不觉就到了年终了,距离上次更新博客已经有一个半月,这段时间天天在加班,也没作一下新的学习计划,趁着元旦放假,写一点好玩的东西,这次要记录的是一点关于Rime相关的东西,文章本身不会长,只是说 ...

  7. 14. Spring Boot的 thymleaf公共页抽取

    5).CRUD-员工列表实验要求:1).RestfulCRUD:CRUD满足Rest风格:URI: /资源名称/资源标识 HTTP请求方式区分对资源CRUD操作   普通CRUD(uri来区分操作) ...

  8. Idea下安装Lombok插件

    参照:http://www.cnblogs.com/holten/p/5729226.html https://yq.aliyun.com/articles/59972 lombok是一个可以通过简单 ...

  9. DHCP服务洪水攻击

    1.攻击原理 动态主机设置协议是一个局域网的网络协议,使用UDP协议工作,主要有两个用途: 为内部网络或网络服务供应商自动分配IP地址给用户,以作为内部网络管理员对所有计算机做中央管理的手段. 在正常 ...

  10. git gui提交无法获知你的身份

    解决方法: 打开git 终端 #输入下面两句,并且替换成你的名字和邮箱 git config --global user.email "your@email.com" git co ...