Nagios工具

一 nagios 相关概念

    Nagios 是一款开源的免费网络监视工具,能有效监控 Windows、Linux 和 Unix 的主机状态,交换机路由器等网络设置,打印机等。在系统或服务状态异常时发出邮件或短信报警第

一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。 Nagios 可运行在 Linux/Unix 平台之上,同时提供一个可选的基于浏览器的 WEB 界面以方便系统管理人员查看网络状态,各种系统问题,以及日志等等。

二 使用 nagios 监控本机状态

1.配置yum源

#vim /etc/yum.repos.d/y.repo

2.下载安装 nagios

 #yum --enablerepo=y install nagios nagios-plugins-{ping,disk,users,procs,load,swap,ssh,http}(括号里都是插件)-y

注:插件下载安装在/use/lib64/nagios/plugins

 使 apache 支持 php

 1)安装 apache 和 php:

#yum install httpd php php-mbstring php-pear -y

 2)删除调用 apache 测试页的配置文件:

#cd /etc/httpd/conf.d/

#rm -rf welcome.conf

 3)修改 apache 配置文件

#vim /etc/httpd/conf/httpd.conf

 86 行:ServerAdmin root@yy.com

 95 行:ServerName www.yy.com:80

 151 行:AllowOverride All

 164 行:DirectoryIndex index.html index.cgi index.php

 文件末尾添加:

        ServerTokens Prod(隐藏服务器信息)

        KeepAlive On(减少连接数。降低服务器资源使用)

 

4)生成 php 测试页面

#cd /var/www/html

 #echo "<?php phpinfo() ?>" > index.php

 #chmod a+x index.php

 5)配置 php 时区(默认的是此时区,可不配置)

 #vim /etc/php.ini

 878 行,时区改为“Asia/Shanghai”

 6)重启 apache:systemctl restart httpd

 7)使用浏览器访问 http://192.168.20.133可见 php 测试页

3.配置 nagios

 编辑vim /etc/httpd/conf.d/nagios.conf

 注释第 16 行,在 17 行下添加:

Require ip 127.0.0.1 192.168.0.0/16

注释第 47 行,在 48 行下添加:

Require ip 127.0.0.1 192.168.0.0/16

 改名或者删除php 测试页

#cd /var/www/html

#mv index.php index.php.bak

4.设置登录 nagios 网页端用户的密码

   #htpasswd /etc/nagios/passwd nagiosadmin

5. 重启 nagios 和 http

   #systemctl restart nagios

   #systemctl restart httpd

6.使用浏览器访问:http://192.168.20.133/nagios,输入用户名(nagiosadmin)和密码后可见 nagios监控页面

7.配置 nagios 邮件提醒

 1)安装软件:yum install postfix-perl-scripts -y

 2)编辑配置文件:vim /etc/postfix/main.cf

75:myhostname = www.yy.com

 83:mydomain = yy.com

 99:myorgin = $mydoamin

 116:inte_interfaces = all

 164:mydestination = $myhostname,loaclhost $mydomain,localhost,$mydomain

 264:mynetwork = 192.168.0.0/16,127.0.0.0/8

 419:home_mailbox = Maildir/

 574:smtpd_banner = $myhostname ESMTP

 在文件末尾添加:

 smtpd_sasl_type = dovecot

 smtpd_sasl_path = private/auth

 smtpd_sasl_auth_enable = yes

 smtpd_sasl_security_options = noanonymous

 smtpd_sasl_local_domain = $myhostname

 smtpd_recipient_restrictions =

permit_mynetworks,permit_auth_destination,permit_sasl_authenticated,reject

启动服务:systemctl restart postfix

 3)配置 dns 使其可以解析本机主机名

 4)定义 nagios 邮件的收件人

编辑配置文件:vim /etc/nagios/objects/contacts.cfg

 34:root@localhost

 5)重启服务:systemctl restart nagios

              systemctl restart httpd

 6)开启相关服务提醒:在 web 页面上,点击相关服务右边的\标记,在右侧选项卡中选择“为该服务开启提醒功能”,点击“提交”->“完成”

7)修改配置文件,并刷新浏览

8)查看邮件

