Zabbix通过API监控Kubernetes


监控方式:Python+Zabbix_sender

原理:Python的request库,请求Kubernetes的API地址,对数据处理。

第一步:获取Kubernetes的API地址

查看Kubernetes的API地址的命令如下(最好在Kubernetes集群的master上执行这条命令,因为如果在Node节点上执行该命令有可能会获取旧的API地址):
1.png

第二步:Kubernetes集群的Master主机生成一个Token用来认证,请求数据API数据

生成令牌命令如下(在Kubernetes的Master主机执行命令):
kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}')

把Token的值保存在本地的一个文件即可,后期需要把Token值添加到脚本中。
2.png

模板脚本下载地址:

链接:https://pan.baidu.com/s/1zIBudV8pI4peaQ21_sgPMg

提取码:gt8i

第三步:上传脚本并修改脚本

cd/usr/local/zabbix/share/zabbix/exter nalscripts目录下创建一个命名Kubernetes的目录,把get _k8s.py脚本放到此目录。
3.png

4.png

需要修改脚本三个地方。

上传外部检查get _k8s脚本到/usr/local/zabbix/share/zabbix/exter nalscript目录。
5.png

第四步:创建主机并且套用脚本

注意:主机名称必须是k8s_master,否则无法获取数据。(因为数据是通过Zabbix_sender发送到该主机)
6.png

7.png

第五步:手动触发脚本

选中该监控项,点击立即检查。
8.png

数据效果:
9.png

Zabbix通过API获取Kubernetes结果成功。

原文链接:https://www.xlsys.cn/1778.html

0 个评论

要回复文章请先登录注册