×

微信扫一扫,快捷登录!

标签: 暂无标签
来自:网络
利用 NRPE 扩展 Nagios 功能
NRPE 是 Nagios 的一个功能扩展,它可在远程 Linux 和 UNIX 主机上执行插件程序。通过在远程服务器上安装 NRPE 构件及 Nagios 插件程序来向 Nagios 监控平台提供该服务器的一些本地情况,如 CPU 负载、内存使用、硬盘使用,服务等。这里将 Nagios 监控平台称为 Nagios 服务器 端,而将远程被监控的服务器称为 Nagios 客户端。          监控软件
下图为 NRPE 构件监控远程主机本地信息的运行原理:
[  /wyfs02/M02/22/D9/wKiom1MpY8Hhapz0AAA42mWpNIM304.gif][/url]
图 17. 监控远程主机原理图
NRPE 组成部分与检测类型
NRPE 总共由两部分组成:


  • check_nrpe 插件,位于监控主机上
  • NRPE daemon,运行在远程被监控的 Linux 主机上
当监控远程 Linux/UNIX 主机服务或资源时,工作流程如下:


  • nagios 会运行 check_nrpe 这个插件,并且会告诉它需要检查什么;nagios实施
  • check_nrpe 插件会连接到远程的 NRPE daemon,所用的方式是 SSL;
  • NRPE daemon 会运行相应的 Nagios 插件来执行检查动作;
  • NPRE daemon 将检查的结果返回给 check_nrpe 插件,插件将其递交给 Nagios 做处理。
  • NRPE daemon 需要 Nagios 插件安装在远程的 Linux 主机上,否则 daemon 不能做任何的监控。
NRPE 的检测类型分为两种:
直接检测:检测的对象是运行 NRPE 的那台 Linux 主机的本地资源,原理如下:
[  /wyfs02/M02/22/DB/wKioL1MpY1bzft2uAAAnYXsEwJw081.gif][/url]
图 18. 直接检测结构图
直接使用 NRPE 插件监控远程 Linux/UNIX 主机的本地或者私有资源;如 CPU 负载、内存使用、SWAP 空间使用、硬盘等运行状况。   nagios培训
间接检测:当运行 Nagios 的监控主机无法访问到某台被监控主机,但是运行 NRPE 的机器可以访问得到的时候,运行 NRPE 的主机就充当一个中间代理,将监控请求发送到被监控对象上。
[  /wyfs02/M01/22/DB/wKioL1MpY-jyxEgmAAAhxWUcxe4553.gif][/url]
图 19. 间接检测结构图
在服务器端安装 NRPE 安装
清单 15. 服务器安装 NRPE



    # cd /usr/local/src/ # tar zxvf nrpe-2.12.tar.gz  # cd nrpe-2.12 # ./configure && make all # make install-plugin # make install-daemon
  • # make install-daemon-config


  • 修改命令定义文件               nagios配置
由于在 Nagios 命令定义文件 commands.cfg 没有 check_nrpe 命令, 因此需要对此文件进行修改与定义,配置细节如下图:
[  /wyfs02/M02/22/D9/wKiom1MpZFvC1_lcAAASp6YATD8700.jpg][/url]
图 20. 在 commands.cfg 文件中增加 NRPE 配置


  • 定义被监控主机
在被监控或远程主机上增加 check_nrpe 的相关配置,由于 hosts.cfg 已定义了相应的主机,所以这里编辑文件 Nagios 服务器上的 services.cfg 文件即可:


  • #vim /usr/local/nagios/etc/monitor/services.cfg
[  /wyfs02/M00/22/D9/wKiom1MpZH-iUmSHAAA3Scf5_9c946.jpg][/url]
图 21. 在被监控主机,增加 NRPE 指令


  • 查看配置文件是否正确             开源监控软件
清单 16. 服务器安装 NRPE


  • # nagioscheck


  • 重新加载配置文件
清单 17. Ngaios 配置加载


  • # /etc/init.d/nagios reload
在 Linux 客户端安装 NRPE 安装


  • 安装 Nagios 插件 nagios-plugin
添加 nagios 用户名,且不允许 nagios 用户登录, 此用户用于与 Nagios 服务器通信所用。          nagios安装
清单 18. 客户端安装 nagios-plugin



    # useradd -s /sbin/nulgin nagios # tar -zxvf nagios-plugins-1.4.14.tar.gz # cd nagios-plugins-1.4.14 #./configure
  • # make && make install


  • 安装 NRPE
在 Linux 客户端安装 nrpe 程序包,根据编译提示向导完成安装操作。在安装的过程中会看到 NRPE 的端口为 5666,且可通过 Xinetd 服务来控制 nrpe 进程,具体实现步骤如下:
清单 19. 客户端安装 NRPE



    #tar zxvf tar zxvf nrpe-2.12.tar.gz # cd nrpe-2.12 #./configure #make all #make install-plugin #make install-daemon #make install-daemon-config #make install-xinetd
  • #chown -R nagios:nagios /usr/local/nagios/


  • 配置 NRPE
定义被监控的 Linux 主机的对象,监控此主机的 CPU 负载、登录用户数、磁盘分区、进程、swap 使用情况等,编辑/usr/local/nagios/etc/nrpe.cfg 文件, 内容如下示例:
清单 20. NRPE 配置与设定



    command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10 command[check_load]=/usr/local/nagios/libexec/check_load -w 30,25,20 -c 60,55,40 command[check_sda3]=/usr/local/nagios/libexec/check_disk -w 15% -c 8% -p /dev/sda3 command[check_vg01]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/vg01 command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs -w 5 -c 10 -s Z
  • command[check_swap_1]=/usr/local/nagios/libexec/check_swap -w 20 -c 10


  • 定义 Xinetd 服务支持 nrpe
这里只需要修改 only_from 项,增加 Ngaios 服务的地址即可,这样一来服务器与客户端就可进行 nrpe 会话,监控到 Linux 客户端相关信息,被监控端也更加容易维护管理,见下图:


  • #vim /etc/xinetd.d/nrpe
[  /wyfs02/M01/22/DB/wKioL1MpZOSSrY4wAAAewzEVdBE931.jpg][/url]
图 22. 定义 Xinetd 服务支持 nrpe


  • 定义服务端口
在 Linux 客户端"/etc/services" 文件增加一行:


  • nrpe            5666/tcp                #Naigos_Client


  • 测试 NRPE
由于 NRPE 相应的插件已经安装成功, 这里使用 check_nrpe 命令来验证是否 nrpe 是否正常运行,如果执行以下命令能够显示 NRPE 的具体版本信息,则表示 nrpe 运行正常,加载重启 xinetd 服务即可。
清单 21. NRPE 功能测试



    #/usr/local/nagios/libexec/check_nrpe -H localhost NRPE v2.12  
  • #/etc/init.d/xinetd restart

想做Nagios Zabbix,Cacti,iTop各种交流的,可以进入开源监控工具Nagios交流  QQ群号 476809427





上一篇:Nagios 监控系统架构设计攻略大全(3)
下一篇:Nagios 监控系统架构设计攻略大全(5)
monicazhang

写了 2297 篇文章,拥有财富 12859,被 21 人关注

您需要登录后才可以回帖 登录 | 立即注册
B Color Link Quote Code Smilies

成为第一个吐槽的人

Powered by IT 运维管理
返回顶部