docker-compose部署zabbix+grafana
1.引言
1.1目的
zabbix+grafana实现图形化监控
2.部署环境
| 服务器ip | 服务 | 版本 |
|---|---|---|
| 192.168.5.137 | zabbix-server | 6.0.21 |
| 192.168.5.137 | grafana | 10.2.2 |
| 192.168.5.152 | zabbix-client | 6.0.21 |
3.部署zabbix-server
3.1 创建zabbix目录
mkdir zabbix
3.2 编写docker-compose文件
cd zabbixvim docker-compose.yaml
version: '3'
services:mysql:image: mysql:8.0container_name: mysqlvolumes:- ./mysql/data:/var/lib/mysql- ./mysql/conf:/etc/mysql/conf.d- ./mysql/logs:/var/log/mysql- /etc/localtime:/etc/localtimerestart: alwaysprivileged: trueenvironment:- MYSQL_ROOT_PASSWORD=myrootpass- MYSQL_DATABASE=zabbix- MYSQL_USER=zabbix- MYSQL_PASSWORD=mypass- TZ=Asia/Shanghai- LANG=en_US.UTF-8expose:- "3306"networks:zabbix-net:command: --character-set-server=utf8 --collation-server=utf8_binzabbix-gateway:image: zabbix/zabbix-java-gateway:6.0-centos-latestcontainer_name: zabbix-gatewayvolumes:- /etc/localtime:/etc/localtimerestart: alwaysprivileged: trueports:- "10052:10052"networks:zabbix-net:zabbix-snmptraps:image: zabbix/zabbix-snmptraps:6.0-centos-latestcontainer_name: zabbix-snmptrapsvolumes:- /etc/localtime:/etc/localtime- ./snmptraps:/var/lib/zabbix/snmptraps- ./mibs:/var/lib/zabbix/mibsrestart: alwaysprivileged: trueports:- "1162:1162/udp"networks:zabbix-net:zabbix-server:image: zabbix/zabbix-server-mysql:6.0-centos-latest
container_name: zabbix-servervolumes:- /etc/localtime:/etc/localtime- ./snmptraps:/var/lib/zabbix/snmptraps- ./mibs:/var/lib/zabbix/mibs- ./alertscripts:/usr/lib/zabbix/alertscripts- ./externalscripts:/usr/lib/zabbix/externalscriptsrestart: alwaysprivileged: trueenvironment:- ZBX_LISTENPORT=10051- DB_SERVER_HOST=mysql- DB_SERVER_PORT=3306- MYSQL_DATABASE=zabbix- MYSQL_USER=zabbix- MYSQL_PASSWORD=mypass- MYSQL_ROOT_PASSWORD=myrootpass- ZBX_CACHESIZE=1G- ZBX_HISTORYCACHESIZE=512M- ZBX_HISTORYINDEXCACHESIZE=16M- ZBX_TRENDCACHESIZE=256M- ZBX_VALUECACHESIZE=256M- ZBX_STARTPINGERS=64- ZBX_IPMIPOLLERS=1- ZBX_ENABLE_SNMP_TRAPS=true- ZBX_STARTTRAPPERS=1- ZBX_JAVAGATEWAY_ENABLE=true- ZBX_JAVAGATEWAY=zabbix-gateway- ZBX_STARTJAVAPOLLERS=1ports:- "10051:10051"networks:zabbix-net:links:- mysql- zabbix-gatewayzabbix-web:image: zabbix/zabbix-web-nginx-mysql:6.0-centos-latestcontainer_name: zabbix-webvolumes:- ./font/simfang.ttf:/usr/share/zabbix/assets/fonts/DejaVuSans.ttf- /etc/localtime:/etc/localtimerestart: alwaysprivileged: trueenvironment:- ZBX_SERVER_NAME=Zabbix 6.0- ZBX_SERVER_HOST=zabbix-server- ZBX_SERVER_PORT=10051- DB_SERVER_HOST=mysql- DB_SERVER_PORT=3306- MYSQL_DATABASE=zabbix- MYSQL_USER=zabbix- MYSQL_PASSWORD=mypass- MYSQL_ROOT_PASSWORD=myrootpass- PHP_TZ=Asia/Shanghaiports:- "80:8080"networks:zabbix-net:links:- mysql- zabbix-server
networks:zabbix-net:driver: bridgeipam:config:- subnet: 10.10.10.0/24gateway: 10.10.10.1
3.3 启动zabbix容器
docker-compose -f docker-compose.yaml up –d
3.4 查看zabbix容器
docker ps

