Nagios监控windows服务器

简介:
平台及所用组件,
    监控服务器:redhat linux as5,nagios-3.0.5, nagios-plugins-1.4.11
    被监控端:windows2003,nsclient++0.3.3
简单介绍
    Nagios是一款开源的免费网络监视工具,其功能强大,灵活性强。能有效监控WindowsLinuxUnix的主机状态,交换机路由器等网络设置,打印机等。本文档主要实现nagios监控windows主机,nagios监控windows系统有三种实现方式:SNMPNSClient++NRPE.
    本文只介绍使用NSClient++方式来监控Windows,然后简单介绍一下nagios如何使用插件及自己编写插件参数.

1.Nagios的安装

1.安装基础支持套件
    nagios需要apache,gcc,glibc,gd库等套件才能运行.
yum install httpd
yum install gcc
yum install glibc glibc-common
yum install gd gd-devel
2.创建帐号及组
/usr/sbin/useradd -m nagios
passwd nagios
/usr/sbin/groupadd nagcmd
/usr/sbin/usermod -a -G nagcmd nagios
/usr/sbin/usermod -a -G nagcmd daemon     #daemon 为运行apache的账号。
3.安装nagios
tar -zxvf nagios-3.0.5.tar.gz
cd nagios-3.0.5
./configure --prefix=/usr/local/nagios  --with-command-group=nagcmd --with-gd-lib=/usr/lib/ --with-gd-inc=/usr/include/
make all
make install
make install-init             # /etc/rc.d/init.d安装启动脚本
make install-config          #/usr/local/nagios/etc安装示例配置文件
make install-commandmode   # 配置目录权限
4.配置apache
    在alias<IfModule alias_module>添加如下行.(如果是rpm安装apache,将下面行写入到alias)
ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin"
<Directory "/usr/local/nagios/sbin">
#  SSLRequireSSL
   Options ExecCGI
   AllowOverride None
   Order allow,deny
   Allow from all
#  Order deny,allow
#  Deny from all
#  Allow from 127.0.0.1
   AuthName "Nagios Access"
   AuthType Basic
   AuthUserFile /usr/local/nagios/etc/htpasswd.users
   Require valid-user
</Directory>
Alias /nagios "/usr/local/nagios/share"
<Directory "/usr/local/nagios/share">
#  SSLRequireSSL
   Options None
   AllowOverride None
   Order allow,deny
   Allow from all
#  Order deny,allow
#  Deny from all
#  Allow from 127.0.0.1
   AuthName "Nagios Access"
   AuthType Basic
   AuthUserFile /usr/local/nagios/etc/htpasswd.users
   Require valid-user
</Directory>
    创建apache目录验证文件并得启apache
/usr/local/apache/bin/htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
New password:
Re-type new password:
Adding password for user nagiosadmin
service httpd restart   #重启apache
5.安装nagios-plugins
    nagios-pluginsnagios官方提供的一套插件程序,nagios监控主机的功能其实都是通过执行插件程序来实现的.
tar zxvf nagios-plugins-1.4.11.tar.gz
cd nagios-plugins-1.4.11
./configure --with-nagios-user=nagios --with-nagios-group=nagios --enable-redhat-pthread-workaround
make
make install
6.其它设置
chkconfig --add nagios    # 配置机器启动时 Nagios
chkconfig nagios on
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg  # 检查Nagios配置文件
vi /etc/selinux/config       # 关闭SELinux
SELINUX=disabled
service iptables stop   # 关闭 SELinux,或打开80,5666端口
7.启动并访问
    启动
/usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg
service nagios start
    现在就可以访问nagios服务了
 
可见nagios服务能运行了,现在它只监控了它自己.下面让它监控wichow服务器.

2.监控Windows服务器

    nagios监控windows系统有三种实现方式:SNMP,NSClient++,NRPE,后面两种方式都需要在windows上安装agent,本文档只介绍使用NSClient++方式来监控Windows
1.windows设置
    把nsclient++0.3.3.zip解压到C盘然后进入命今窗口安装
C:\>cd "NSClient++-Win32-0.3.5"
C:\NSClient++-Win32-0.3.5>nsclient++ /install
l \NSClient++.cpp(193) Service installed!
    编辑NES.ini
[modules]                    #去掉注符号”;”除了CheckWMI.dllRemoteConfiguration.dll
FileLogger.dll
CheckSystem.dll
CheckDisk.dll
NSClientListener.dll
[Settings]
allowd_host=192.168.0.20/32    # 些处为nagios服务的IP
[NSClient]
port=12489                    # 去掉注释就可以了!
    启动nsclient服务并确认端口是否打开
