ZABBIX Agent2监控docker
首先我们先来看一下zabbix agent2监控docker插件的实现原理,其实就是通过调用docker的API来获取数据,插件目录位于zabbix-agent2/src/go/plugins/docker,我们先来看一下client.go文件 这里就是定义了使用UNIX套接字地址来进行docker客户端与服务端的通信
config.go定义了docker插件的默认配置,默认套接字位置为/var/run/docker.sock,定义默认超时时间为全局代理超时时间,通过调用conf.Unmarshal()函数,将配置文件中的插件参数加载到Options结构体中
这个是检查配置文件输入的Endpoint是否有错误
再来看一下docker.go,这里定义了docker的监控项的键值,以及对应的API请求路径,参数长度
这里是实现了一个Query方法来对根据传来的API路径构造GET请求获取数据
也就相当于这种请求,其中1.28是一个常量,表示docker的API版本,/var/run/docker.sock是默认套接字位置
这里实现了一个Export接口,将对应的key传入给Query方法,返回一个json格式的数据,模板上会创建一些依赖项,使用预处理进程对json数据进行分割
下面是zabbix实现自动发现容器和镜像的两个方法,会返回包含容器和镜像信息的json数据
对这些指标进行初始化,第一个参数为指向插件实现的指针,第二个参数为插件名称,第三个参数指标1的键值,第二个参数为指标1的说明,往后以此类推
了解了docker插件的实现思路后我们可以根据我们的需求进行扩展,添加对应的api获取数据就可以了,或者根据这个思路在zabbix agent上实现相同的自定义脚本,甚至可以根据docker插件的实现逻辑来自己编写插件实现其他的监控需求
下面我们来使用agent2的模板监控docker
链接docker模板
然后就可以看到docker的状态了
参考链接 :
ZABBIX Agent2监控docker https://mp.weixin.qq.com/s/034qtKMvLSVBTMAu4R1FYw
ZABBIX Agent2监控docker相关推荐
- Zabbix Agent2监控redis
为能及时发现redis服务的存活性状态,以及服务的info信息,慢查询的日志数,因此使用Zabbix Agent2进行监控. 一 监控Redis的实现原理 redis插件位于源码的zabbix-age ...
- zabbix企业应用之监控docker容器资源情况
关于docker的监控,无论开源的CAdvisor.Data Dog还是我自己写的监控(http://dl528888.blog.51cto.com/2382721/1635951),不是通过dock ...
- zabbix自动发现实现批量监控docker状态
最近在搞zabbix监控docker以及docker内部应用状态信息,网上找的资料好少,只找到了一个大神的一篇文章,用的是python实现监控docker容器的基本状态,我在他给的脚本基础上进行修改, ...
- zabbix监控docker容器
1.环境说明 由于最近zabbix进行过一次迁移,所以zabbix-server系列采用docker方式安装,参考zabbix官网:https://github.com/zabbix/zabbix-d ...
- Zabbix使用LLD自动发现规则发现监控docker容器(下)
本篇是使用Zabbix监控docker容器下篇.利用ZABBIX自动发现监控功能,在部署zabbix agent客户端的服务器上,编写自定义功能脚本,实现自动获取服务器上运行的docker服务并监控其 ...
- zabbix监控docker
注:本文以zabbix6.0版本为例,在实际部署过程中请注意自己版本 一:docker模板 1.下载zabbix docker模板,链接如下 Browse Zabbix / Zabbix - ZABB ...
- Zabbix agent2安装
Zabbix Agent2 介绍 Zabbix 5.0 版本推出了使用 go 语言重写的 Agent2,也是 5.0 版本新特性,Agent2 有如下特性: 完成的插件框架支持,可扩张服务及应用监控 ...
- zabbix——分布式监控系统
目录 zabbix概述 zabbix 是什么 zabbix 监控原理 zabbix常见的五个程序 zabbix端口号 安装 zabbix 5.0 部署 zabbix 服务端 部署 zabbix 客户端 ...
- Zabbix实现监控Kubernetes
网上监控 Kubernetes 的工具大部分是 Promethues,基本很少有关于 Zabbix 实现监控Kubernetes 的文章.Zabbix 6.0 LTS 新增 Kubernetes 监控 ...
最新文章
- Oracle 好书 02 ( 安装oracle 10g软件及创建数据库 )
- mysql 5.6 双向互备_mysql双主互备
- 以太坊知识教程------智能合约的5种设计模式
- 在AWS控制台里根据需要打开指定的通信端口
- 如何使用groff -me在Linux上格式化学术论文
- 搜索算法-广度优先和深度优先搜索
- hardmard积 用什么符号表示_表面粗糙度=表面光洁度?数值为什么用0.8、1.6、3.2等表示?...
- LINUX警告:检测到时钟错误。您的创建可能是不完整的。-转
- EF6 Codefirst+MySql 数据库迁移
- jquery对标签属性操作
- Centos 7 Mysql 最大连接数超了问题解决
- 【MATLAB】(三)MATLAB在高等数学中的应用
- java打印sscil码_2018最新发布 |SSCI收录语言学学科期刊目录
- 北京-地点-文创-南锣鼓巷:南锣鼓巷
- mybatis-plus 的getOne用法
- SSL/TLS 单双向认证代码示例
- 1006 换个格式输出整数
- zabbix 参数 脚本_zabbix 自定义脚本短信报警
- 将实时频谱分析仪与HIF输出配合使用
- 迅捷画图中套用流程图模板编辑方法介绍
热门文章
- 系统梳理 Tensorflow、PyTorch 等深度学习框架,洞悉 AI 系统底层原理和算法
- 我的模型有多快?——深度学习网络模型的运算复杂度、空间占用和内存访问情况计算...
- YOLO目标检测,训练自己的数据集(识别海参)
- 从TensorFlow到PyTorch:九大深度学习框架哪款最适合你?
- android 屏幕方向改变 重新测量,android – 扫描时自动更改屏幕方向(使用ZXING库)...
- php可逆加密解密函数,php 好用可逆的 加密解密 函数。
- python读取txt文件出现UnicodeError
- 去除非ascii字符以及ascii中的控制符
- linux mysql5.5.50_linux下安装mysql5.5
- ObjC学习6-分类、协议及预处理程序