Zabbix-告警

news2024/12/29 9:43:54

基本概念

一、介绍

自定义的监控项默认不会自动报警

首页也不会提示错误

需要配置触发器与报警动作才可以自动报警

二、触发器

表达式,如内存不足300M,用户超过30个等

当触发条件发生后,会导致一个触发事件

触发事件会执行某个动作

三、动作

触发器的条件被触发后的行为

可以是发送邮件、也可以是重启某个服务等

告警设置

一、创建触发器

找到自定义模板

创建触发器

Expression表达式:触发异常的条件

二、设置邮件

创建Media

设置邮件服务器

配置邮件服务器参数

为用户设置收信邮箱

三、创建Action(行为)

定义当触发器被触发时,执行什么Action

配置Action(填写名称)

添加触发器条件

添加动作

四、验证告警配置

在zabbixserver上配置邮件服务

[root@zabbixserver ~]# yum -y install postfix mailx
[root@zabbixserver ~]# systemctl enable postfix --now 

在web1创建用户,使总用户数超过30

[root@web1 ~]# for user in user{1..10}
> do
> useradd $user
> done

在zabbix web页面中查看

查看动作日志 

在zabbixserver上查看邮件

[root@zabbixserver ~]# mail    # 查看邮件
Heirloom Mail version 12.5 7/5/10.  Type ? for help.
"/var/spool/mail/root": 5 messages 5 new
>N  1 hmy@test.cn           Tue Mar 26 09:15  21/927   "Problem: usernum_gt_30"
 N  2 hmy@test.cn           Tue Mar 26 09:18  21/927   "Problem: usernum_gt_30"
 N  3 hmy@test.cn           Tue Mar 26 09:19  21/927   "Problem: usernum_gt_30"
 N  4 hmy@test.cn           Tue Mar 26 09:20  21/927   "Problem: usernum_gt_30"
 N  5 hmy@test.cn           Tue Mar 26 09:21  21/927   "Problem: usernum_gt_30"
& 1    # 查看1号邮件
Message  1:
From hmy@test.cn  Tue Mar 26 09:15:33 2024
Return-Path: <hmy@test.cn>
X-Original-To: root@localhost.localdomain
Delivered-To: root@localhost.localdomain
From: <hmy@test.cn>
To: <root@localhost.localdomain>
Date: Tue, 26 Mar 2024 09:15:33 +0800
Subject: Problem: usernum_gt_30
Content-Type: text/plain; charset="UTF-8"
Status: R

Problem started at 09:15:31 on 2024.03.26
Problem name: usernum_gt_30
Host: web1
Severity: Warning
Operational data: 33
Original problem ID: 87
& q    # 输入q退出

自动发现

一、概述

1、自动发现

当zabbix需要监控的设备越来越多,手动添加监控设备越来越有挑战,此时,可以考虑使用自动发现功能

2、自动发现可以实现

发现主机、添加主机、添加主机到组、链接模板

3、自动发现流程

创建自动发现规则

创建Action动作(发现主机后自动执行什么动作)

通过动作,执行添加主机,链接模板到主机

二、自动发现规则

1、创建自动发现规则

2、填写规则

3、创建发现动作

4、验证

在web2上配置agent

[root@web2 ~]# vim /etc/zabbix/zabbix_agentd.conf 
Server=127.0.0.1,192.168.88.5
Hostname=web2
[root@web2 ~]# systemctl enable zabbix-agent.service --now

主被动监控

一、概述

主动和被动都是对被监控端主机而言的

默认zabbix采用的是被动监控

1、被动监控:

Server项Agent发起连接

2、主动监控:

gent项Server发起连接

3、区别:

Server不用每次需要数据都连接Agent,Agent会自己收集数据并处理数据,Server仅需要保存数据即可

二、配置web2为主动监控

修改配置文件,只使用主动监控

[root@web2 ~]# vim /etc/zabbix/zabbix_agentd.conf 
#Server=127.0.0.1,192.168.88.5
StartAgents=0
ServerActive=192.168.88.5
RefreshActiveChecks=120
[root@web2 ~]# systemctl restart zabbix-agent.service 
# 端口号消失
[root@web2 ~]# ss -ntulp | grep 10050

三、添加监控主机

在zabbix监控服务器,添加被监控的主机(主动模式)

监控nginx

stub_status模块

用于实时监控nginx的网络连接,这个模块是nginx官方提供的一个模块

[root@web1 ~]# yum -y install nginx
[root@web1 ~]# vim /etc/nginx/nginx.conf
        location / {
        }

        location /status {            # 添加3行
                stub_status on;
        }

        error_page 404 /404.html;
            location = /40x.html {
        }
[root@web1 ~]# systemctl enable nginx.service --now

# 访问监控页面
[root@zabbixserver ~]# curl http://192.168.88.100/status
Active connections: 1 
server accepts handled requests
 1 1 1 