C:\NSClient++-Win32-0.3.5>netstat -an | more
Active Connections
  Proto  Local Address          Foreign Address        State
  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING
  TCP    0.0.0.0:5666           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:12489          0.0.0.0:0              LISTENING
2.nagios设置
    接下来我们开始配置nagios服务器里面的内容
    因为nagios是模块化调用,先到配置文件打开windows相关模块
vi /usr/local/nagios/etc/nagios.cfg
# Definitions for monitoring the local (Linux) host
cfg_file=/usr/local/nagios/etc/objects/localhost.cfg
# Definitions for monitoring a Windows machine
cfg_file=/usr/local/nagios/etc/objects/windows.cfg   #去掉 的注
    打开模块后配置windows.cfg
vi /usr/local/nagios/etc/objects/windows.cfg
define host{
        use            windows-server 
        host_name      winserver       #被监控主机名
        alias           My Windows Server     
        address        192.168.0.8     ; 控的windows地址
#把下面的host_name都改成winserver
define service{
        use                     generic-service
        host_name               winserver
        service_description        CPU Load
        check_command          check_nt!CPULOAD!-l 5,80,90   #监控CPU使用
        }
define service{
        use                     generic-service
        host_name               winserver
        service_description        Memory Usage
        check_command          check_nt!MEMUSE!-w 80 -c 90   #监控内存
        }
    打开windows模块,设置windows.cfg中相关被监控主机与监控内容后nagios服务器就配置完了,下面重启nagios然后看一下监控结果.
service nagios start
  
    呵呵,监控到了,现在windows运行一切正常
3.Nagios监控相关内容
1).nagios目录功能的简要说明
bin
Nagios 行程序所在目 nagios文件即 主程序  
etc
Nagios配置文件位置
sbin
Nagios Cgi文件所在目 ,也就是 行外部 命令所需文件所在的目
Share
Nagios 文件所在的目
Var
Nagios日志文件、spid 等文件所在的目
var/archives
日志 档目
var/rw
用来存放外部命令文件
libexec
存放 nagios插件
2)如何使用nagios插件
    上面监控windows使用了check_nt插件(插件都放在/usr/local/nagios/libexec)
[root@cxy ~]# ls /usr/local/nagios/libexec/
check_apt       check_ftp           check_mailq     check_overcr   check_tcp
check_breeze    check_http          check_mrtg      check_ping     check_time
check_by_ssh    check_icmp          check_mrtgtraf  check_pop      check_udp
check_clamd     check_ide_smart     check_nagios    check_procs    check_ups
check_cluster   check_ifoperstatus  check_nntp      check_real     check_users
check_dhcp      check_ifstatus      check_nntps     check_rpc      check_wave
check_dig       check_imap          check_nrpe      check_sensors  negate
check_disk      check_ircd          check_nt        check_simap    urlize
    可以看到有很多插件我们也可以使用帮助来自己写监控代码
    例如查看check_nt帮助
[root@cxy libexec]# pwd
/usr/local/nagios/libexec
[root@cxy libexec]# ./check_nt -h
Usage:check_nt -H host -v variable [-p port] [-w warning] [-c critical][-l params] [-d SHOWALL] [-t timeout]
# 监控 CPU 写法
CPULOAD =
  Average CPU load on last x minutes.
  Request a -l parameter with the following syntax:
  -l <minutes range>,<warning threshold>,<critical threshold>.
  <minute range> should be less than 24*60.
  Thresholds are percentage and up to 10 requests can be done in one shot.
  ie: -l 60,90,95,120,90,95
# 完整写法为
check_nt!CPULOAD!-l 5,80,90
check_nt调用cpuload,5分钟内负载平均达到80%warning,负载达到90%critical
    监控磁盘使用
USEDDISKSPACE =
  Size and percentage of disk use.
  Request a -l parameter containing the drive letter only.
  Warning and critical thresholds can be specified with -w and -c.
# 如果要监控 C , 达到 80% 报警 , 达到 90% 严重危险
check_nt!USEDDISKSPACE!-l c -w 80 -c 90