3.5 访问zabbix的web页面
url: http://192.168.5.137:80

4.部署grafana
4.1创建grafana目录
mkdir grafana
4.2 编写grafana.yaml文件
cd grafanavim grafana.yaml
version: '3.9'
services:grafana:image: grafana/grafanacontainer_name: grafanaports:- "3000:3000"environment:- TZ=Asia/Shanghainetworks:- grafanavolumes:- ./grafana:/var/lib/grafana
networks:grafana:
driver: bridge
4.3启动grafana容器
docker-compose -f grafana.yaml up –d

4.4 安装grafana的zabbix数据源
进入grafana容器
docker exec -it grafana bash安装zabbix数据源
grafana cli plugins install alexanderzobnin-zabbix-app查看是否安装成功
grafana cli plugins ls重启grafana容器
docker restart grafana
4.5 访问grafana的web页面
url:http://192.168.5.137:3000

5.部署zabbix-client
5.1 创建zabbix目录
mkdir zabbix
5.2 编写zabbix.yaml文件
cd zabbixvim zabbix.yaml
version: '3'
services:zabbix-agent:image: zabbix/zabbix-agent:latestenvironment:- ZBX_SERVER_HOST=192.168.5.137- ZBX_HOSTNAME=testvolumes:- ./agentd/zabbix_agentd.conf:/etc/zabbix/zabbix_agentd.confports:- "10050:10050"
5.3 启动zabbix客户端
docker-compose -f zabbix.yaml up –d

6.添加zabbix监控
6.1 添加zabbix客户端ip

6.2 监控zabbix客户端CPU

6.3添加cpu触发器

6.4 添加图形化界面

6.5 查看监控到的数据

7.配置grafana
7.1 添加zabbix插件


7.2搜索添加zabbix数据源


7.3 添加zabbix服务端信息



7.4 开启zabbix模板

7.5 添加zabbix监控数据





