Nagios Core 安装 – Centos篇

本文档介绍了如何从源代码安装Nagios Core 。

本指南分为几个部分,涵盖了不同的操作系统(OS)发行版。如果您的操作系统发行版未包含在本指南中,请与我们联系以查看是否可以添加它。由于我们无权访问允许我们开发文档的测试环境,因此某些发行版可能会丢失。

Nagios Core 4.4.5和Nagios插件2.2.1是本指南中使用的版本,但是以后的版本也可以在这些步骤中正常工作。

本文档分为两个不同的部分:

  • 安装Nagios Core
  • 安装Nagios插件

这种分离是为了明确区分要安装的操作系统所需的必备软件包。例如,SNMP软件包作为Nagios插件部分的一部分安装,因为Nagios Core不需要SNMP。

RHEL | CentOS | 甲骨文Linux

增强安全性的Linux

本指南基于SELinux被禁用或处于许可模式。执行此步骤如下。

sed -i 's/SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config
setenforce 0

先决条件

执行以下步骤以安装必备软件包。

===== RHEL 5/6/7 | CentOS 5/6/7 | Oracle Linux 5/6/7 =====

yum install -y gcc glibc glibc-common wget unzip httpd php gd gd-devel perl postfix

===== RHEL 8 | CentOS 8 =====

dnf install -y gcc glibc glibc-common perl httpd php wget gd gd-devel
dnf update -y

下载源

cd /tmp
wget -O nagioscore.tar.gz https://github.com/NagiosEnterprises/nagioscore/archive/nagios-4.4.5.tar.gz
tar xzf nagioscore.tar.gz

编译

cd /tmp/nagioscore-nagios-4.4.5/
./configure
make all

创建用户和组

这将创建nagios用户和组。的apache的用户也被添加到所述的nagios组。

make install-groups-users
usermod -a -G nagios apache

安装二进制文件

此步骤将安装二进制文件,CGI和HTML文件。

make install

安装服务/守护程序

这将安装服务或守护程序文件,还将它们配置为在引导时启动。此时,还配置了Apache httpd服务。

===== RHEL 5/6 | CentOS 5/6 | Oracle Linux 5/6 =====

make install-daemoninit
chkconfig --level 2345 httpd on

===== RHEL 7/8 | CentOS 7/8 | Oracle Linux 7/8 =====

make install-daemoninit
systemctl enable httpd.service

有关启动和停止服务的信息将在后面进一步说明。

安装命令模式

这将安装并配置外部命令文件。

make install-commandmode

安装配置文件

这将安装* SAMPLE *配置文件。这些是必需的,因为Nagios需要一些配置文件才能启动。

make install-config

安装Apache配置文件

这将安装Apache Web服务器配置文件。如果需要,还配置Apache设置。

make install-webconf

配置防火墙

您需要允许本地防火墙上的端口80入站流量,以便可以访问Nagios Core Web界面。

===== RHEL 5/6 | CentOS 5/6 | Oracle Linux 5/6 =====

iptables -I INPUT -p tcp --destination-port 80 -j ACCEPT
service iptables save
ip6tables -I INPUT -p tcp --destination-port 80 -j ACCEPT
service ip6tables save

===== RHEL 7/8 | CentOS 7/8 | Oracle Linux 7/8 =====

firewall-cmd --zone=public --add-port=80/tcp
firewall-cmd --zone=public --add-port=80/tcp --permanent

创建nagiosadmin用户帐户

您需要创建一个Apache用户帐户才能登录Nagios。

以下命令将创建一个名为nagiosadmin的用户帐户,并提示您提供该帐户的密码。

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

将来添加其他用户时,您需要从上述命令中删除-c,否则它将替换现有的nagiosadmin用户(以及您可能添加的任何其他用户)

启动Apache Web服务器

===== RHEL 5/6 | CentOS 5/6 | Oracle Linux 5/6 =====

service httpd start 

===== RHEL 7/8 | CentOS 7/8 | Oracle Linux 7/8 =====

systemctl start httpd.service

启动服务/守护程序

此命令启动Nagios Core。

===== RHEL 5/6 | CentOS 5/6 | Oracle Linux 5/6 =====

service nagios start

===== RHEL 7/8 | CentOS 7/8 | Oracle Linux 7/8 =====

systemctl start nagios.service

测试Nagios

Nagios现在正在运行,要确认这一点,您需要登录Nagios Web界面。

将您的Web浏览器指向Nagios Core服务器的IP地址或FQDN ,例如:

http://10.25.5.143/nagios

http://core-013.domain.local/nagios

系统将提示您输入用户名和密码。用户名是nagiosadmin(您在上一步中创建),密码是您之前提供的密码。

登录后,将显示Nagios界面。恭喜,您已经安装了Nagios Core。

可是等等 …

当前,您仅安装了Nagios Core引擎。您会在host和服务下注意到一些错误,具体如下:

(No output on stdout) stderr: execvp(/usr/local/nagios/libexec/check_load, ...) failed. errno is 2: No such file or directory 

