grafana对接zabbix数据展示
目录
1、初始化、安装grafana
2、浏览器访问
3、安装zabbix
4、zabbix数据对接grafana
5、如何导入模板?
① 设置键值
② 在zabbix web端完成自定义监控项
③ garafana里添加nginx上面的的三个监控项
6、如何自定义监控项?
以下实验沿用上一篇zabbix部署,再添加一台虚拟机192.168.170.6
1、初始化、安装grafana
初始化操作
systemctl disable --now firewalld
setenforce 0
vim /etc/selinux/config
SELINUX=disabled
cd /opt
#上传软件包
yum localinstall -y grafana-enterprise-9.4.7-1.x86_64.rpm #安装
systemctl enable --now grafana-server.service #开启服务
netstat -lntp | grep 3000 #查询是否已经开启服务
2、浏览器访问
浏览器输入http://192.168.170.6:3000
账号/密码:admin / admin
3、安装zabbix
【设置】-【plugins】-搜索zabbix-【install】-刷新页面 - 点击开启【enable】
4、zabbix数据对接grafana
调试模板
5、如何导入模板?
https://grafana.com/dashboards 可登录该网站进行
创建监控项,举例监控cpu总数
total cpus
左侧【配置】点击【模板】找到【Linux by Zabbix agent】进入;点击上方【监控项】找到【Linux: Number of CPUs】进入;点击上方【预处理】,点击移除然后更新。
左侧【配置】点击【主机】点击agent01服务器后的监控项找到【Linux by Zabbix agent: Linux: Number of CPUs】点击测试,立即执行
首先明确命令,统计cpu数量的命令
逐一修改
如何用zabbix监控应用程序的相关指标?比如nginx并发量、连接数
确保nginx开启了状态统计模块--with-http_stub_status
nginx -V
修改配置文件
vim /etc/nginx/conf.d/default.conf
添加一个location
location /nginx_state {stub_status on;access_log off;
}
systemctl reload nginx可使用此命令查看并发量信息
curl -s http://192.168.170.200/nginx_state
创建脚本
cd /etc/zabbix/zabbix_agent2.d/
vim nginx_status.sh
=======================================================================
#!/bin/bash
IP=192.168.170.200
PORT=80
STUB_URI=nginx_stateactive() {curl -s http://$IP:$PORT/$STUB_URI | awk 'NR==1 {print $3}'
}accepts() {curl -s http://$IP:$PORT/$STUB_URI | awk 'NR==3 {print $1}'
}
handled() {curl -s http://$IP:$PORT/$STUB_URI | awk 'NR==3 {print $2}'
}requests() {curl -s http://$IP:$PORT/$STUB_URI | awk 'NR==3 {print $3}'
}Reading() {curl -s http://$IP:$PORT/$STUB_URI | awk 'NR==4 {print $2}'
}Writing() {curl -s http://$IP:$PORT/$STUB_URI | awk 'NR==4 {print $4}'
}Waiting() {curl -s http://$IP:$PORT/$STUB_URI | awk 'NR==4 {print $6}'
}process() {pidof nginx | wc -w
}case $1 in
active)active;;
accepts)accepts;;
handled)handled;;
requests)requests;;
Reading)Reading;;
Writing)Writing;;
Waiting)Waiting;;
process)process;;
*)echo "$Usage: $0 {active|accepts|handled|requests|Reading|Writing|Waiting|process}"exit 1
esac
exit 0
=======================================================================
chmod +x nginx_status.sh
① 设置键值
vim nginx_state.conf
UserParameter=nginx.status[*],/etc/zabbix/zabbix_agent2.d/nginx_status.sh $1
#键值中括号星号表示执行键后跟的参数会传给$1
systemctl restart zabbix-agent2.service
测试命令:
zabbix_get -s '127.0.0.1' -p 10050 -k 'nginx.status[active]'
zabbix_get -s '127.0.0.1' -p 10050 -k 'nginx.status[requests]'
② 在zabbix web端完成自定义监控项
【配置】点击【模板】点击【创建模板】
添加三个监控项:【名称】搜索【Template Nginx Status】创建的模板;点击上方【监控项】,点击创建【监控项】
点击上方【触发器】点击【创建触发器】
主机关联监控模板:左侧【配置】点击 【主机】点击【Zabbix server】
查看:左侧点击【监测】点击【主机】点击【Zabbix server】点击最新数据,找到添加的三个模板
主机关联监控模板:左侧【配置】点击 【主机】点击【Zabbix server】
把监控模板用起来
③ garafana里添加nginx上面的的三个监控项
6、如何自定义监控项?
① 明确获取指标数据的方法
② 目录中准备配置文件:UserParameter=...
③ 到zabbix中添加自定义监控模块、添加监控项,监控项中调用键值,保存
④ 找到监控主机关联监控模版,等待采集数据
相关文章:

grafana对接zabbix数据展示
目录 1、初始化、安装grafana 2、浏览器访问 3、安装zabbix 4、zabbix数据对接grafana 5、如何导入模板? ① 设置键值 ② 在zabbix web端完成自定义监控项 ③ garafana里添加nginx上面的的三个监控项 6、如何自定义监控项? 以下实验沿用上一篇z…...

C++ 学习补充 1:短链算法
短链算法 短链算法: 将长链接 转化为 一个短key 之所以不是短url 是因为 ,url 短链不区分大小写,可用空间比较小。 短链算法通常用于将一个长网址转换成一个较短的字符串,以便于分享和存储。这种算法通常需要满足以下条件&#…...

硅纪元视角 | 语音克隆突破:微软VALL-E 2,Deepfake新纪元!
在数字化浪潮的推动下,人工智能(AI)正成为塑造未来的关键力量。硅纪元视角栏目紧跟AI科技的最新发展,捕捉行业动态;提供深入的新闻解读,助您洞悉技术背后的逻辑;汇聚行业专家的见解,…...

没有51基础,能不能学好STM32?
在开始前刚好我有一些资料,是我根据网友给的问题精心整理了一份「STM32的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!! 我们通常准备攻读一本大部…...

Web开发:VUE3小白开发入门基础笔记
一、基本语法 1.click 后端路由:api/GetDataList 返回值:Value 前端要做的事: ①拿到Value值,传到a标签 ②a标签有一个按钮,每点击一下,Value的值加一。 前端需要用click语法 【代码】 <template>…...

技术周总结 2024.07.15~07.21周日(Spark性能优化)
文章目录 一、07.19 周五1.1)问题01: spark性能优化1.2)问题02: spark是怎么应用在机器学习领域的1.3)问题03:spark自带工具有哪些?1.4)问题04: spark日志的知识点有哪些…...

提高性能的常见技术
1.数据库层面: 读写分离,对于大部分业务来说,读取操作要大于写入,同一个库,既读又写的话,负载会比较重,拆分为读库和写入库,可以降低数据库的负载,分时或延迟将写入的数…...

LeetCode206 反转链表
前言 题目: 206. 反转链表 文档: 代码随想录——反转链表 编程语言: C 解题状态: 有了思路以后没敢尝试 思路 需要注意的是创建指针不会申请额外的内存空间。 代码 方法一: 双指针法/迭代 我的理解是创建了三个指针…...

nginx通过nginx_upstream_check_module实现后端健康检查
1、简介说明 nginx是常用的反向代理和负载均衡服务,具有强大并发能力、稳定性、丰富的功能集、低资源的消耗。 nginx自身是没有针对后端节点健康检查的,但是可以通过默认自带的ngx_http_proxy_module 模块和ngx_http_upstream_module模块中的相关指令来完…...

FastGPT 知识库搜索测试功能解析(二)
目录 一、代码解析 1.1 searchTest.ts 1.2 controller.ts 本文接上一篇文章FastGPT 知识库搜索测试功能解析 对具体代码进行解析。 一、代码解析 FastGPT 知识库的搜索测试功能主要涉及两个文件,分别是 searchTest.ts 和 controller.ts 文件,下面分别进行介绍。 1.1 se…...

双向链表<数据结构 C版>
目录 关于链表的分类 双向链表结构体 初始化 尾插 头插 打印 判断是否为空 尾删 头删 查找 指定位置之后的插入 指定位置的删除 销毁 关于链表的分类 根据链表的三大特性,单向or双向、带头or不带头、循环or不循环,可将链表分为2*2*2…...

react18+
主要是围绕函数式组件讲,18主要用就是函数式组件,学习前先熟悉下原生js的基本使用,主要是事件 1、UI操作 1.1、书写jsx标签语言 基本写法和原生如同一则,只是放在一个方法里面返回而已,我们称这样的写法为函数式组件…...

rk3568 OpenHarmony4.1 Launcher定制开发—桌面壁纸替换
Launcher 作为系统人机交互的首要入口,提供应用图标的显示、点击启动、卸载应用,并提供桌面布局设置以及最近任务管理等功能。本文将介绍如何使用Deveco Studio进行单独launcher定制开发、然后编译并下载到开发板,以通过Launcher修改桌面背景…...

MySQL:送分or送命 varchar(30) 与 int(10)
摘要: VARCHAR(30) 和 INT(10) 在MySQL中代表两种不同类型的字段,它们之间的主要区别在于它们存储的数据类型、存储方式以及显示宽度的含义。 正文: INT(10) 在MySQL中,当你看到INT(10)这样的数据类型定义时,可能会…...

【odoo17】后端py方法触发右上角提示组件
概要 在前面文章中,有介绍过前端触发的通知服务。 【odoo】右上角的提示(通知服务) 此文章则介绍后端触发方法。 内容 直接上代码:但是前提一定是按钮触发!!!!! def bu…...

