zabbix监控K8S的PV信息详细教程!
本文将介绍如何使用Zabbix自定义键值脚本方式监控K8S的PV卷状态等信息。
在Kubernetes (K8S) 中,PersistentVolume (PV) 是集群中的一个抽象层,它代表了底层存储资源,例如网络存储系统(如NFS、Ceph、GlusterFS等)或本地存储(如硬盘驱动器、分区或目录)。PV 是集群级别的资源,可以被多个 Pod 共享,并且它的生命周期独立于任何使用它的 Pod
一、首先在K8S_master节点上安装Zabbix_Agent服务

二、查看PV命令是否能正常运行

三、编写自定义监控脚本,通过自动发现格式生成PV
#!/bin/bash
echo -n '{"data": ['
kubectl get pv -o custom-columns=NAME:.metadata.name,STATUS:.status.phase --no-headers | \
awk '{
if(NR>1) printf ",";
printf "{\"{#PV_NAME}\":\"%s\", \"{#PV_STATUS}\":\"%s\"}", $1, $2
} END {print "]}"
}'


四、添加zbx自定义键值
UserParameter=kubernetes.pv.discovery,/usr/local/lwops/scripts/get_k8s_pv.sh #自动发现规则键值
UserParameter=kubernetes.pv.status[*],kubectl get pv $1 -o jsonpath='{.status.phase}' #获取STATUS列的状态键值

五、 重启Agent服务
# systemctl restart zabbix_agentd
六、 创建自动发现规则

七、 创建监控原型

八、创建触发器类型
状态值如果是Failed或Pending状态产生告警

九、 查看监控项指标是否采集正常


浙公网安备 33010602011771号