Nagios的安装和使用

2024-06-09 07:12
文章标签 安装 使用 nagios

本文主要是介绍Nagios的安装和使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

*实验* *nagios安装和使用*

Nagios 是一个监视系统运行状态和网络信息的监视系统。Nagios 能监视所指定的本地或远程主机以及服务,同时提供异常通知功能等.

Nagios 可运行在 Linux/Unix 平台之上,同时提供一个可选的基于浏览器的 WEB 界面以方便系统管理人员查看网络状态,各种系统问题,以及日志等等。

一、实验内容

1.ubuntu16.04系统nagios的安装和使用

**、**实验步骤

1.准备

安装相关安装包:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

\2. 下载源码并解压:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

\3. 编译源码

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

\4. 创建用户和组,并且将www数据用户也添加到nagios 组中

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

5 安装二级制文件,CGIs,和HTML文件

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

6 安装服务或守护进程,并设置开机自启

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

7 安装和配置外部命令文件

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

8 安装SAMPLE配置文件,这个配置文件中有启动nagios需要的请求。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

9 安装apache web server 配置文件和apache设置。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

10 关闭防火墙或者打开80端口

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

11 创建一个Apache用户账户以便登录nagios,以下命令创建一个名为nagiosadmin的用户账户,并提示输入用户账户密码;

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

如果需要再次添加用户,需要把命令行中的-c去掉,否则将替换掉已经存在的nagiosadmin用户。

12 重启apache web 服务

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

13启动nagios服务/守护进程

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

14 测试

输入Ip地址192.168.1.102/nagios访问,输入创建的用户名和密码进行登录:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

15 安装nagios插件

nagios需要插件才可以进行操作

先决条件

确保以下安装包都安装了

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

下载源码:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

编译和安装

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

16 测试插件

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

17 nagios配置文件的修改

监控本机

查看文件:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这个配置文件中指定了本地机器的检查配置文件localhost.cfg,这个文件是系统默认存在的。定义了要检测的属性。

浏览器访问可以查看到主机的属性:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

检测Linux机器:

创建一个hosts.cfg文件定义要管理的linux机器,创建一个service.cfg定义要检测的服务。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

还需要将这些文件定义加进入到/usr/local/nagios/etc/nagios.cfg

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Hosts.cfg文件定义了一个主机和主机组:检测的是192.168.1.114主机

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Services.cfg引用的local-service的服务作为自己的服务,这个服务的命令是检查主机是否存货,check-host-alive,这个命令在commands.cfg文件中被定义。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Local-service在这个文件中被定义:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

重新启动服务可以在浏览器看到:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

机器启动成功。

上面已经对远程Linux 主机是否存活做了监控,而判断远程机器是否存活,我们可以使用ping 工具对其监测。还有一些远程主机服务,例如ftp、ssh、http,都是对外开放的服务,即使不用Nagios,我们也可以试的出来,随便找一台机器看能不能访问这些服务就行了。但是对于像磁盘容量,cpu负载这样的“本地信息”,Nagios只能监测自己所在的主机,而对其他的机器则显得有点无能为力。毕竟没得到被控主机的适当权限是不可能得到这些信息的。为了解决这个问题,nagios有这样一个附加组件–“NRPE”,用它就可以完成对Linux 类型主机"本地信息”的监控。

nrpe工作原理:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

nrpe总共由两部分组成:

\1. Check_nrpe插件,位于监控主机上

\2. NRPE daemon,运行在远程Linux主机上(被监控主机)

当Nagios需要监控某个远程Linux主机的服务或者资源时:

\1. Nagios会运行check_nrpe这个插件,告诉它要检查什么;

\2. Check_nrpe插件会连接到远程的NRPE daemon,所用的方式是SSL’

\3. NRPE daemon会运行相应的Nagios插件来执行检查;

\4. NRPE daemon将检查的结果返回给check_nrpe插件,插件将其递交给nagios做处理。