至此zabbix+grafana部署完成。
相关文章:
docker-compose部署zabbix+grafana
1.引言 1.1目的 zabbixgrafana实现图形化监控 2.部署环境 服务器ip服务版本192.168.5.137zabbix-server6.0.21192.168.5.137grafana10.2.2192.168.5.152zabbix-client6.0.21 3.部署zabbix-server 3.1 创建zabbix目录 mkdir zabbix3.2 编写docker-compose文件 cd zabbix…...
ios 逆向分分析,某业帮逆向算法(二)
接上讲 上次hook 发现自己的数据有点问题。才发现是自己的编辑器识别出问题了。 上篇sub_1029B6898函数hook数据如下: [iOS Device::作业帮 ]-> arg2: 0 1 2 3 4 5 6 7 8 9 A B C D E F 0123456789ABCDEF 00000000 37 32 65 64 38 31 32 38…...
openCv颜色矩
颜色矩(Color Moments)是一种常用的图像特征描述方法,用于表示图像中颜色的分布和统计特征。它是基于图像的颜色直方图而计算得到的。 颜色矩通常包括三个维度:平均值、方差和偏度。具体来说: 平均值(Mean…...
〖大前端 - 基础入门三大核心之JS篇㊹〗- DOM事件委托
说明:该文属于 大前端全栈架构白宝书专栏,目前阶段免费,如需要项目实战或者是体系化资源,文末名片加V!作者:不渴望力量的哈士奇(哈哥),十余年工作经验, 从事过全栈研发、产品经理等工作…...
正是阶段高等数学复习--函数极限的计算
之前在预备阶段中函数极限的解决方式分三步,第一步观察形式并确定用什么方式来解决,第二步化简,化简方式一共有7种,分别是最重要的三种(等价替换、拆分极限存在的项、计算非零因子)以及次重要的4种…...
Linux-usb触摸板去除鼠标箭头
usb触摸板会同时加载hid-generic.c和hid-multitouch.c驱动 [ 213.602561] usb 4-1: new full-speed USB device number 2 using ohci-platform [ 213.834953] usb 4-1: New USB device found, idVendor6615, idProduct108c, bcdDevice 1.30 [ 213.835048] usb 4-1: New USB…...
【微信小程序】英文字母不换行问题 flex布局字符超出宽度折行问题:设置了word-break: break-all;和flex: 1;冲突flex不生效问题
flex布局中英文字符超出宽度不会自动折行的问题,但是设置了word-break: break-all;前面设置的flex: 1;就不生效了 1.英文字母不换行问题 .view_text {word-break: break-all; }如果使用flex仅仅设置word-break: break-all;是会影…...
python--自动化办公(Word)
python自动化办公之—Word python-docx库 1、安装python-docx库 pip install python-docx2、基本语法 1、打开文档 document Document() 2、加入标题 document.add_heading(总标题,0) document.add_heading(⼀级标题,1) document.add_heading(⼆级标题,2) 3、添加文本 para…...
sourceTree的下载和安装
sourceTree的下载和安装 一、概述 SourceTree 是一款免费的 Git 和 Hg 客户端管理工具,支持 Git 项目的创建、克隆、提交、push、pull 和合并等操作。它拥有一个精美简洁的界面,大大简化了开发者与代码库之间的 Git 操作方式,这对于不熟悉 …...
解决:ModuleNotFoundError: No module named ‘PyQt5‘
解决:ModuleNotFoundError: No module named ‘PyQt5’ 文章目录 解决:ModuleNotFoundError: No module named PyQt5背景报错问题报错翻译报错位置代码报错原因解决方法安装PyQt5在PyCharm中配置PyQt5对于新项目对于已有项目 今天的分享就到此结束了 背景…...
极客时间 - 如何成为学习高手【文章笔记 + 思考总结】
如何成为学习高手【文章笔记 思考总结】 高度自律 高度自律 5分钟起步法。 稍微走在计划前面。 替代拖延法。 自律:从不自律的念头中,约束自己。有变弱倾向时进行对抗。 在一种痛苦和另一种痛苦之间做选择,选择那个有意义的痛苦。 在某些固…...
前端笔记(二):CSS 选择器与特性
CSS(层叠样式表)是一种样式表语言,用于描述HTML或XML文档的呈现方式。它定义了如何在屏幕、纸张或其他媒体上显示文档的样式、布局和外观。 里面的代码由 选择器 { } 组成 体验 CSS CSS 可以让我们界面变得更加美观,这是 CSS 的…...
【每日一题】1423. 可获得的最大点数-2023.12.3
题目: 1423. 可获得的最大点数 几张卡牌 排成一行,每张卡牌都有一个对应的点数。点数由整数数组 cardPoints 给出。 每次行动,你可以从行的开头或者末尾拿一张卡牌,最终你必须正好拿 k 张卡牌。 你的点数就是你拿到手中的所有…...
VSCode修改C++版本
新下载了一下VSCode,想使用C17的特性std::optional,但是显示有错误,想想可能是C 版本的问题,查了一下资料,按下面的博客操作,果然解决了。 vscode设置c 版本...
31-WEB漏洞-文件操作之文件包含漏洞全解
31-WEB漏洞-文件操作之文件包含漏洞全解 一、本地包含1.1、无限制包含漏洞文件1.2、有限制包含漏洞文件1.2.1、绕过方法1.2.1.1、%00截断1.2.1.2、长度截断 二、远程包含2.1、无限制包含漏洞文件2.2、有限制包含漏洞文件 三、各种协议流提交流3.1、各协议的利用条件和方法3.1.1…...
预约系统源码解析:打造智能定制化预约服务的技术奇迹
在当今数字化时代,预约系统的重要性日益凸显,而预约系统源码的开放将为各行业带来更加灵活、智能的预约解决方案。本文将深入探讨预约系统源码的技术内幕,为开发者提供实用的代码示例,助力打造智能定制化的预约服务。 技术栈概览…...
关于Maxscript你了解多少?
MAXScript是Autodesk 3dMax的内置脚本语言。MAXScript为3dMax用户提供了以下功能: 编写程序使用的大部分方面的脚本,如建模、动画、材质、渲染等。 通过命令行侦听器窗口以交互方式控制程序。 在自定义实用工具面板卷展栏或无模式窗口中打包脚本&…...
Xshell全局去除提示音
使用Xshell的时候经常会按TAB或者一些操作指令的时候的时候听到提示音,非常的烦 通常来说在Xshell中可以单独修改每一个会话的属性,将提示音关闭,但是新增的会话依然带有提示音,还得一个个的关闭,非常麻烦,…...
JAVA代码优化:Spring中redis的工具类
基于Spring框架和Redis的缓存工具类。该类提供了一系列方法用于操作Redis缓存,包括设置缓存对象、设置缓存超时时间、获取缓存对象、删除对象、缓存List、Set、Map等操作。通过这些方法可以方便地对Redis进行数据缓存和读取操作。同时,该类使用了Spring的…...
MathType 7.5.2中文版软件使用期到了怎么办?
MathType 7.5.2中文版作为一款专业的公式编辑器,MathType受到很多人的青睐,它可以将编辑好的公式保存成多种图片格式或透明图片模式,可以很方便的添加或移除符号、表达式等模板(只需要简单地用鼠标拖进拖出即可),也可以…...
使用VSCode开发Django指南
使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架,专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用,其中包含三个使用通用基本模板的页面。在此…...
【HTML-16】深入理解HTML中的块元素与行内元素
HTML元素根据其显示特性可以分为两大类:块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...
Android15默认授权浮窗权限
我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...
华硕a豆14 Air香氛版,美学与科技的馨香融合
在快节奏的现代生活中,我们渴望一个能激发创想、愉悦感官的工作与生活伙伴,它不仅是冰冷的科技工具,更能触动我们内心深处的细腻情感。正是在这样的期许下,华硕a豆14 Air香氛版翩然而至,它以一种前所未有的方式&#x…...
【p2p、分布式,区块链笔记 MESH】Bluetooth蓝牙通信 BLE Mesh协议的拓扑结构 定向转发机制
目录 节点的功能承载层(GATT/Adv)局限性: 拓扑关系定向转发机制定向转发意义 CG 节点的功能 节点的功能由节点支持的特性和功能决定。所有节点都能够发送和接收网格消息。节点还可以选择支持一个或多个附加功能,如 Configuration …...
安卓基础(Java 和 Gradle 版本)
1. 设置项目的 JDK 版本 方法1:通过 Project Structure File → Project Structure... (或按 CtrlAltShiftS) 左侧选择 SDK Location 在 Gradle Settings 部分,设置 Gradle JDK 方法2:通过 Settings File → Settings... (或 CtrlAltS)…...
基于鸿蒙(HarmonyOS5)的打车小程序
1. 开发环境准备 安装DevEco Studio (鸿蒙官方IDE)配置HarmonyOS SDK申请开发者账号和必要的API密钥 2. 项目结构设计 ├── entry │ ├── src │ │ ├── main │ │ │ ├── ets │ │ │ │ ├── pages │ │ │ │ │ ├── H…...
【WebSocket】SpringBoot项目中使用WebSocket
1. 导入坐标 如果springboot父工程没有加入websocket的起步依赖,添加它的坐标的时候需要带上版本号。 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId> </dep…...
MySQL体系架构解析(三):MySQL目录与启动配置全解析
MySQL中的目录和文件 bin目录 在 MySQL 的安装目录下有一个特别重要的 bin 目录,这个目录下存放着许多可执行文件。与其他系统的可执行文件类似,这些可执行文件都是与服务器和客户端程序相关的。 启动MySQL服务器程序 在 UNIX 系统中,用…...
linux设备重启后时间与网络时间不同步怎么解决?
linux设备重启后时间与网络时间不同步怎么解决? 设备只要一重启,时间又错了/偏了,明明刚刚对时还是对的! 这在物联网、嵌入式开发环境特别常见,尤其是开发板、树莓派、rk3588 这类设备。 解决方法: 加硬件…...
