在 CentOS 7 上安装 NRPE Nagios Core 代理

之前我们安装了 Nagios 监控服务器。

现在,是时候向我们的 Nagios 监控服务器添加一些主机了。
为此,我们需要在我们的主机上安装监控代理软件。
有很多可用的监控代理,它们不仅适用于 Nagios,还适用于 Nagios 的其他分支(例如 Icinga)。
这里,我们选择了 NRPE(Nagios Remote Process Executor)作为目的。

在这篇文章中,我们将在 CentOS 7 主机上安装 NRPE Nagios Core Agent,将其添加到 Nagios 监控服务器。

安装环境

  1. Nagios 监控服务器 一个工作的 Nagios 核心服务器。
  • 主机名 - nagios01.onitroad.com
  • IP 地址 - 192.168.229.129/24
  1. Linux Host 一台 CentOS 7 机器,我们将其中安装 NRPE。
  • 主机名 - dbserver01.onitroad.com
  • IP 地址 - 192.168.229.133/24
欢迎来到之路教程(on itroad-com)

在 CentOS 7 上安装和配置 NRPE Nagios Core 代理

使用 ssh 连接到 Linux 主机并安装必备软件包。

[root@dbserver01 ~]# yum install -y gcc glibc glibc-common gd gd-devel make net-snmp openssl-devel

创建拥有 Nagios 插件和 NRPE 文件和进程的用户。

[root@dbserver01 ~]# useradd nagios
[root@dbserver01 ~]# passwd nagios

创建目录以下载 Nagios 插件和 NRPE。

[root@dbserver01 ~]# mkdir -p /soft/nagios

从 https://www.nagios.org/downloads/nagios-plugins/ 下载 Nagios 插件 2.1.2

[root@dbserver01 ~]# cd /soft/nagios
[root@dbserver01 nagios]# wget https://nagios-plugins.org/download/nagios-plugins-2.1.2.tar.gz

提取并安装 Nagios 插件。

[root@dbserver01 nagios]# tar -xvf nagios-plugins-2.1.2.tar.gz
[root@dbserver01 nagios]# cd nagios-plugins-2.1.2
[root@dbserver01 nagios-plugins-2.1.2]# ./configure
[root@dbserver01 nagios-plugins-2.1.2]# make
[root@dbserver01 nagios-plugins-2.1.2]# make install

从 Nagios Exchange 下载 NRPE 代理。

[root@dbserver01 ~]# cd /soft/nagios
[root@dbserver01 nagios]# wget https://github.com/NagiosEnterprises/nrpe/archive/3.0.1.tar.gz

解压并安装 NRPE 。

[root@dbserver01 nagios]# tar -xvzf 3.0.1.tar.gz
[root@dbserver01 nagios]# cd nrpe-3.0.1/
[root@dbserver01 nrpe-3.0.1]# ./configure
[root@dbserver01 nrpe-3.0.1]# make all
[root@dbserver01 nrpe-3.0.1]# make install-daemon

打开服务器端口,由 NRPE Daemon 使用。

[root@dbserver01 nrpe-3.0.1]# firewall-cmd --permanent --add-port=5666/tcp
success
[root@dbserver01 nrpe-3.0.1]# firewall-cmd -reload
success

配置 NRPE。

[root@dbserver01 nrpe-3.0.1]# mkdir /usr/local/nagios/etc/
[root@dbserver01 nrpe-3.0.1]# cp sample-config/nrpe.cfg /usr/local/nagios/etc/nrpe.cfg
[root@dbserver01 nrpe-3.0.1]# vi /usr/local/nagios/etc/nrpe.cfg

添加本地主机(IPv4 和 IPv6)和 Nagios 监控服务器 IP 地址,以逗号“,”分隔。

allowed_hosts=127.0.0.1,::1,192.168.229.129

启动 NRPE 守护进程。

[root@dbserver01 nrpe-3.0.1]# /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d

在 Nagios Monitoring Server 添加这个 Linux 主机并定义一些服务。

[root@nagios01 ~]# vi /usr/local/nagios/etc/objects/linux.cfg
## Default Linux Host Template ##
define host{
name                            linux-box               ; Name of this template
use                             generic-host            ; Inherit default values
check_period                    24x7        
check_interval                  5       
retry_interval                  1       
max_check_attempts              10      
check_command                   check-host-alive
notification_period             24x7    
notification_interval           30      
notification_options            d,r     
contact_groups                  admins  
register                        0                       ; DONT REGISTER THIS - ITS A TEMPLATE
}
## Default
define host{
use                             linux-box               ; Inherit default values from a template
host_name                       dbserver01  ; The name we're giving to this server
alias                           dbserver01              ; A longer name for the server
address                         192.168.229.133         ; IP address of Remote Linux host
}
define service{
use                     generic-service
host_name               dbserver01
service_description     CPU Load
check_command           check_nrpe!check_load
}
define service{
use                     generic-service
host_name               dbserver01
service_description     Total Processes
check_command           check_nrpe!check_total_procs
}
define service{
use                     generic-service
host_name               dbserver01
service_description     Current Users
check_command           check_nrpe!check_users
}
define service{
use                     generic-service
host_name               dbserver01
service_description     SSH Monitoring
check_command           check_nrpe!check_ssh
}
define service{
use                     generic-service
host_name               dbserver01
service_description     FTP Monitoring
check_command           check_nrpe!check_ftp
}

现在,将此配置文件添加到 nagios.cfg 。

[root@nagios01 ~]# vi /usr/local/nagios/etc/nagios.cfg
cfg_file=/usr/local/nagios/etc/objects/linux.cfg

定义 check_nrpe 命令。

[root@nagios01 ~]# vi /usr/local/nagios/etc/objects/commands.cfg
define command{
 command_name check_nrpe
 command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}

重新启动 Nagios 服务以重新加载更改

[root@nagios01 ~]# systemctl restart nagios.service

浏览 Nagios Web UI,并检查 dbserver01 的服务。

NRPE Nagios Core Agent 已成功安装在我们的 CentOS 7 主机上。

日期:2020-09-17 00:16:44 来源:oir作者:oir