一旦安装了Nagios插件,这些错误将得到解决,这将在下一步中介绍。

安装Nagios插件

Nagios Core需要插件才能正常运行。以下步骤将引导您完成安装Nagios插件的过程。

这些步骤将安装nagios-plugins 2.2.1。将来会提供较新的版本,您可以在以下安装步骤中使用它们。请查看GitHub上发布页面以获取所有可用版本。

请注意,以下步骤将安装Nagios插件包中随附的大多数插件。但是,有些插件需要其他库,但这些说明中未包含这些库。请参阅以下知识库文章,以获取详细的安装说明:

文档-从源代码安装Nagios插件

先决条件

确保已安装以下软件包。

===== CentOS 5 =====

yum install -y gcc glibc glibc-common make gettext automake wget openssl-devel net-snmp net-snmp-utils epel-release
yum install -y perl-Net-SNMP
cd /tmp
wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.60.tar.gz
tar xzf autoconf-2.60.tar.gz 
cd /tmp/autoconf-2.60
./configure 
make
make install

===== CentOS 6/7 =====

yum install -y gcc glibc glibc-common make gettext automake autoconf wget openssl-devel net-snmp net-snmp-utils epel-release
yum install -y perl-Net-SNMP

===== CentOS 8 =====

yum install -y gcc glibc glibc-common make gettext automake autoconf wget openssl-devel net-snmp net-snmp-utils epel-release
yum --enablerepo=PowerTools,epel install perl-Net-SNMP

===== RHEL 5 | Oracle Linux 5 =====

cd /tmp
wget http://archives.fedoraproject.org/pub/archive/epel/epel-release-latest-5.noarch.rpm
rpm -ihv epel-release-latest-5.noarch.rpm
yum install -y gcc glibc glibc-common make gettext automake wget openssl-devel net-snmp net-snmp-utils
yum install -y perl-Net-SNMP
wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.60.tar.gz
tar xzf autoconf-2.60.tar.gz 
cd /tmp/autoconf-2.60
./configure 
make
make install

===== RHEL 6 | Oracle Linux 6 =====

cd /tmp
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
rpm -ihv epel-release-latest-6.noarch.rpm
yum install -y gcc glibc glibc-common make gettext automake autoconf wget openssl-devel net-snmp net-snmp-utils
yum install -y perl-Net-SNMP

===== RHEL 7 =====

cd /tmp
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -ihv epel-release-latest-7.noarch.rpm
subscription-manager repos --enable=rhel-7-server-optional-rpms
yum install -y gcc glibc glibc-common make gettext automake autoconf wget openssl-devel net-snmp net-snmp-utils
yum install -y perl-Net-SNMP

===== RHEL 8 =====

在编写此RHEL 8的EPEL时,尚未发布,删除了受影响的命令,但如果EPEL 8可用,则*应该*工作。

cd /tmp
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
rpm -ihv epel-release-latest-8.noarch.rpm
subscription-manager repos --enable=rhel-8-server-optional-rpms
yum install -y gcc glibc glibc-common make gettext automake autoconf wget openssl-devel net-snmp net-snmp-utils
yum install -y perl-Net-SNMP

===== Oracle Linux 7 =====

yum install -y yum-utils
yum-config-manager --enable ol7_optional_latest
cd /tmp
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -ihv epel-release-latest-7.noarch.rpm
yum install -y gcc glibc glibc-common make gettext automake autoconf wget openssl-devel net-snmp net-snmp-utils
yum install -y perl-Net-SNMP

===== Oracle Linux 8 =====

yum install -y yum-utils
yum-config-manager --enable ol8_optional_latest
cd /tmp
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
rpm -ihv epel-release-latest-8.noarch.rpm
yum install -y gcc glibc glibc-common make gettext automake autoconf wget openssl-devel net-snmp net-snmp-utils
yum install -y perl-Net-SNMP

下载源

cd /tmp
wget --no-check-certificate -O nagios-plugins.tar.gz https://github.com/nagios-plugins/nagios-plugins/archive/release-2.2.1.tar.gz
tar zxf nagios-plugins.tar.gz

编译安装

cd /tmp/nagios-plugins-release-2.2.1/
./tools/setup
./configure
make
make install

测试插件

将您的Web浏览器指向Nagios Core服务器的IP地址或FQDN ,例如:

http://10.25.5.143/nagios

http://core-013.domain.local / nagios

转到host或服务对象,然后在“命令”菜单下“重新计划下一个检查”。您以前看到的错误现在应该消失,并且正确的输出将显示在屏幕上。

服务/守护程序命令

不同的Linux发行版具有不同的启动/停止/重新启动/状态Nagios的方法。

===== RHEL 5/6 | CentOS 5/6 | Oracle Linux 5/6 =====

service nagios start
service nagios stop
service nagios restart
service nagios status

===== RHEL 7/8 | CentOS 7/8 | Oracle Linux 7/8 =====

systemctl start nagios.service
systemctl stop nagios.service
systemctl restart nagios.service
systemctl status nagios.service

觉得文章有用?

点个广告表达一下你的爱意吧 !😁