Reading: 0 Writing: 1 Waiting: 0 
# Active connections:当前客户端与nginx之间的连接数。它等于下面Reading/Writing/Waiting之和
# accepts:自nginx启动之后,客户端访问的总量
# handled:自nginx启动之后,处理过的客户端连接总数,通常等于accepts的值
# requests:自nginx启动之后,处理过的客户端请求总数
# Reading:正在读取客户端的连接总数
# Writing:正在向客户端发送响应的连接总数
# Waiting:空闲连接

# 使用工具向服务器发起多个请求
[root@zabbixserver ~]# yum -y install httpd-tools
[root@zabbixserver ~]# ab -n1000 -c200 http://192.168.88.100/
[root@zabbixserver ~]# curl http://192.168.88.100/status
Active connections: 1 
server accepts handled requests
 1158 1158 1003 
Reading: 0 Writing: 1 Waiting: 0

编写脚本,用于获取各项数据

[root@web1 ~]# vim /usr/local/bin/nginx_status.sh
#!/bin/bash
case $1 in
active)
    curl -s http://192.168.88.100/status | awk '/Active/{print $NF}';;
waiting)
    curl -s http://192.168.88.100/status | awk '/Waiting/{print $NF}';;
accepts)
    curl -s http://192.168.88.100/status | awk 'NR==3{print $1}';;
esac

[root@web1 ~]# chmod +x /usr/local/bin/nginx_status.sh
[root@web1 ~]# nginx_status.sh active
1
[root@web1 ~]# nginx_status.sh accepts
1160
[root@web1 ~]# nginx_status.sh waiting
0

创建zabbix用到的key,获取各项数据

[root@web1 ~]# vim /etc/zabbix/zabbix_agentd.d/nginx_status.conf
UserParameter=nginx_status[*],/usr/local/bin/nginx_status.sh $1
[root@web1 ~]# systemctl restart zabbix-agent.service 
[root@web1 ~]# zabbix_get -s 127.0.0.1 -k nginx_status[active]
1
[root@web1 ~]# zabbix_get -s 127.0.0.1 -k nginx_status[accepts]
1165
[root@web1 ~]# zabbix_get -s 127.0.0.1 -k nginx_status[waiting]
0

添加监控项

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

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

相关文章

网络编程综合项目-多用户通信系统

文章目录 1.项目所用技术栈本项目使用了java基础&#xff0c;面向对象&#xff0c;集合&#xff0c;泛型&#xff0c;IO流&#xff0c;多线程&#xff0c;Tcp字节流编程的技术 2.通信系统整体分析主要思路&#xff08;自己理解&#xff09;1.如果不用多线程2.使用多线程3.对多线…

ssh 公私钥(github)

一、生成ssh公私钥 生成自定义名称的SSH公钥和私钥对&#xff0c;需要使用ssh-keygen命令&#xff0c;这是大多数Linux和Unix系统自带的标准工具。下面&#xff0c;简单展示如何使用ssh-keygen命令来生成具有自定义名称的SSH密钥对。 步骤 1: 打开终端 首先&#xff0c;打开我…

vue前端工程化

前言 本文介绍的是有关于vue方面的前端工程化实践&#xff0c;主要通过实践操作让开发人员更好的理解整个前端工程化的流程。 本文通过开发准备阶段、开发阶段和开发完成三个阶段开介绍vue前端工程化的整体过程。 准备阶段 准备阶段我将其分为&#xff1a;框架选择、规范制…

AI智能分析网关智慧食安监管系统方案

3.15晚会刚过不久&#xff0c;淀粉肠的“屈辱”终于得以洗清&#xff0c;但某些品牌奶茶、梅菜扣肉、预制菜等等&#xff0c;生产过程仍是触目惊心。如何提升食品安全管理水平&#xff0c;保障食品从生产到消费环节的质量和安全&#xff1f;TSINGSEE青犀智利用智能分析网关V4Ea…

mysql--事务四大特性与隔离级别

事务四大特性与隔离级别 mysql事务的概念事务的属性事务控制语句转账示例 并发事务引发的问题脏读脏读场景 不可重复读幻读幻读场景 事务的隔离级别读未提交读已提交可重复读&#xff08;MySQL默认&#xff09; 总结 mysql事务的概念 事务就是一组操作的集合&#xff0c;他是一…

x86的内存分段机制

8086 是 Intel 公司第一款 16 位处理器&#xff0c;诞生于 1978 年&#xff0c;所以说它很古老。 一.8086 的通用寄存器 8086 处理器内部共有 8 个 16 位的通用处理器&#xff0c;分别被命名为 AX、 BX、 CX、 DX、 SI、 DI、 BP、 SP。如下图所示。 “通用”的意思是…

幻兽帕鲁服务器多少钱?可真便宜呀

2024年全网最全的幻兽帕鲁服务器租用价格表&#xff0c;阿里云幻兽帕鲁游戏服务器26元1个月、腾讯云32元一个月、京东云26元一个月、华为云24元1个月&#xff0c;阿腾云atengyun.com整理最新幻兽帕鲁专用4核16G、8核16G、8核32G游戏服务器租用价格表大全&#xff1a; 阿里云幻…

8、鸿蒙学习-HAR

