当前位置: 首页 > article >正文

Zabbix实现故障自愈

一、简介

Zabbix agent 可以运行被动检查和主动检查。

在被动检查模式中 agent 应答数据请求。Zabbix server(或 proxy)询求数据,例如 CPU load,然后 Zabbix agent 返还结果。

主动检查处理过程将相对复杂。Agent 必须首先从 Zabbix sever 索取监控项列表以进行独立处理,然后会定期发送采集到的新值给 Zabbix server。

是否执行被动或主动检查是通过选择相应的监控项类型来配置的。 Zabbix agent 处理“Zabbix agent”或“Zabbix agent(active)”类型的监控项。

主动模式与被动模式:

这二种模式在使用过程中有所不同,各有优势,主要有以下区别

模式Server 压力远程命令日志监控
主动不支持支持
被动支持不支持

鉴于以上不同,根据实际需求,选择对应模式。

二、监控模式配置

配置被动模式,只需要配置以下几个参数即可:

Server=10.2.58.64

Server 配置为 Zabbix Server 或 Zabbix proxy 的地址,也可以配置域名/ip,如需配置多个地址,多地址之间用英文逗号隔开即可,如:192.168.1.50,10.11.3.25。这里可以理解为 ACL 功能,即允许那些 Zabbix Server 及 Zabbix Proxy 访问 Zabbix Agent,因此可以配置网段和配置成所有 IP,如:192.168.1.0/24 或 0.0.0.0/0,纯被动模式下只需要配置 Server 即可 Hostname 不配置。 配置好之后重启即可生效。

远程命令:

与主动模式不同,被动模式支持 zabbix agent 执行远程命令。在出现告警后,发送邮件的同时,可以配置远程命令实现故障“自愈”,如重启服务等

需在Zabbix Agent 配置文件中开启:

AllowKey=system.run[*]
EnableRemoteCommands=1
LogRemoteCommands=1

EnableRemoteCommands 配置开启远程命令 LogRemoteCommands 在日志中记录远程命令 配置之后重启 Zabbix Agent即可生效。

由于 zabbix 执行命令默认是以zabbix系统用户执行,因此需要在操作系统上为 zabbix 用户配置 sudo。

vi /etc/sudoes
zabbix ALL=NOPASSWD: ALL

配置为 ALL,这里也可以配置成具体的命令

zabbix ALL=NOPASSWD: /etc/init.d/nginx restart

三、Server配置

配置一个 Nginx 自动恢复,使用 zabbix agent 远程命令实现 nginx 停止自动启动。 配置一个监控项,监控 Nginx 的 80 端口。并配置一个Trigger 端口不存在时告警。再配置一个 Action动作,条件为 Trigger 名称,端口 down 之后,执行脚本重启 Nginx。然后为 Action 配置 Operations,添加一个远程执行命令。为配置命令和需要执行的主机即可。

注:被动模式远程命令,是以 zabbix 用户执行,注意配置 sudo 及权限命令后可跟参数,参数可以使用 zabbix 的内置宏。AllowKey中也可限制运行执行的命令也就是所谓命令权限的黑白名单。