8. 添加一个新的监控项目

 1)nagios 是利用命令对本机或远程主机的状态进行监控的。监控使用的命令是在安装插件的时候获取的(即安装的插件实际上就是 nagios 用于检查服务状态的命令),这些命令默认保存在/usr/lib64/nagios/plugins

注:如果需要监控某项服务,则必须确保用于监控该项服务的插件已经安装(即监控用的命令存在)

 2)在/etc/nagios/objects/commands.cfg 中,定义监控命令

 define command {

 command_name 监控使用命令的名称

 command_line 具体使用的命令及命令的参数

}

 3)在/etc/nagios/objects/localhost.cfg 中,定义监控项目

 define service {

 use local-service

 host_name localhost

 service_description check boot fen qu

 check_command check_boot_partition!30%!5%!/boot

}

注:service_description 定义的是该检查项目在 web 监控端显示的名称在 /etc/nagios/objects/commands.cfg 中定义了使用哪个命令用于监控,在/etc/nagios/objects/localhost.cfg 中,给出了定义在 /etc/nagios/objects/commands.cfg 使用命令的具体参数值

 4)重启服务,在 web 端查看服务是否被成功添加

例:1.确定监控使用的命令存在

 #cd /usr/lib64/nagios/plugins

 #ls

 2.定义命令

 #vim /etc/nagios/objects/commands.cfg

 define command{

 command_name check_local_sda1

 command_line $USER1$/check_disk -w $ARG1$ -c $ARG2$ -p $ARG3$

 }

 3.定义监控服务

 vim /etc/nagios/objects/localhost.cfg

define service{

 use local-service

 host_name localhost

 service_description jia cha boot fen qu

 check_command check_local_sda1!20%!10%!/dev/sda1

 }

 4.重启服务:systemctl restart nagios

 5.在浏览器中测试:http://192.168.20.133/nagios

 选择:services 可见新定义的监控服务:jia cha boot fen qu

三 监控远程 Linux 主机

1.在被监控的主机上配置

 1 )安装软件:

#yum --enablerepo=y install nrpe

nagios-plugins-{ping,disk,users,procs,load,swap,ssh} -y

 2)编辑 nrpe 配置文件

 vim /etc/nagios/nrpe.cfg

 117:添加监控主机

 133:开启 nrpe 传输参数1

 309-313:注释本地检测

 323-326:修改为

command[check_users]=/usr/lib64/nagios/p lugins/check_users -w $ARG1$ -c $ARG2$

command[check_load]=/usr/lib64/nagios/pl ugins/check_load -w $ARG1$ -c $ARG2$

command[check_disk]=/usr/lib64/nagios/pl ugins/check_disk -w $ARG1$ -c $ARG2$ -p

$ARG3$

command[check_swap]=/usr/lib64/nagios/pl ugins/check_swap -w $ARG1$ -c $ARG2$

 3)重启 nrpe 服务:systemctl restart nrpe

2.监控主机上的配置

 1)安装软件:yum --enablerepo=y install naigos-plugins-nrpe -y

 2)编辑 nagios 配置文件:vim /etc/nagios/naigos.cfg

 取消 51 行注释:被监控主机的配置文件存放目录

 3)创建被监控主机配置文件存放目录

 #mkdir -pv /etc/nagios/servers

 #chgrp nagios /etc/nagios/servers(改属组)

 #chmod 750 /etc/nagios/servers

 4)定义命令

 #vim /etc/nagios/objects/command.cfg

 define command{

 command_name check_nrpe

 command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$

 }

 5)定义远程主机的监控项目

 #vim /etc/nagios/servers/noc.cfg

 define host{

 use linux-server

 host_name host-6

 alias host-6

 address 192.168.1.2

}

注:定义被监控的主机

define service{

 use generic-service

 host_name host-6

 service_description check_users

 check_command check_nrpe!check_users\!10\!20

}

define service{

 use generic-service

 host_name host-6

 service_description check_ROOT_partion

 check_command check_nrpe!check_disk\!20%\!10%\!/

}

 6)重启服务:systemctl restart nagios

注:如果重启服务过程中报错,使用以下命令来定位错误

 /usr/sbin/nagios -v /etc/nagios/nagios.cfg

 7)在 web 端可以查看新添加的监控主机及主机相关服务的状态