本文转自 vfast_chenxy 51CTO博客,原文链接:http://blog.51cto.com/chenxy/174399,如需转载请自行联系原作者
目录
相关文章
|
22天前
|
弹性计算 运维 安全
阿里云服务器Windows和Linux操作系统区别对比
阿里云服务器Windows和Linux操作系统区别对比,性能有差异吗?有,同配置下Linux性能要优于Windows,但这与阿里云无关,仅仅是linux和windows之间的区别。另外,阿里云提供的windows和linux操作系统均为正版授权,用户不需要额外支付许可费用,如何选择?看用户自己的应用程序情况。
|
3天前
|
安全 关系型数据库 MySQL
利用windows服务器自带的IIS搭建网站并发布公网访问【内网穿透】
利用windows服务器自带的IIS搭建网站并发布公网访问【内网穿透】
利用windows服务器自带的IIS搭建网站并发布公网访问【内网穿透】
|
4天前
|
弹性计算 网络安全 Apache
windows server2012服务器下PHPstudy配置ssl证书(https配置)
windows server2012服务器下PHPstudy配置ssl证书(https配置)
25 0
|
11天前
|
监控 安全 网络协议
windows服务器权限分析
windows服务器权限分析
8 1
windows服务器权限分析
|
15天前
|
弹性计算 编解码 监控
ECS实例问题之ECS实例无法选择Windows操作系统如何解决
ECS实例指的是在阿里云ECS服务中创建的虚拟计算环境,用户可在此环境中运行应用程序和服务;本合集将介绍ECS实例的创建、管理、监控和维护流程,及常见问题处理方法,助力用户保障实例的稳定运行。
|
22天前
|
弹性计算 运维 安全
阿里云服务器linux和windows镜像有啥区别?
阿里云服务器linux和windows镜像有啥区别?阿里云服务器镜像Windows和Linux操作系统有什么区别?性能有差异吗?有,同配置下Linux性能要优于Windows,但这与阿里云无关,仅仅是linux和windows之间的区别。另外,阿里云提供的windows和linux操作系统均为正版授权,用户不需要额外支付许可费用,如何选择?看用户自己的应用程序情况
|
Ubuntu Linux 数据库
阿里云服务器ECS操作系统:linux系统与windows系统的区别
阿里云服务器ECS操作系统:linux系统与windows系统的区别.首先,我们要清楚的便是每个系统之间的差别,以及在阿里云上的差别
13098 0
|
20小时前
|
弹性计算 安全 定位技术
阿里云一键搭建部署幻兽帕鲁Palworld游戏服务器,详细教程
随着《幻兽帕鲁》这款游戏的持续火热,越来越多的玩家不再满足于普通的游戏体验,他们更希望拥有属于自己的游戏天地——一个专属的服务器。但很多玩家可能会因为技术门槛而犹豫不决。好消息是,现在,阿里云为《幻兽帕鲁》的玩家们带来了福音:全程自动化的服务器搭建服务。这意味着,技术小白也能轻松搭建自己的专属服务器了!
11 0
|
20小时前
|
弹性计算 数据安全/隐私保护
2024阿里云幻兽帕鲁(Palworld)服务器部署攻略:新手怎么创建帕鲁服务器
对于《幻兽帕鲁》的狂热粉丝来说,与好友联机畅玩无疑是加倍的快乐。但如何轻松搭建一个稳定的服务器,让游戏体验更加顺畅呢?今天,就为大家揭秘这一绝招——利用阿里云一键搭建《幻兽帕鲁》专属云服务器。
|
20小时前
|
存储 弹性计算 运维
什么是阿里云轻量应用服务器?阿里云轻量应用服务器最新价格表2024版(2核8G/4核8G/4核16G/8核16G/8核32G)
什么是阿里云轻量应用服务器?阿里云轻量应用服务器基于云服务器ECS的计算、存储、网络资源,并结合阿里云公共镜像和云市场镜像,为您提供了高效的应用部署方案。如果您是正在了解云计算服务的入门用户;或是需要在服务器中部署简单应用的个人开发者、中小企业,那么推荐您选择轻量应用服务器。无需在本地自建物理主机,无需采购以及配置硬件设施。一站式操作体验,分钟级交付,快速部署。以套餐的形式提供云计算资源,价格优惠,性能稳定。提供防火墙、HTTPS加密访问、内网隔离、数据备份等安全保障功能。提供资源监控、自助诊断、操作日志等运维功能。
什么是阿里云轻量应用服务器?阿里云轻量应用服务器最新价格表2024版(2核8G/4核8G/4核16G/8核16G/8核32G)

热门文章

最新文章

相关产品

  • 云迁移中心