Go微服务实战——metrics指标监控(Prometheus框架与Grafana可视化)

news/2024/5/19 1:19:38 标签: golang, 微服务, prometheus

安装Prometheus

参考官网

安装完后访问http://IP:9090如下所示:

在这里插入图片描述
这是Prometheus自带的UI。

该地址是数据监控地址http://localhost:9090/metrics所有输出的监控项。

在这里插入图片描述

可以正常浏览上述信息是表示安装完成。

Promethus简介

promethus中文网

Prometheus中文文档

Prometheus手册

看到如下的架构图,promethus的主要组件是Exporters,Server,Gateway。
在这里插入图片描述
Prometheus Server是Prometheus组件中的核心部分,Retrieval负责实现对监控数据的获取,Storage负责存储数据,PormQL提供查询语言支持。server本身相当于一个服务,对内获取监控标,对外提供支持PromQL语言的分析与查询,另外提供的UI可视化数据。

Exporter将监控数据采集的端点通过HTTP服务的形式暴露给Prometheus Server,Prometheus Server通过访问该Exporter提供的Endpoint端点,即可获取到需要采集的监控数据。

Gateway实现网关保证复杂网络环境下Prometheus Server也能够直接与Exporter进行通信。

Promethus通讯也是master-node的主从架构,不同的node(在promethus称为Node Exporter)获取各自主机所在的服务,发送到Server。各个Node Exporters独立安装(安装参考官网)。

从节点的监控地址一般是http://localhost:9100/

在这里插入图片描述
监控数据地址http://localhost:9100/metrics

Node exporter是promethus的独立节点,用于采集独立机器的信息,promethus server获取分节点的信息整理汇总到server。

通过PormQL可以查询机器的详细信息,例如这里查看所有运行的服务:

在这里插入图片描述
可以看到包含一个主节点job=promethus和一个node节点job=node,后面的value代表运行状态,1为正常。

点击Graph可以查看服务的图像信息,如下:

在这里插入图片描述

查询node_load1查看node节点数据,如下:

在这里插入图片描述

Grafana

Prometheus UI提供了快速验证PromQL以及临时可视化支持的能力,而在大多数场景下引入监控系统通常还需要构建可以长期使用的监控数据可视化面板(Dashboard)。

Grafana是一个开源的可视化平台,并且提供了对Prometheus的完整支持,支持可视化Promethus采集的数据。

直接安装或者使用docker获取服务均可,这里不在赘述,暗转成功后如下:

docker run -d -p 3000:3000 grafana/grafana

默认使用账户admin/admin进行登录
在这里插入图片描述
使用默认账户密码登录后会要求改密码:admin/123456

在这里插入图片描述

登录进入主界面:

在这里插入图片描述

Grafana支持添加多种数据源,这里添加Promethus的数据源,参考文档

在这里插入图片描述

添加promethus配置:

在这里插入图片描述

添加promethus server地址,一般都是schema://ip:9090

在这里插入图片描述
如何配置仪表盘请参考官方文档。


http://www.niftyadmin.cn/n/5453714.html

相关文章

架构师之路--Java 架构师的技术路径

《Java 架构师的技术路径》 一、引言 Java 架构师是软件开发领域中的重要角色,他们负责设计和构建高可用、高性能、可扩展的软件系统。成为一名优秀的 Java 架构师需要具备广泛的技术知识和丰富的实践经验。本文将介绍 Java 架构师的技术路径,帮助读者了…

C#面:用 FileStream 打开一个文件时,为了控制该 FileStream 用于创建不存在的文件,应将其什么参数设置为Create

当使用 FileStream 打开一个文件时,可以通过设置 FileMode 参数来控制 FileStream 的行为。如果想要创建一个不存在的文件,可以将 FileMode 参数设置为 Create。 下面是一个示例代码,展示如何使用 FileStream 打开一个文件并创建不存在的文件…

【python】(07)理解Python中函数的参数类型

系列文章回顾 【python】(01)初识装饰器Decorator 【python】(02)初识迭代器Iterator 【python】(03)初识生成器Generator 【python】(04)python中实现多任务并发和并行的区别 【python】(05)如何使用python中的logging模块记录日志信息 【python】(06)理解Python中的 lambda 、…

Java八股文(Elasticsearch)

Java八股文のElasticsearch Elasticsearch Elasticsearch 什么是Elasticsearch? Elasticsearch是一个开源的分布式搜索和分析引擎,用于实时存储、搜索和分析大规模数据集。 Elasticsearch的主要特点是什么? Elasticsearch的主要特点包括&…

Android14之深入理解sp模板类(二百零二)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒…

精酿啤酒:特殊酵母的发酵特性与风味表现

Fendi Club啤酒在酿造过程中采用了特殊的酵母,这些酵母具有与众不同的发酵特性和风味表现,为啤酒带来了与众不同的风味和口感。 Fendi Club啤酒使用的酵母种类繁多,包括艾尔酵母和拉格酵母等。这些不同种类的酵母在发酵过程中具有不同的特性和…

深入探讨iOS开发:从创建第一个iOS程序到纯代码实现全面解析

iOS开发作为移动应用开发的重要领域之一,对于开发人员具有重要意义。本文将深入探讨iOS开发的各个方面,从创建第一个iOS程序到纯代码实现iOS开发,带领读者全面了解iOS应用程序的开发流程和技术要点。 📱 第一个iOS程序 在创建第…

T2. 排队选人 - 小米前端笔试编程题解

考试平台: 赛码 题目类型: 20道选择 2道编程题 考试时间: 2024-03-23 (两小时) 题目描述 小D是一名老师,他想选出一些同学参加一个团体比赛。 总共有n个同学,每个同学有一个能力值x和一个合作…