注:可以参考配置文件模板来对服务进行相关配置。配置文件模板所在路径:/etc/nagios/objects/templates.cfg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/780309.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CY2300相位对齐时钟乘法器

这份文件是关于Cypress Semiconductor Corporation生产的CY2300型号的Phase-Aligned Clock Multiplier&#xff08;相位对齐时钟乘法器&#xff09;的技术手册。以下是该文件的核心内容概述&#xff1a; 产品特性&#xff1a; 4倍频输出配置。单一锁相环&#xff08;PLL&#x…

顶顶通呼叫中心中间件-声音编码自适应配置方法(mod_cti基于FreeSWITCH)

顶顶通呼叫中心中间件-声音编码自适应配置方法讲解(mod_cti基于FreeSWITCH) 声音编码自适应介绍 声音编码自适应&#xff0c;通常在语音通信和音频处理领域中指的是一种能够根据信号特性和传输环境自动调整编码参数的技术。其目的是在不同的网络状况和音质要求下&#xff0c;…

6.1物联网RK3399项目开发实录-驱动开发之ADC驱动(wulianjishu666)

物联网嵌入式开发源码例程&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1B3oqq5QBhN-VmTFt9CI-7A?pwd2ihg ******************************************************************************************* ADC 使用 简介 AIO-3399J 开发板上的 AD 接口有两种…

服务未注册到nacos通过gateway转发的配置

1.现实场景 服务需要部署到内网阿里云&#xff0c;通过edas可以进行服务的自动部署和注册&#xff0c;但是有些服务需要调用同一环境中的C命令&#xff0c;于是通过建立ECS服务器&#xff0c;进行jar包的部署&#xff0c;那么在新建的ECS部署的jar包如何通过gateway转发&#…

5-规范设计(下):commit信息风格迥异、难以阅读,如何规范?

我们在做代码开发时&#xff0c;经常需要提交代码&#xff0c;提交代码时需要填写 Commit Message&#xff08;提交说明&#xff09;&#xff0c;否则就不允许提交。 所以在 Go 项目开发时&#xff0c;一个好的 Commit Message 至关重要&#xff1a; 可以使自己或者其他开发人…

基于SSM的百货中心供应链管理系统设计与实现(论文+源码)_kaic

摘 要 社会发展日新月异&#xff0c;用计算机应用实现数据管理功能已经算是很完善的了&#xff0c;但是随着移动互联网的到来&#xff0c;处理信息不再受制于地理位置的限制&#xff0c;处理信息及时高效&#xff0c;备受人们的喜爱。本次开发一套百货中心供应链管理系统有管理…

u盘插在电脑上显示要格式化磁盘怎么办

咨询&#xff1a;“U盘插入电脑&#xff0c;提示需要先格式化 才可使用。对于此种情况&#xff0c;在不需要格式化的情况下&#xff0c;是否可以恢复U盘内容&#xff1f;谢谢” 当我们尝试将U盘插入电脑时&#xff0c;有时会遇到一个令人困惑的提示&#xff1a;电脑要求我们格式…

Game Audio Programming

音频编程时游戏开发中最容易忽略&#xff0c;学习资源又是很少的环节。接下来&#xff0c;你将和我探索人耳的工作机制。 what is sound? 我们可以解释电视机是如何通过眼睛传递视觉信息的&#xff0c;但却往往无法对听觉信息做出类似的解释。 对声音的科学研究被称为声学&…

vlan间单臂路由

【项目实践4】 --vlan间单臂路由 一、实验背景 实验的目的是在一个有限的网络环境中实现VLAN间的通信。网络环境包括两个交换机和一个路由器&#xff0c;交换机之间通过Trunk链路相连&#xff0c;路由器则连接到这两个交换机的Trunk端口上。 二、案例分析 在网络工程中&#…

【测试开发学习历程】Python数据类型:字符串-str(下)

目录 5.5 format()方法 5.6 count()方法 5.7 join()方法 5.8 replace()方法 5.9 split()方法 5.10 rstrip()/lstrip()/strip() 方法 5.11 capitalize()方法 5.12 upper() 5.13 lower() 5.14 title() 5.15 endswith()方法 5.16 startswith()方法 5.17 以is开头的方…