NRPE daemon需要Nagios插件安装在远程的Linux主机上。

在被监控机上:

创建一个用户:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

安装插件:

先决条件,确保安装包已经安装

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

解压插件压缩包:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

安装:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

查看可以发现多克两个文件夹,修改文件权限:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

安装NRPE

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

解压:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

配置:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

安装NRPE插件,daemon和示例配置文件

\1. 安装check_nrpe插件

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

\2. 安装daemon

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

安装配置文件:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

安装启动文件:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

修改配置文件:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

启动服务:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

测试:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

安装成功。

查看检测文件:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传红色部分是命令名,也就是check_nrpe 的-c 参数可以接的内容,等号 “=” 后面是实际执行的插件程序(这与commands.cfg 中定义命令的形式十分相似,只不过是写在了一行)。也就是说check_users 就是等号后面/usr/local/nagios/libexec/check_users -w 5 -c 10 的简称。

我们可以很容易知道上面这5行定义的命令分别是检测登陆用户数,cpu负载,sda1的容量,僵尸进程,总进程数。各条命令具体的含义见插件用法(执行“插件程序名 –h”)。

由于-c 后面只能接nrpe.cfg 中定义的命令,也就是说现在我们只能用上面定义的这五条命令。我们可以在本机实验一下。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在监控主机上:

安装check_nrpe插件;

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

测试:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在commands.cfg中增加对check_nrpe的定义:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

-c 后面带的 A R G 1 ARG1 ARG1 参数是传给nrpe daemon 执行的检测命令,之前说过了它必须是nrpe.cfg 中所定义的那5条命令中的其中一条。在services.cfg 中使用check_nrpe 的时候要用 “!” 带上这个参数。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

可以自定义命令:

例如监控swap分区

在被监控端:编辑文件/usr/local/nagios/etc/nrpe.cfg

添加:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这个命令的意思是如果空闲空间小于20%则为警告状态 -> warning;如果小于10%则为严重状态 -> critical。

重启服务。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在监控端:

在/usr/local/nagios/etc/objects/services.cfg添加:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

重启nagios服务

重新访问192.168.1.102/nagios,可以看到如下图:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

监控windows机器

查看windows机器的IP地址

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

修改配置,将IP地址修改为Windows机器的地址

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

修改nagios.cfg文件,将文件引用的注释去除,使配置生效

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

利用nsclient++监控远程windows上的本地消息

在nagios的libexec下有check_nt这个插件,它就是用来检查windows机器的服务的。同时需要在windows搭配软件nsclient++.

Nsclient++的原理如下图:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

可以看到NSClient与nrpe最大的区别就是:

1.被监控机上安装有nrpe,并且还有插件,最终的监控是由这些插件来进行的。当监控主机将监控请求发给nrpe后,nrpe调用插件来完成监控。

2.NSClient++则不同,被监控机上只安装NSClient,没有任何的插件。当监控主机将监控请求发给NSClient++后,NSClient直接完成监控,所有的监控是由NSClient完成的。

这也说明了NSClient++的一个很大的问题:不灵活、没有可扩展性。它只能完成自己本身包含的监控操作,不能由一些插件来扩展。

windows安装nsclient++

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

安装完成;

修改配置文件

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

先修改文件的权限

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

将这些权限才可以修改配置文件。

修改文件

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

查看服务:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

查看端口:可以看到12489端口打开。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在监控端:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

测试:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

监控器查看:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

可以看到所检测的计算的一些情况

存中…(img-HxJpJT2K-1717860505354)]

查看服务:

[外链图片转存中…(img-7fi5mDA3-1717860505355)]

查看端口:可以看到12489端口打开。

[外链图片转存中…(img-XJTJKtsq-1717860505355)]

在监控端:

[外链图片转存中…(img-apwYLSo8-1717860505355)]

[外链图片转存中…(img-RO00Fk6a-1717860505356)]

测试:

[外链图片转存中…(img-GZxWTfJU-1717860505357)]

