Nagios监控平台搭建

Nagios是一款开源的免费网络监视工具,能有效监控Windows、Linux和Unix的主机状态,交换机路由器等网络设置,打印机等。在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。

Nagios和cacti有什么区别呢?简单的来说cacti主要监控流量,服务器状态页面展示;nagios主要监控服务,邮件及短信报警灯,当然也有简单的流量监控界面,二者综合使用效果更好。(附Nagios工作简单逻辑图)

Nagios监控客户端需要借助插件及NRPE软件来实现,NRPE作为中间的代理程序,接收Nagios服务器端发来的请求,另一端在远程主机上指定的相关的监控信息。

下面简单说下nagios平台搭建

1. 准备工作

nagios-3.2.1.tar.gz

nagios-plugins-1.4.14.tar.gz

nrpe-2.14.tar.gz

2. 服务端环境搭建

useradd -s /sbin/nologin nagios

mkdir /usr/local/nagios

chown -R nagios.nagios /usr/local/nagios

tar zxvf nagios-3.2.1.tar.gz

cd nagios-3.2.1

./configure  --prefix=/usr/local/nagios  --with-command-group=nagios

make all

make install;

make install-init;

make install-config;

make install-commandmode;

make install-webconf;

注:

make install //来安装主程序,CGI和HTML文件

make install-init //在/etc/rc.d/init.d安装启动脚本

make install-config //来安装示例配置文件,安装的路径是/usr/local/nagios/etc

make install-commandmode //来配置目录权限

make install-webconf // 配置nagios跟apache整合

安装Nagios-plugins

tar zxvf nagios-plugins-1.4.14.tar.gz

cd nagios-plugins-1.4.14

./configure --prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-   group=nagios

make && make install

nagios访问控制设置

htpasswd  -c  /usr/local/nagios/etc/htpasswd.users nagiosadmin

输入两次密码即可,登录页面的时候会用到这个密码.

Nagios测试访问

重启nagios

/etc/init.d/nagios restart ;

/etc/init.d/httpd restart ;

http://IP/nagios/

3. 添加一个客户端监控的步骤:

cp localhost.cfg  192.168.2.99.cfg

把默认配置文件里面的locahost、127.0.0.1、check_local替换成最新

因为没有在客户端安装nagios插件及NRPE,

需删掉配置文件里disk、swap、process、user、cpu等监控配置段(这里根据个人需求修改)

cd /usr/local/nagios/etc

vi nagios.cfg

在nagios.cfg 36行后加入cfg_file=/usr/local/nagios/etc/objects/192.168.2.99.cfg

最后执行:/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg没有报错即可。

4. Nagios客户端插件安装

Nagios客户端安装需要安装两个软件,nagios-plugins-1.4.14.tar.gz和nrpe-2.14.tar.gz

安装方法如下:

useradd nagios ;

tar -xzf  nagios-plugins-1.4.14.tar.gz

cd nagios-plugins-1.4.14

./configure --prefix=/usr/local/nagios

make &&make install

tar -xzf nrpe-2.14.tar.gz

cd nrpe-2.14

./configure --enable-ssl --with-ssl-lib

make all && make install-plugin && make install-daemon && make install-daemon-config

chown -R nagios:nagios /usr/local/nagios/

5. Nrpe客户端配置

修改vi /usr/local/nagios/etc/nrpe.cfg 修改默认配置段的内容如下,

allowed_hosts=192.168.2.91(这里是改为服务器监控机的IP)

command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10

command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20

command[check_disk]=/usr/local/nagios/libexec/check_disk -w 20 -c 10 -p /dev/sda2

command[check_procs]=/usr/local/nagios/libexec/check_procs -w 50 -c 100

command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20 -c 10

启动nrpe客户端命令:

/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d

Nagios服务器nrpe配置

Nagios 服务器端也需要安装nrpe,同时需要定义nrpe监控命令,写command.cfg末尾即可:

define command{

command_name check_nrpe

command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$

}

在服务器端对应IP的配置文件中,加入需要监控的项目:

define service{

use                             local-service

host_name                       192.168.2.99

service_description             Users_Monitor

check_command                   check_nrpe!check_users

notifications_enabled           1

}

其他同理,添加的方法一样。只要在客户端nrpe.cfg里面添加的监控命令,都可以在服务端引用。

 Nagios监控端HTTP关键词


在真实的线上环境中,如果要监控HTTP、web、tomcat某个URL关键词,监控网站关键词是否被篡       改,如果来实现呢?

这里可以使用默认监控命令check_http命令+相关的参数来实现,如下:

在command.cfg添加如下关键词监控命令:check_http_word,参数解析:-I指定IP或者主机名,-u     指定URL,-p指定端口,-s指定关键词。

vim commands.cfg (这里是在监控服务器上的修改)

definecommand{

command_name    check_http_word

command_line  $USER1$/check_http -I $HOSTADDRESS$ -u$ARG1$ -p $ARG2$ -s  $ARG3$

}

然后在服务器端监控主机的配置文件里面引用即可,引用的方法如下:

define service{

use                             local-service

host_name                       192.168.2.99

service_description             Discuz

check_command                   check_http_word!/forum.php!80!Discuz

notifications_enabled           1

}

通常在修改配置文件的时候最好是在外边命令测试一下 比如:

/usr/local/nagios/libexec/check_http -I 192.168.2.99 -u /index.php -p 80 -s "Discuz"

    Nagios监控Mysql主从报警

监控Mysql可以用个nagios mysql插件,首先在command.cfg中定义如下配置:

