前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Zabbix监控es集群状态

Zabbix监控es集群状态

作者头像
没有故事的陈师傅
发布2019-07-27 20:05:23
1.7K0
发布2019-07-27 20:05:23
举报
文章被收录于专栏:运维开发故事运维开发故事

es提供了一个可以获取集群健康状态的api,访问http://esurl:9200/_cluster/health?pretty 和 Elasticsearch 里其他 API 一样,cluster-health 会返回一个 JSON 响应。

响应的内容解释:

“cluster_name”: “my-es”, #集群名 “status”: “yellow”, #集群健康状态,正常的话是green,缺少副本分片为yellow,缺少主分片为red “timed_out”: false, “number_of_nodes”: 1,#集群节点数 “number_of_data_nodes”: 1,#数据节点数 “active_primary_shards”: 15,#主分片数 “active_shards”: 15,#可用的分片数 “relocating_shards”: 0,#正在迁移的分片数 “initializing_shards”: 0,#正在初始化的分片数 “unassigned_shards”: 15, #未分配的分片,但在集群中存在 “delayed_unassigned_shards”: 0, #延时待分配到具体节点上的分片数 “number_of_pending_tasks”: 0, #待处理的任务数,指主节点创建索引并分配shards等任务 “number_of_in_flight_fetch”: 0, “task_max_waiting_in_queue_millis”: 0, “active_shards_percent_as_number”: 50 #可用分片数占总分片的比例

1.编写采集脚本获取集群状态

vim /monitor_es.py

代码语言:javascript
复制
#encoding=utf-8import requests,jsonimport sys
headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.109 Safari/537.36"}
response=requests.get("http://192.168.179.133:9200/_cluster/health",headers=headers)
s=json.loads(response.content.decode())
parm=sys.argv[1]

itemlist=["cluster_name","status","timed_out","number_of_nodes","number_of_data_nodes","active_primary_shards","active_shards","relocating_shards","initializing_shards","unassigned_shards","delayed_unassigned_shards","number_of_pending_tasks","number_of_in_flight_fetch","task_max_waiting_in_queue_millis","active_shards_percent_as_number"]if parm not in itemlist:
    print("parm failed")
    sys.exit(1)else:
    print(s[parm])

给脚本赋予执行权限 chmod +x /monitor_es.py

2.修改zabbix-agent配置文件

vim /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf UserParameter=es.[*],/usr/bin/python /monitor_es.py $1 重启zabbix-agent sytemctl restart zabbix-agent

3.配置监控模板

创建监控模板

创建应用集

创建监控项 以创建集群健康状态监控项为例

创建完的监控项如下所示

创建触发器

创建图形

将模板链接到监控主机

可以看到添加之后的监控项成功收集到数据


本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-03-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 运维开发故事 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.编写采集脚本获取集群状态
  • 2.修改zabbix-agent配置文件
  • 3.配置监控模板
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档