监控器查看:

[外链图片转存中…(img-reCvoKn1-1717860505357)]

可以看到所检测的计算的一些情况

这篇关于Nagios的安装和使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1044510

相关文章

使用Python实现IP地址和端口状态检测与监控

《使用Python实现IP地址和端口状态检测与监控》在网络运维和服务器管理中,IP地址和端口的可用性监控是保障业务连续性的基础需求,本文将带你用Python从零打造一个高可用IP监控系统,感兴趣的小伙... 目录概述:为什么需要IP监控系统使用步骤说明1. 环境准备2. 系统部署3. 核心功能配置系统效果展

使用Java将各种数据写入Excel表格的操作示例

《使用Java将各种数据写入Excel表格的操作示例》在数据处理与管理领域,Excel凭借其强大的功能和广泛的应用,成为了数据存储与展示的重要工具,在Java开发过程中,常常需要将不同类型的数据,本文... 目录前言安装免费Java库1. 写入文本、或数值到 Excel单元格2. 写入数组到 Excel表格

redis中使用lua脚本的原理与基本使用详解

《redis中使用lua脚本的原理与基本使用详解》在Redis中使用Lua脚本可以实现原子性操作、减少网络开销以及提高执行效率,下面小编就来和大家详细介绍一下在redis中使用lua脚本的原理... 目录Redis 执行 Lua 脚本的原理基本使用方法使用EVAL命令执行 Lua 脚本使用EVALSHA命令

Java 中的 @SneakyThrows 注解使用方法(简化异常处理的利与弊)

《Java中的@SneakyThrows注解使用方法(简化异常处理的利与弊)》为了简化异常处理,Lombok提供了一个强大的注解@SneakyThrows,本文将详细介绍@SneakyThro... 目录1. @SneakyThrows 简介 1.1 什么是 Lombok?2. @SneakyThrows

Win安装MySQL8全过程

《Win安装MySQL8全过程》:本文主要介绍Win安装MySQL8全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Win安装mysql81、下载MySQL2、解压文件3、新建文件夹data,用于保存数据库数据文件4、在mysql根目录下新建文件my.ini

使用Python和Pyecharts创建交互式地图

《使用Python和Pyecharts创建交互式地图》在数据可视化领域,创建交互式地图是一种强大的方式,可以使受众能够以引人入胜且信息丰富的方式探索地理数据,下面我们看看如何使用Python和Pyec... 目录简介Pyecharts 简介创建上海地图代码说明运行结果总结简介在数据可视化领域,创建交互式地

Java Stream流使用案例深入详解

《JavaStream流使用案例深入详解》:本文主要介绍JavaStream流使用案例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录前言1. Lambda1.1 语法1.2 没参数只有一条语句或者多条语句1.3 一个参数只有一条语句或者多

Java Spring 中 @PostConstruct 注解使用原理及常见场景

《JavaSpring中@PostConstruct注解使用原理及常见场景》在JavaSpring中,@PostConstruct注解是一个非常实用的功能,它允许开发者在Spring容器完全初... 目录一、@PostConstruct 注解概述二、@PostConstruct 注解的基本使用2.1 基本代

C#使用StackExchange.Redis实现分布式锁的两种方式介绍

《C#使用StackExchange.Redis实现分布式锁的两种方式介绍》分布式锁在集群的架构中发挥着重要的作用,:本文主要介绍C#使用StackExchange.Redis实现分布式锁的... 目录自定义分布式锁获取锁释放锁自动续期StackExchange.Redis分布式锁获取锁释放锁自动续期分布式

springboot使用Scheduling实现动态增删启停定时任务教程

《springboot使用Scheduling实现动态增删启停定时任务教程》:本文主要介绍springboot使用Scheduling实现动态增删启停定时任务教程,具有很好的参考价值,希望对大家有... 目录1、配置定时任务需要的线程池2、创建ScheduledFuture的包装类3、注册定时任务,增加、删