define command{

command_name   check_mysql_slave

command_line  $USER1$/check_mysql -H $HOSTADDRESS$ -S -uroot -p123456

}

然后在主机配置文件中定义监控项目:

define service{

use                             local-service

host_name                       192.168。2.99

service_description             MYSQL_Slave_Monitor

check_command                   check_mysql_slave

}

配置完毕后 重启nagios服务  查看监控状态

    

    Nagios邮件及短信报警

    安装邮件服务:

[[email protected] objects]# yum  install sendmail* mailx -y

Loaded plugins: fastestmirror

说明fastestmirror不能使用 可以禁用这个插件

  1. 1.修改插件的配置文件
  2. # vi  /etc/yum/pluginconf.d/fastestmirror.conf
  3. enabled = 1//由1改为0,禁用该插件
  4. 2.修改yum的配置文件
  5. # vi /etc/yum.conf
  6. plugins=1//改为0,不使用插件

重新安装即可

重启服务

service sendmail  restart;

chkconfig  sendmail on

邮件测试:

echo "test" |mail  -s  "test"  [email protected]

测试OK后

修改配置文件:

vi /usr/local/nagios/etc/objects/contacts.cfg  修改为需要发送的邮箱即可

最后重启nagios服务,可以测试关闭某个服务,过一会就会收到nagios发来的报警邮件。

时间: 2024-12-25 04:43:08

Nagios监控平台搭建的相关文章

Nagios监控平台搭建--安装篇

一.服务端安装: 1.在服务端搭建lamp环境 Yum  install -y  httpd  php 2.服务端安装nagios主程序 Useradd  -s /sbin/nologing ./configure  --prefix=/usr/local/nagios  --with-command-group=nagios ./configure时如果发现perl  command not  found时要安装 perl这个包,否则make  all时会报错  yum install  -y

Nginx下搭建Nagios监控平台(转载)

Nagios依赖PHP环境和perl环境,由于Nginx不支持Perl的CGI,需先来搭建Perl环境,Nagios原理介绍略. 文章原出处:https://blog.linuxeye.com/312.html1.下载最新稳定源码包和Perl脚本 mkdir nagios-cacti cd nagios-cacti wget http://www.cpan.org/modules/by-module/FCGI/FCGI-0.74.tar.gz wget http://www.cpan.org/a

Cacti监控平台搭建

作为一名Linux SA,日常最重要的就是保证网站正常稳定的运行,我们需要实时监控网站.服务器的运行状态,这时需要借助开源软件(cacti.nagios.zabbix等)监控来实现. Cacti是用php语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool储存和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户.因此,snmp和rrdtool是cacti的关键. Snmp关系着数据的收集,rrdtool关系着数据存储和图表的生成.snmp抓到数据不是存

[转] Cacti+Nagios监控平台完美整合

Cacti+Nagios监控平台完美整合 http://os.51cto.com/art/201411/458006.htm 整合nagios+cacti+微信.飞信实现网络监控报警 http://blog.itpub.net/29357437/viewspace-1169680/

Linux系统搭建Nagios监控平台

一.首先在Nagios监控的服务器部署 # 安装Nagios软件及其依赖的软件 [[email protected] ~]# yum install -y httpd php gcc glibc glibc-common net-snmp nagios nagios-plugins nagios-plugins-all nrpe nagios-plugins-nrpe gd gd-devel openssl openssl-devel # 定义Nagios登陆的账号与密码 [[email pro

监控平台搭建-监控项

本人运维某生态互联网监控平台服务.过程中遇见了很多问题.目前互联网有很多的开源监控工具:nagios.zabbix.falcon.cacti...各有优点.这里不讲解监控工具的优缺点.写一些新搭建监控平台.需要哪些监控项.避免监控一头雾水.具体每个监控项会有若干小项. 监控的简单架构 具体一个机器监控项.基本就是下面的这些.尽量少的监控项,更加高效的分析报警 (1)首先一定是基础的硬件层面(机器的的基础组件) ipmi .监控cpu.温度.卡槽.raid状态.内存 (2)系统层面监控.(这里只介

Linux监控平台搭建

linux监控平台介绍 zabbix监控介绍 安装zabbix linux监控平台介绍 cacti.nagios.zabbix.smokeping.open-falcon等等cacti.smokeping偏向于基础监控,成图非常漂亮cacti.nagios.zabbix服务端监控中心,需要php环境支持,其中zabbix和cacti都需要mysql作为数据存储,nagios不用存储历史数据,注重服务或者监控项的状态,zabbix会获取服务或者监控项目的数据,会把数据记录到数据库里,从而可以成图o

Nagios监控环境搭建

Nagios简介 Nagios是一款开源的电脑系统和网络监视工具,能有效监控Windows.Linux和Unix的主机状态,交换机路由器等网络设置,打印机等.在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知. Nagios原名为NetSaint,由Ethan Galstad开发并维护至今.NAGIOS是一个缩写形式: "Nagios Ain't Gonna Insist On Sainthood" Sainthood 翻译为圣徒,而

监控平台搭建-磁盘

磁盘:随着大数据快速发展.人工智能.自动化.云平台.数据量指数的增长.磁盘的使用量也在增长.目前的机器基本上采用SSD或者SATA盘,一直有人比较那个好.会不会使用时间短.寿命不长.但是最新的某科技公司的测试评论.已经显示了.SSD更安全,速度更快(SATA真的OUT).SSD 是没有扇区.扇面.没有扫扇道...这些概念.本文讲解一下磁盘监控项.与一些排查思想. 常用的磁盘检查命令: vmstat内存读写情况.iostat查看磁盘读写情况.top查看应用负责.strace -p 查看应用执行动作