跃然纸上的灵感再现,手绘风格的开源绘图白板工具:Excalidraw

Excalidraw&#xff1a;即绘即思&#xff0c;直观呈现未来流程图&#xff01;- 精选真开源&#xff0c;释放新价值。 概览 在撰写文章或构建演示案例的过程中&#xff0c;为了增强视觉表现力和信息传达深度&#xff0c;适时融入图表或图形显得至关重要。Excalidraw作为一款基于…

pyrhon 中__call__的用法

使用背景 一般情况下类方法的调用是通过先创建类对象再通过a.b()的方式来调用&#xff0c;但是如果类中只有一个方法或者一个方法的使用频率非常高&#xff0c;那么就可以为这个方法命名为__call__来简化调用。 call 存在__call__方法的类对象被称为可调用对象&#xff0c;它…

深度选择器/deep/、::v-deep、:deep的区别

在 Vue.js 和某些其他前端框架中&#xff0c;/deep/、::v-deep 和 :deep 都是用于穿透组件作用域的选择器。它们的主要目的是允许开发者在父组件中直接选择并样式化子组件内部的元素&#xff0c;即使这些元素被封装在子组件的作用域内。 /deep/ /deep/ 是一个深度选择器&#…

nginx符号链接介绍

符号链接&#xff08;Symbolic link&#xff09;是一种特殊类型的文件&#xff0c;它是指向另一个文件或目录的符号。在 Nginx 中&#xff0c;符号链接通常用于启用或禁用特定站点的配置文件。 要查看是否存在符号链接以及符号链接指向的目标文件或目录&#xff0c;您可以使用…

【生活】相机/图像各参数

文章目录 专业模式图片编辑-滤镜实体滤镜软件模拟滤镜 图片编辑-增强曝光亮度对比度饱和度自然饱和度色温色调高光阴影HSL色调分离褪色颗粒锐化晕影清晰度暗角 参考 专业模式 第一个参数WB是白平衡&#xff0c;调节色彩的。 第二个是对焦F&#xff0c;近距离拍摄物体&#xf…

怎么在循环List的时候删除List的元素

怎么在循环List的时候删除List的元素 1. 先给出结论 任何时候都不要在 for 循环中删除 List 集合元素 2. 为什么在 for 循环中删除 List 集合元素是错误的 在 for 循环中删除 List 集合元素的问题主要是因为循环的迭代器和 List 集合的元素索引之间的冲突。在使用 for 循环遍历…

您之个人命运形势分析和理性解法结论:匆忙之间做出的选择,确实容易出错

就是一个事情&#xff0c;就是您看书那么多&#xff0c;为啥自己过的这么不如意呢&#xff1f;    就是本身没把自己的日子过好&#xff0c; 其他说啥子道理&#xff0c;都是瞎摆活&#xff0c;不是吗&#xff1f;     学的知识没用到个人身上来。至于儒释道是&#xff…

5.97 BCC工具之biolatency.py解读

一,工具简介 biolatency 跟踪块设备 I/O(磁盘 I/O),并记录 I/O 延迟(时间)的分布,通过 Ctrl-C 可以停止跟踪,并将其以直方图的形式打印出来。 它通过动态追踪blk_族函数(与块设备相关的内核函数)并记录函数的变化,从而收集块设备I/O的延迟信息。它记录I/O延迟的分…

酷体体育科技加入飞桨技术伙伴计划,共同打造“AI随身教练”体育分析新模式...

近日&#xff0c;陕西酷体体育科技有限公司正式加入飞桨技术伙伴计划&#xff0c;双方将共同努力在AI体育技术分析领域&#xff0c;创新打造“AI体育”新模式&#xff0c;助力体育训练、康复、人才选拔数智化转型。通过大模型技术赋能体育&#xff0c;持续挖掘AI技术在体育领域…

unbuntu mysql8.0新建用户及开启远程连接

MySQL更新到8.0以上版本后&#xff0c;在创建连接远程的用户的时候和之前5.x的版本有了很大的不同&#xff0c;不能使用原来同时创建用户和授权的命令。 以下是记录的MySQL8.0创建用户并授权的命令&#xff1a; 查看用户表&#xff1a; user mysql; select host,user,authen…