更新时间:2023-01-16 15:53:16浏览次数:492+次
本文介绍如何在Rocky Linux 9/AlmaLinux 9系统上安装和配置Nagios服务器的方法,以下是详细的操作步骤。
详细步骤
1、安装所需的软件包
在开始之前,请确保系统和所有可用软件包都已更新到最新可用版本:
sudo dnf update -y
将SELinux设置为许可模式:
sudo sed -i 's/SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config
sudo setenforce 0
安装所需的软件包,如Apache和其他构建工具:
sudo dnf -y install unzip tar httpd httpd-tools php gcc glibc glibc-common gd gd-devel make net-snmp openssl-devel
安装完成后,启动并启用Apache和PHP-FPM:
sudo systemctl enable --now httpd php-fpm
2、下载Nagios核心源代码
要下载Nagios Core的最新源代码,请导航到Nagios Downloads页面https://www.nagios.org/downloads/。或者,您可以获取最新版本并使用以下命令导出:
VER=4.4.9
导出后,使用以下命令下载版本:
wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-$VER.tar.gz
提取存档:
tar xzf nagios-$VER.tar.gz
3、在Rocky Linux 9/AlmaLinux 9上安装Nagios Core
我们将首先配置内核以适应系统,并检查是否已安装所有所需的软件包:
cd nagios-$VER/
./configure
现在编译Nagios Core:
make all
将Nagios用户和组添加到系统:
sudo make install-groups-users
将Apache用户添加到创建的Nagios组中:
sudo usermod -aG nagios apache
现在通过执行以下命令安装Nagios Core:
sudo make install
安装Nagios的init脚本:
sudo make install-init
安装外部命令文件和权限:
sudo make install-commandmode
安装Nagios配置文件:
sudo make install-config
最后,安装Nagios的Apache配置文件:
sudo make install-webconf
4、在Rocky Linux 9/AlmaLinux 9上安装Nagios插件
插件用于从服务器收集监控信息。要从本地主机收集监控数据,可以安装Nagios插件,如下所示。首先从Nagios插件页面下载最新的socuce代码,地址在https://www.nagios.org/downloads/nagios-plugins/:
wget https://nagios-plugins.org/download/nagios-plugins-2.3.3.tar.gz
提取存档:
tar -xvf nagios-plugins-*.tar.gz
导航到目录:
cd nagios-plugins-*/
创建具有适当权限的所需目录:
mkdir -p /usr/local/nagios/var/spool/checkresults
sudo chown -R nagios:nagios /usr/local/nagios/var/spool/checkresults
配置并安装Nagios插件:
./configure --with-nagios-user=nagios --with-nagios-group=nagios
make
sudo make install
5、创建Nagios Web用户
为了访问Nagios web仪表板,我们需要创建一个用户帐户。此用户帐户将用于身份验证:
$ sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
New password: PasswordHere
Re-type new password: Repeat_PasswordHere
Adding password for user nagiosadmin
用户的默认名称是nagiosadmin。您可以使用另一个用户名,方法是用首选用户名替换/usr/local/nagios/etc/cgi.cfg文件中的所有nagiosadmin实例。
通过设置正确的所有权和权限,允许apache访问配置文件:
sudo chown apache:apache /usr/local/nagios/etc/htpasswd.users
sudo chmod 640 /usr/local/nagios/etc/htpasswd.users
要应用所做的更改,请重新启动Apache:
sudo systemctl restart httpd
允许HTTP服务通过防火墙:
sudo firewall-cmd --add-port=80/tcp --permanent
sudo firewall-cmd --reload
启动并启用Nagios服务:
sudo systemctl enable nagios --now
重新启动系统:
sudo reboot now
系统重新启动后,验证服务是否正在运行:
$ systemctl status nagios
6、访问Nagios Web界面
现在,您可以使用URL访问Nagios web UI,地址格式是http://IP_Address/nagios/,您需要使用nagiosadmin用户登录,如图所示:
成功登录后,您将看到下面的仪表板:
可以查看主机可用性,包括检查服务下收集的数据。到这里,也说明您已在Rocky Linux 9/AlmaLinux 9上成功安装了Nagios服务器。接下来的步骤包括配置要监视的端点。
7、配置Rocky Linux 9/AlmaLinux 9 Nagios代理
要监视的代理。您需要安装以下组件:
用于数据收集的Nagios plugins。
执行插件的NRPE代理。
有两种方法可以在Rocky Linux 9/AlmaLinux 9上安装Nagios插件。可使用源代码或从EPEL repo安装。
在本文中,我们将使用最简单的方法,即使用EPEL repo。在Rocky Linux 9/AlmaLinux 9上启用EPEL repo:
sudo dnf install epel-release
启用后,查找可用的Nagios plugins:
$ dnf list nagios-plugins-*
现在安装首选的Nagios插件。例如,要检查进程、磁盘空间、交换空间、dns、用户、正常运行时间、http和加载的插件,请使用以下命令:
sudo dnf install nagios-plugins-{load,http,users,procs,disk,swap,nrpe,uptime,dns}
安装后,软件包将存储在路径/usr/lib64/nagios/plugins/下:
$ ls -1 /usr/lib64/nagios/plugins/
check_disk
check_dns
check_http
check_load
check_nrpe
check_procs
check_swap
check_uptime
check_users
eventhandlers
negate
urlize
utils.sh
此外,可以从源代码和EPEL安装Nagios NRPE代理。从EPEL repo安装它更容易,可以通过以下命令完成:
sudo dnf install nrpe
安装后,使用以下命令进行验证:
$ nrpe -V
NRPE - Nagios Remote Plugin Executor
Version: 4.1.0
启动并启用服务:
sudo systemctl enable nrpe --now
验证服务是否正在运行:
$ systemctl status nrpe
允许服务通过防火墙:
sudo firewall-cmd --add-port=5666/tcp --permanent
sudo firewall-cmd --reload
现在,在Nagios服务器上,通过在/usr/local/nagios/etc/objects创建新对象来添加远程主机。例如:
sudo vim /usr/local/nagios/etc/objects/nodes.cfg
添加以下行以适当替换:
# REMOTE HOST DEFINITION
define host {
use linux-server
host_name node1.computingforgeeks-demo.com
alias node1
address 192.168.205.13
}
# REMOTE HOST GROUP DEFINITION
define hostgroup {
hostgroup_name linux-servers
alias Linux Servers
members node1.computingforgeeks-demo.com
}
define service {
use local-service ; Name of service template to use
host_name node1.computingforgeeks-demo.com
service_description PING
check_command check_ping!100.0,20%!500.0,60%
}
define service {
use local-service ; Name of service template to use
host_name node1.computingforgeeks-demo.com
service_description Root Partition
check_command check_local_disk!20%!10%!/
}
define service {
use local-service ; Name of service template to use
host_name node1.computingforgeeks-demo.com
service_description Current Users
check_command check_local_users!20!50
}
define service {
use local-service ; Name of service template to use
host_name node1.computingforgeeks-demo.com
service_description Total Processes
check_command check_local_procs!250!400!RSZDT
}
define service {
use local-service ; Name of service template to use
host_name node1.computingforgeeks-demo.com
service_description Current Load
check_command check_local_load!5.0,4.0,3.0!10.0,6.0,4.0
}
define service {
use local-service ; Name of service template to use
host_name node1.computingforgeeks-demo.com
service_description Swap Usage
check_command check_local_swap!20%!10%
}
define service {
use local-service ; Name of service template to use
host_name node1.computingforgeeks-demo.com
service_description SSH
check_command check_ssh
notifications_enabled 0
}
define service {
use local-service ; Name of service template to use
host_name node1.computingforgeeks-demo.com
service_description HTTP
check_command check_http
notifications_enabled 0
}
在上面的文件中,use local-service定义了要由添加的主机使用的模板。模板在默认模板目录中定义。您还可以创建要使用的自定义模板。
通过对conf进行以下更改,允许Nagios服务器使用配置:
sudo vim /usr/local/nagios/etc/nagios.cfg
添加以下行:
#cfg_file=/usr/local/nagios/etc/objects/localhost.cfg
cfg_file=/usr/local/nagios/etc/objects/nodes.cfg
注释掉localhost.cfg以允许使用添加的远程主机。保存文件并重新启动Nagios:
sudo systemctl restart nagios
现在,从Nagios web UI,您可以对添加的主机执行监视。主机需要一段时间才能可用:
至此,配置完成,这也意味着在Rocky Linux 9/AlmaLinux 9系统上安装和配置Nagios服务器全部结束。
相关资讯