HAR&#xff08;Harmony Archive&#xff09;是静态共享包&#xff0c;可以包含代码、C库、资源和配置文件。通过HAR可以实现多个模块或多个工程共享ArkUI组件、资源等相关代码。HAR不同于HAP&#xff0c;不能独立安装运行在设备上。只能作为应用模块的依赖项被引用。 一、创建…

【案例·增】获取当前时间、日期(含,SQL中DATE数据类型)

问题描述&#xff1a; 需要使用当前时间、日期&#xff0c;可以使用 SQL 中的 CURDATE() 、NOW()、CURTIME()运算符 案例&#xff1a; INSERT INTO table_name(current_time, column_name2,...) VALUES (NOW(),, ...)规则(Date 相关函数)&#xff1a; 规则(Date数据类型)

初识C++之命名空间(namespace)

初识C之入门 命名空间(namespace) 文章目录 初识C之入门 命名空间(namespace)1.为什么要有命名空间2. 命名空间 namespace使用方法3. 作用域限定符(::&#xff09;和 命名空间(namespace)4. 命名空间的定义5. 命名空间的嵌套6. 命名空间的使用7. 总结 1.为什么要有命名空间 在C…

通过Caliper进行压力测试程序,且汇总压力测试问题解决

环境要求 第一步. 配置基本环境 部署Caliper的计算机需要有外网权限;操作系统版本需要满足以下要求:Ubuntu >= 16.04、CentOS >= 7或MacOS >= 10.14;部署Caliper的计算机需要安装有以下软件:python 2.7、make、g++(gcc-c++)、gcc及git。第二步. 安装NodeJS # …

Tensorflow2.0笔记 - 自定义Layer和Model

本笔记主要记录如何在tensorflow中实现自定的Layer和Model。详细内容请参考代码中的链接。 import time import tensorflow as tf from tensorflow import keras from tensorflow.keras import datasets, layers, optimizers, Sequential, metricstf.__version__ #关于自定义l…

软考 - 系统架构设计师 - 关系模型的完整性规则

前言 关系模型的完整性规则是一组用于确保关系数据库中数据的完整性和一致性的规则。这些规则定义了在关系数据库中如何存储、更新和查询数据&#xff0c;以保证数据的准确性和一致性。 详情 关系模型的完整性规则主要包括以下三类&#xff1a; 实体完整性规则 这是确保每个…

【Java程序设计】【C00373】基于(JavaWeb)Springboot的社区疫情返乡管控系统(有论文)

TOC 博主介绍&#xff1a;java高级开发&#xff0c;从事互联网行业六年&#xff0c;已经做了六年的毕业设计程序开发&#xff0c;开发过上千套毕业设计程序&#xff0c;博客中有上百套程序可供参考&#xff0c;欢迎共同交流学习。 项目简介 项目获取 &#x1f345;文末点击卡片…

计算机网络——26通用转发和SDN

通用转发和SDN 网络层功能&#xff1a; 转发&#xff1a; 对于从某个端口 到来的分组转发到合适的 输出端口路由&#xff1a; 决定分组从源端 到目标端的路径 网络层 传统路由器的功能 每个路由器(Per Route)的控制平面 &#xff08;传统&#xff09; 每个路由器上都有实…

线程创建方式、构造方法和线程属性

欢迎各位&#xff01;&#xff01;&#xff01;推荐PC端观看 文章重点&#xff1a;学会五种线程的创造方式 目录 1.开启线程的五种方式 2.线程的构造方法 3.线程的属性及获取方法 1.开启线程的五种方式 创造线程的基本两步&#xff1a;&#xff08;1&#xff09;使用run方法…

C++取经之路(其二)——含数重载,引用。

含数重载: 函数重载是指&#xff1a;在c中&#xff0c;在同一作用域&#xff0c;函数名相同&#xff0c;形参列表不相同(参数个数&#xff0c;或类型&#xff0c;或顺序)不同&#xff0c;C语言不支持。 举几个例子&#xff1a; 1.参数类型不同 int Add(int left, int right)…

白盒测试、接口测试、自动化测试详解

&#x1f345; 视频学习&#xff1a;文末有免费的配套视频可观看 &#x1f345; 点击文末小卡片 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 一、什么是白盒测试 白盒测试是一种测试策略&#xff0c;这种策略允许我们检查程序的内部结构&…

NEO 学习之 MLE(最大似然估计)

文章目录 简单题目MLE 在不同的分布的运用正态分布指数分布均匀分布泊松分布 简单题目 此题问的是求丢色子&#xff0c;求得到偶数点的概率 求两次都得到硬币的背面的概率 拿球问题 符合的点数是 1,5,6 MLE 在不同的分布的运用 正态分布 对于给定的数据集 {1, 3, 4, 6, 7}&am…

linux:线程同步

个人主页 &#xff1a; 个人主页 个人专栏 &#xff1a; 《数据结构》 《C语言》《C》《Linux》 文章目录 前言线程同步条件变量接口简单示例pthread_cond_wait为什么要有mutex伪唤醒问题的解决 (if->while) 总结 前言 本文作为我对于线程同步知识总结 线程同步 同步&…