上一篇介绍了如何安装Nagios Core,这一篇跟大家分享一下如何将一台远程的Linux服务器加入纳入监控范围。
第一部分:在远程Linux上安装Nagios Plugins和NRPE
第一步:下载Nagios Plugins和NREP扩展的安装程序
- cd Downloads
- wget http://nagios-plugins.org/download/nagios-plugins-2.0.tar.gz
访问 http://www.nagios.org/download/addons/,点击 NRPE,在弹出的页面中点击 Download URL 就可以下载了。
第二步:创建用户
- /usr/sbin/useradd nagios
第三步:安装Nagios Plugins
- tar xf nagios-plugins-2.0.tar.gz
- cd nagios-plugins-2.0
- export LDFLAGS=-ldl
- sudo -s
./configure --with-nagios-user=nagios --with-nagios-group=nagios --enable-redhat-pthread-workaroundmake && make install
chown nagios.nagios /usr/local/nagios<chown -R nagios.nagios /usr/local/nagios/libexec/
第四步:安装NRPE
- tar xf nrpe-2.15.tar.gz
- cd nrpe-2.15
- ./configure
- make all
- make install-plugins
- make install-daemon
- make install-daemon-config
- make install-xinetd
第五步:将NRPE设置为守护进程(通过作为xinetd的一部分)
- 打开 /etc/xinetd.d/nrpe 文件,将负责监控的那台服务器的IP地址,添加到 only_from 指令后面。多个IP地址之间要用空格隔开;
- 编辑 /usr/local/nagios/etc/nrpe.cfg ,在 allowd_hosts 指令后加上监控服务器的IP地址,多了地址用逗号隔开;
- 修改 /etc/services 文件,在文件末尾添加一行:
- nrpe 5666/tcp # NRPE
- 启动服务
- service xinetd restart
- 确认现在NRPE端口是否在监听
- netstat -at | grep nrpe
- tcp 0 0 *:nrpe *:* LISTEN
- 确认NRPE是否正常
- /usr/local/nagios/libexec/check_nrpe -H localhost
第六步:修改 /usr/local/nagios/etc/nrpe.cfg
这个文件中定义的命令决定了该服务器能被监控的内容,也就是说,真正的监控是通过这个文件里的命令指定的程序来执行的。比如:
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
在添加到这个文件之前,最好在命令行中实际执行一下这个命令:
/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda1
第二部分:在监控服务器上增加远程服务器的配置
第一步:下载 NRPE 扩展,并且安装
- tar xf nrpe-2.15.tar.gz
- cd nrpe-2.15
- ./configure
- make all
- make install-plugins
确认一下NRPE是否能链接到远程服务器
/usr/local/nagios/libexec/check_nrpe -H [远程服务器IP]
第二步:为远程监控服务器添加 HOST 和 Service 配置
只要增加监控的电脑,就要增加这两部分!
这两种配置可以分成两个文件,也可以放到一个文件里面。我在这里将 /usr/local/nagios/etc/objects/localhost.cfg 复制了一下,并且命名为了 remotehost.cfg。
将 host 块儿中的 host_name 和 alias 改成相应的远程服务器的名字和别名,将 address 改成远程服务器的IP地址。
host_group 的定义就可以删除了,并且将这台远程服务器的名字添加到 localhost.cfg 中 host_group 块儿中,写在 localhost 后面既可,用逗号隔开。
下面所有的 services 定义中,就把 host 那么换一下就可以了。
在 /usr/local/nagios/etc/nagios.cfg 当中,增加一条 cfg_file 指令,将新创建的文件名加入到后面。
第三步:重启Nagios
- /etc/init.d/nagios start
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2016-09-20 Visual C++ for Linux Development
2016-09-20 微软为Visual Studio开发助手拓展C++支持
2016-09-20 在Linux中使用VS Code编译调试C++项目
2016-09-20 Linux常见设备及相应/dev/xxx文件名、Mount Point、挂载点、Mount命令、fstab、挂载分区
2012-09-20 ORACLE OEM