使用Promethues+Grafana监控Elasticsearch

Promethues+Grafana监控Elasticsearch

  • 监控选用说明
  • 指标上报流程说明
  • 实现监控的步骤
    • 搭建elasticsearch-exporter服务
    • 搭建promethues和grafana服务

监控选用说明

虽然用Kibana来监控ES,能展示一些关键指标,但ES本身收集的指标并不全面,还需要在ES配置文件中设置xpack.monitoring.collection.enabled: true来开启监控指标的收集,并占用额外的集群资源。重点是当集群出故障时,故障期间可能也收集不到监控指标。

所以需要使用第三方监控组件来实现对ES的监控。目前开源监控组件最受欢迎的就是Promethues+Grafana,再使用elasticsearch-exportor从ES中获取监控指标,最终就可以通过Grafana来展示各种监控图表了。

指标上报流程说明

promethues、elasticsearch-exportor和grafana完成上报的流程如下图所示:
在这里插入图片描述

  1. elasticsearch-exportor通过elasticsearch的Rest Api周期性获取ES集群的各项指标,组装成promethues支持解析的指标数据格式,并暴露http端口来支持通过http的方式获取这些指标数据;
  2. promethues通过elasticsearch-exportor提供的http接口来获取指标数据;
  3. grafana使用promethues上的指标数据绘图展示监控面板。

实现监控的步骤

使用环境:centos7.9
部署方式:通过docker compose

搭建elasticsearch-exporter服务

1、创建elasticsearch-exportor目录

mkdir /home/es/elasticsearch_exporter

2、编写docker-compose.yml

cd /home/es/elasticsearch_exporter
vim docker-compose.yml

docker-compose.yml文件内容

version: '2.1'services:  elasticsearch_exporter:image: quay.io/prometheuscommunity/elasticsearch-exporter:latestcommand:- '--es.uri=http://192.168.8.87:9200'  # 内网IPrestart: unless-stopped   # 表示容器退出时总是重启,但是不考虑docker守护进程运行时就已经停止的容器ports:- 9114:9114     

3、启动服务

cd /home/prome
# 后台启动
docker compose up -d 

4、确认elasticsearch-exporter成功连上了es

通过http请求获取metric来验证elasticsearch-exporter是否连上了

例如:http://192.168.8.87:9114/metrics

如果返回了elasticsearch_开头的相关的监控指标,则说明elasticsearch-exporter成功连接了elasticsearch
在这里插入图片描述

搭建promethues和grafana服务

1、创建目录

mkdir /home/prome

2、编写docker-compose.yml

cd /home/prome
vim docker-compose.yml

docker-compose.yml文件内容

version: '2.1'networks:monitor-net:driver: bridgevolumes:prometheus_data: {}grafana_data: {}services:prometheus:image: prom/prometheus:v2.37.0container_name: prometheusvolumes:- ./prometheus:/etc/prometheus- prometheus_data:/prometheuscommand:- '--config.file=/etc/prometheus/prometheus.yml'- '--storage.tsdb.path=/prometheus'- '--web.console.libraries=/etc/prometheus/console_libraries'- '--web.console.templates=/etc/prometheus/consoles'- '--storage.tsdb.retention.time=200h'- '--web.enable-lifecycle'restart: unless-stopped   # 表示容器退出时总是重启,但是不考虑docker守护进程运行时就已经停止的容器ports:- 9090:9090networks:- monitor-netlabels:org.label-schema.group: "monitoring"grafana:image: grafana/grafana:9.0.3container_name: grafanavolumes:- grafana_data:/var/lib/grafana- ./grafana/provisioning/dashboards:/etc/grafana/provisioning/dashboards- ./grafana/provisioning/datasources:/etc/grafana/provisioning/datasourcesenvironment:- GF_SECURITY_ADMIN_USER=${ADMIN_USER:-admin}- GF_SECURITY_ADMIN_PASSWORD=${ADMIN_PASSWORD:-admin123}- GF_USERS_ALLOW_SIGN_UP=falserestart: unless-stoppedports:- 3000:3000networks:- monitor-netlabels:org.label-schema.group: "monitoring"

3、启动服务

cd /home/prome
# 后台启动
docker compose up -d 

4、配置拉取 elasticsearch-exporter的监控数据

修改配置文件 ./prometheus/prometheus.yml,在其末尾增加elasticsearch-exporter的地址配置,如下:

- job_name: 'es_test'      static_configs:- targets: ['192.168.1.86:9114']

如图(需要注意yml文件的层级关系):
在这里插入图片描述
5、确认prometheus成功连上了elasticsearch-exporte

浏览器访问 IP:9090/status 进入到prometheus提供的web界面

例如:http://192.168.8.87:9090/status

看到如下页面,表示prometheus已启动成功
在这里插入图片描述
点击菜单栏的Graph,在这个页面可以查询到prometheus获取到的指标
prometheus成功连上了elasticsearch-exporte的现象:

(1)输入“el”可以出来选项
在这里插入图片描述
(2)查询其中一个指标,有如下展示:
在这里插入图片描述

在这里插入图片描述
6、访问浏览器访问IP:3000/进入grafana登录页面
例如:http://192.168.8.87:3000/

7、输入管理员账号密码(docker-compose.yml里配置的)
账号:admin
密码:admin123

8、导入仪表盘
grafana官网提供了elasticsearch-exportor上报指标的仪表盘,包含了上报到elasticsearch相关指标的监控图,可直接到官网下载后导入即可使用

下载页面为:
https://grafana.com/grafana/dashboards
右边列表可自选仪表盘
在这里插入图片描述

选择某个进入详情后,点击右侧的Download JSON即可下载
ps. 需要尝试几个,可能会导致部分监控面板无法正常显示。

本次记录我选择的是:

https://grafana.com/grafana/dashboards/17724-elasticsearch/
在这里插入图片描述
下载完成后,回到部署的Grafana服务里,在左侧展开的菜单栏中点击Dashboards下的Import
在这里插入图片描述
上传下载的json文件
在这里插入图片描述
点击Import即可导入仪表盘
在这里插入图片描述
在这里插入图片描述
点击左侧搜索框也可进入导入的面板
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/248804.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MicrosoftEdge浏览器打开网页出现“此网站被人举报不安全”问题时解决办法

1:有时候不知怎么回事用电脑自带的微软浏览器进行搜索会出现以下的问题 这可能是由于我们的浏览器安全审查过于严格引起的 Windows10正式版系统下,使用Edge浏览器浏览网页时候,发现整个页面突然变成了红色,显示“已有人举报此网站…

响应式Web开发项目教程(HTML5+CSS3+Bootstrap)第2版 例5-5 Canvas 绘制三角形

代码 <!doctype html> <html> <head> <meta charset"utf-8"> <title>Canvas 绘制三角形</title> </head><body><canvas id"cavsElem">您的浏览器不支持Canvas&#xff0c;请升级浏览器</canvas…

Android App开发-简单控件(1)——文本显示

本章介绍了App开发常见的几类简单控件的用法&#xff0c;主要包括&#xff1a;显示文字的文本视图、容纳视图的常用布局、响应点击的按钮控件、显示图片的图像视图等。然后结合本章所涉及的知识&#xff0c;完成一个实战项目“简单计算器”的设计与实现。 1.1 文本显示 本节介绍…

QWT开源库使用

源代码地址&#xff1a;Qwt Users Guide: Qwt - Qt Widgets for Technical Applications Qwt库包含GUI组件和实用程序类&#xff0c;它们主要用于具有技术背景的程序。除了2D图的框架外&#xff0c;它还提供刻度&#xff0c;滑块&#xff0c;刻度盘&#xff0c;指南针&#xf…

STM32F407移植OpenHarmony笔记6

继上一篇笔记&#xff0c;编译好STM32的裸机程序&#xff0c;能点亮LED灯了。 下一步就是启动liteos_m内核了。 不过为了更好的调试代码&#xff0c;需要先把printf重定向到串口&#xff0c;基于gcc的printf重定向和Keil不一样。 直接新建printf.c&#xff0c;在里面重写printf…

Gin 框架之jwt 介绍与基本使用

文章目录 一.JWT 介绍二.JWT认证与session认证的区别2.1 基于session认证流程图2.2 基于jwt认证流程图 三. JWT 的构成3.1 header : 头部3.2 payload : 负载3.2.1 标准中注册的声明 (建议但不强制使用)3.2.2 公共的声明3.2.3 私有的声明3.2.4 定义一个payload 3.3 signatrue : …

linux平台 LED情报板网关项目总结

LED情报板目前已经基本稳定 主要存在两个版本LED1.5 和LED2 两个版本的主要差别是 &#xff1a; 1.1.5的配置文件存在本地 2.0的存在平台 需要通过接口从平台获取 2.1.5的下发消息的时候需要同步返回 2.0的是异步返回&#xff0c;所以1.5的要尽可能完成 不然会导致发 布平台…

确认项目范围基准 常见的5大问题

确认项目范围基准的过程中&#xff0c;经常会遇到一些问题&#xff0c;如经常出现项目范围不明确、范围变更频繁等问题&#xff0c;往往会导致项目延期、超预算、质量下降等问题&#xff0c;严重的话可能会导致项目失败。 因此&#xff0c;我们在进行项目范围基准确认时&#x…

MySQL数据库基础合集

MySQL数据库基础合集 目录 MySQL数据库基础合集SQL关键字DDL关键字DML关键字DQL关键字DCL关键字约束关键字 SQL基础数据类型整数类型字符类型浮点类型时间类型 数据定义语言DDL1.查看数据库2.创建库3.删除库4.切换库5.创建表6.删除表7.查看表8.查看表属性9.插入列10.修改列11.设…