模式示例
模式描述匹配不匹配
*匹配所有可能的带或不带参数的键。任何
vfs.file.contents匹配不带参数的vfs.file.contentsvfs.file.contentsvfs.file.contents[/etc/passwd]
vfs.file.contents[]匹配带有空参数的vfs.file.contentsvfs.file.contents[]vfs.file.contents
vfs.file.contents[*]匹配 vfs.file.contents 和任何参数;不匹配没有方括号的 vfs.file.contentsvfs.file.contents[]
vfs.file.contents[/path/to/file]
vfs.file.contents
vfs.file.contents[/etc/passwd,*]匹配 vfs.file.contents 与第一个参数匹配 /etc/passwd 和所有其他参数具有任何值(也可以为空)。vfs .file.contents[/etc/passwd,]
vfs.file.contents[/etc/passwd,utf8]
vfs.file.contents[/etc/passwd]
vfs. file.contents[/var/log/zabbix_server.log]
vfs.file.contents[]
vfs.file.contents[*passwd*]匹配 vfs.file.contents,第一个参数匹配 *passwd* 而没有其他参数。vfs.file.contents[/etc /passwd]vfs.file.contents[/etc/passwd,]
vfs.file.contents[/etc/passwd, utf8]
vfs.file.contents[*passwd*,*]匹配 vfs.file.contents,只有第一个参数匹配 *passwd* 和所有后续参数具有任何值(也可以为空)。vfs.file.contents[/etc/passwd,]
vfs.file.contents[/etc/passwd, utf8]
vfs.file.contents[/etc/passwd]<br >vfs.file.contents[/tmp/test]
vfs.file.contents[/var/log/zabbix_server.log,*,abc]匹配 vfs.file.contents 与第一个参数匹配 /var/log/zabbix_server.log , 第三个参数匹配 'abc' 和任何(也可以为空)第二个参数。vfs.file.contents[/var/log/zabbix_server.log,,abc]
vfs.file.contents[/ var/log/zabbix_server.log,utf8,abc]
vfs.file.contents[/var/log/zabbix_server.log,,abc,def]
vfs.file.contents[/etc/passwd,utf8]匹配 vfs.file.contents,第一个参数匹配 /etc/passwd,第二个参数匹配 'utf8',没有其他参数。vfs. file.contents[/etc/passwd,utf8]vfs.file.contents[/etc/passwd,]
vfs.file.contents[/etc/passwd,utf16]
vfs.file.*匹配任何以 vfs.file. 开头且不带任何参数的键。vfs.file.contents
vfs.file.size
vfs.file.contents[]< br>vfs.file.size[/var/log/zabbix_server.log]
vfs.file.*[*]匹配任何以 vfs.file. 开头的键和任何参数。vfs.file.size.bytes[]
vfs.file.大小[/var/log/zabbix_server.log, utf8]
vfs.file.size.bytes
vfs.*.contents匹配任何以 vfs. 开头并以 .contents 结尾且不带任何参数的键。vfs.mount.point.file.contents
vfs..contents
vfs.contents

博主可能不能及时回答疑问,如技术问题欢迎加入交流。

博主具有丰富的模板资源和开发能力及项目落地管理经验分享欢迎加入交流

微信号:king_songax


http://www.kler.cn/news/134123.html

相关文章:

  • rabbitmq默认交换机锁绑定的routingkey-待研究
  • ICASSP2023年SPGC多语言AD检测的论文总结
  • 算法设计与分析复习--贪心(二)
  • 开源更安全? yum源配置/rpm 什么是SSH?
  • yolov5模型代码怎么修改
  • Cesium+Vue:地形开挖
  • Ps:变换
  • 应用协议安全:Rsync-common 未授权访问.
  • Vue3+Vite实现工程化,事件绑定以及修饰符
  • C# GC机制
  • aspose.cells java合并多个excel
  • SpringCloud微服务注册中心:Nacos介绍,微服务注册,Ribbon通信,Ribbon负载均衡,Nacos配置管理详细介绍
  • 【算法】树形DP③ 监控二叉树 ⭐(二叉树染色二叉树灯饰)!
  • 设计模式-行为型模式-策略模式
  • Spring Cloud学习(十)【Elasticsearch搜索功能 分布式搜索引擎02】
  • 目标检测YOLO系列从入门到精通技术详解100篇-【目标检测】三维重建
  • useEffect 和useLayoutEffect 的区别
  • CSS 文本属性篇
  • VMware——WindowServer2012R2环境mysql5.7.14解压版安装主从复制(图解版)
  • app使用
  • Stable Diffusion - StableDiffusion WebUI 软件升级与扩展兼容
  • 李宏毅2023机器学习作业HW05解析和代码分享
  • install YAPI MongoDB 备份mongo 安装yapi插件cross-request 笔记
  • 建立跨层全栈的区块链安全保障系统-应用层,系统层,设施层
  • 在Windows系统中查找GitBash安装位置
  • Android——Gradle插件项目根目录settings.gradle和build.gradle
  • 第7章 模式匹配与正则表达式
  • 聊聊logback的EvaluatorFilter
  • 计算机硬件的基本组成
  • K-Means聚类