1775D - Friendly Spiders
题目链接:Friendly Spiders 首先我们可以考虑暴力做法,那就是每两个蜘蛛判断一下gcd,如果不等于1,那就连条边,这样的话时间复杂度是O(n^2),显然超时,因此我们可以采用类似…...

【python】OpenCV—Point Polygon Test
文章目录 1、完整代码2、涉及到的库cv2.pointPolygonTestcv2.minMaxLoc 1、完整代码 from __future__ import print_function from __future__ import division import cv2 as cv import numpy as np # Create an image r 100 src np.zeros((4*r, 4*r), dtypenp.uint8) # 创…...

6 Go语言的常量、枚举、作用域
本专栏将从基础开始,循序渐进,由浅入深讲解Go语言,希望大家都能够从中有所收获,也请大家多多支持。 查看相关资料与知识库 专栏地址:Go专栏 如果文章知识点有错误的地方,请指正!大家一起学习,…...

第十一章 数据结构
第十一章 数据结构 11.1 数组 数组是元素的顺序集合,通常这些元素具有相同的数据类型 索引表示元素在数组中的顺序号,顺序号从数组开始处计数 数组元素通过索引被独立给出了地址,数组整体上有一个名称,但每个元素利用数组的的…...

LeetCode704 二分查找
前言 题目: 704.二分查找 文档: 代码随想录——二分查找 编程语言: C 解题状态: 解答错误,变量定义位置错误。 思路 有序数组的查找,最直接的思路应该就是二分查找。但是在查找的过程中要考虑到区间的边界…...

[言简意赅] Matlab生成FPGA端rom初始化文件.coe
🎎Matlab生成FPGA端rom初始化文件.coe 本文主打言简意赅。 函数源码 function gencoeInitialROM(width, depth, signal, filepath)% gencoeInitialROM - 生成 Xilinx ROM 初始化格式的 COE 文件%% 输入参数:% width - ROM 数据位宽% depth - ROM 数据深度% s…...

【QAC】分布式部署下其他机器如何连接RLM
1、 文档目标 解决分布式部署下其他机器如何连接RLMLicense管理器。 2、 问题场景 分布式部署下QAC要在其他机器上单独运行扫描,必须先连接RLMLicense管理器,如何连接? 3、软硬件环境 1、软件版本:HelixQAC23.04 2、机器环境…...

从等保测评看行业安全趋势:洞察与预测
在当今数字化时代,网络安全已成为各行各业的头等大事。等保测评(等级保护测评),作为国家对信息系统安全的重要管理手段,不仅关乎企业的合规性,更是行业安全水平的重要衡量标准。本文将从等保测评的视角出发…...

HTTP模块(二)
HTTP 设置 HTTP 响应报文 HTTP报文常见属性: const http require(http);const server http.createServer((request, response) > {// 设置请求状态码 2xx 4xx 5xxresponse.statusCode 200;// 设置请求描述 了解即可response.statusMessage hello// 指定响…...

引入缓存带来的问题以及解决方案
目录 前言 问题与解决方案 缓存击穿 缓存穿透 缓存雪崩 缓存一致性 前言 在提升接口性能的方案中,毫无疑问,使用缓存是最有效果的,但同时也会带来新的问题。 缓存击穿缓存穿透缓存雪崩缓存一致性 以上问题都是引入缓存需要考虑的&am…...

力扣39题:组合总和的 Java 实现
引言 力扣(LeetCode)是一个在线编程平台,提供了大量的编程题目供开发者练习。第39题“组合总和”是一个经典的回溯算法问题,要求找出所有可能的组合,使得组合中的数字之和等于给定的目标值。本文将介绍如何使用 Java …...

使用el-table实现自动滚动
文章目录 概要技术实现完整代码 概要 在前端开发大屏的时候,我们会用到表格数据展示,有时候为了使用户体验更加好,会增加表格自动滚动。下边我将以示例代码,用element UI的el-table来讲一下。 技术实现 1 .增加dom监听…...

Angular由一个bug说起之八:实践中遇到的一个数据颗粒度的问题
互联网产品离不开数据处理,数据处理有一些基本的原则包括:准确性、完整性、一致性、保密性、及时性。 准确性:是数据处理的首要目标,确保数据的真实性和可靠性。准确的数据是进行分析和决策的基础,因此…...

day13(DNS域名解析)
今天内容: 1、逆向解析 2、多域名 3、时间服务器 4、主从配置 1.设置逆向解析 (1)永久配置我们自己的DNS服务器 (2)关闭NetworkManager服务 NetworkManager 的自动管理功能可能会干扰定制化的网络配置。 在需要切换…...

uboot的mmc partconf命令
文章目录 命令格式参数解释具体命令解释总结 mmc partconf 是一个用于配置 MMC (MultiMediaCard) 分区的 U-Boot 命令。具体来说,这个命令允许你设置或读取 MMC 卡的分区配置参数。让我们详细解释一下 mmc partconf 0 0 1 0 命令的含义。 命令格式 mmc partconf &…...