2023年数学大事件盘点

目录 ChatGPT驱动数学变革提速2023年阿贝尔奖花落得克萨斯大学奥斯汀分校教授路易斯卡法雷利一个全新的更紧的拉姆齐数的上界埃尔德什-图兰猜想新突破几何学家卡拉比逝世中国科学院院士、数学家杨乐逝世参考文献悄悄地,春节马上来临,在这辞旧迎新的日子里也是我们三行数学总结…

Adobe Camera Raw forMac/win:掌控原始之美的秘密武器

Adobe Camera Raw&#xff0c;这款由Adobe开发的插件&#xff0c;已经成为摄影师和设计师们的必备工具。对于那些追求完美、渴望探索更多创意可能性的专业人士来说&#xff0c;它不仅仅是一个插件&#xff0c;更是一个能够释放无尽创造力的平台。 在数字摄影时代&#xff0c;R…

github官网连接超时解决方案(图解版,亲测成功)

目录 一、521github镜像站1.1、521github镜像站访问地址 二、Github520镜像站2.1、Github520镜像站访问地址地址 三、UsbEAm Hosts Editor加速器3.1、UsbEAm加速器下载、安装及使用 四、SwitchHosts加速器4.1、SwitchHosts加速器下载、安装及使用 五、原名&#xff08;Steam)目…

blender 画笔的衰成曲线Falloff Curve

Blender画笔是用来在雕刻模式或绘画模式下对物体进行修改的工具。画笔有不同的类型和设置&#xff0c;可以影响画笔的效果和外观。你提到的选项是画笔的衰减曲线&#xff08;Falloff Curve&#xff09;的预设&#xff0c;它们决定了画笔的强度如何随着距离中心的距离而变化。 …

计算机设计大赛 深度学习 opencv python 实现中国交通标志识别

文章目录 0 前言1 yolov5实现中国交通标志检测2.算法原理2.1 算法简介2.2网络架构2.3 关键代码 3 数据集处理3.1 VOC格式介绍3.2 将中国交通标志检测数据集CCTSDB数据转换成VOC数据格式3.3 手动标注数据集 4 模型训练5 实现效果5.1 视频效果 6 最后 0 前言 &#x1f525; 优质…

【pdf密码】怎么打印加密的PDF文件?

PDF文件是可以打开查看的&#xff0c;但是现在不能编辑、不能打印&#xff0c;功能栏中的功能都是灰色的&#xff0c;这种设置了加密的PDF文件该如何加密&#xff1f; 如果PDF中的大多数功能按钮以及打印按钮都是灰色的状态&#xff0c;那就证明是文件的问题导致不能打印的。 …

Sentinel之力:解锁@SentinelResource注解的神奇威力

欢迎来到我的博客&#xff0c;代码的世界里&#xff0c;每一行都是一个故事 Sentinel之力&#xff1a;解锁SentinelResource注解的神奇威力 前言SentinelResource注解基础&#xff1a;数字法术的咒语SentinelResource 注解的基本概念和作用&#xff1a;在方法上添加 SentinelRe…

Linux 入门基础知识(一)—— Linux的基本使用

Linux 入门基础知识 一、Linux的基本使用和配置1.1、终端1.2、消耗内存1.3、运行级别1.6、登录前欢迎语1.5、登录后欢迎语1.6、shell1.7、ps aux1.8、设置主机名1.9、whoami和who am i1.10、命令提示符 二、Linux执行命令的过程详解和命令类型2.1、命令执行2.2、hash缓存表2.3、…

InputNumber数字输入框(antd-design组件库)简单使用

1.InputNumber数字输入框 通过鼠标或键盘&#xff0c;输入范围内的数值。 2.何时使用 当需要获取标准数值时。 组件代码来自&#xff1a; 数字输入框 InputNumber - Ant Design 3.本地验证前的准备 参考文章【react项目antd组件-demo:hello-world react项目antd组件-demo:hello…

浏览器内存泄漏排查指南

1、setTimeout执行原理 使用setInterval/setTimeOut遇到的坑 - 掘金 2、Chrome自带的Performance工具 当我们怀疑页面发生了内存泄漏的时候&#xff0c;可以先用Performance录制一段时间内页面的内存变化。 点击开始录制执行可能引起内存泄漏的操作点击停止录制 如果录制结束…

springboot整合mqtt实现消息订阅和推送

前言 mica-mqtt-client-spring-boot-starter是一个基于Spring Boot的MQTT客户端启动器&#xff0c;它集成了mica-mqtt客户端&#xff0c;提供了在Spring Boot应用程序中使用MQTT协议进行消息通信的能力。以下是关于mica-mqtt-client-spring-boot-starter的简介&#xff1a; 特…