站长网 教程 Prometheus 是一个开源的服务操纵系统和时间序列数据库

Prometheus 是一个开源的服务操纵系统和时间序列数据库

开源: 意味着我们可以免费使用,有问题可以给社区提 Issues 寻求帮助,也可以自己提一些新功能或者 Bug 修复的 PR,共建强大的生态圈。 监控: 意味着普罗米修斯可以用于监控场景,监控我们的服务器,监控我们的数据库,监控我们的应用程序,它都用的上。

开源: 意味着我们可以免费使用,有问题可以给社区提 Issues 寻求帮助,也可以自己提一些新功能或者 Bug 修复的 PR,共建强大的生态圈。

监控: 意味着普罗米修斯可以用于监控场景,监控我们的服务器,监控我们的数据库,监控我们的应用程序,它都用的上。

时间序列数据库: 维基百科上对于时间序列的定义是‘一系列数据点按照时间顺序排列’,其实就是根据时间点存储的信息,这些信息是不可变的。目前在监控场景用的比较多。

对比一些老牌的监控,比如 zabbix,Prometheus 近几年在容器监控方面表现的非常突出,人家就是干这个事情的。对于新的监控选型,我觉得大家可以尝试下 Prometheus。

虽然监控这个工作属于运维这块的,理应要有专业的运维工程师来做。我认为作为一个后端开发,也必须要懂得一些监控相关的知识和技能储备。万一你去了创业公司,很可能什么工作都是你来做。

Prometheus 中的一些概念

Prometheus Server

Prometheus Server 是 Prometheus 组件中的核心部分,负责实现对监控数据的获取,存储以及查询。

Exporter

Exporter 将监控的数据采集起来,通过 HTTP 服务的形式暴露出去,Prometheus Server

会定时去拉取这些暴露的数据进行监控。

官方已经提供了很多的 Exporter,比如 Mysql 等。下载地址:https://prometheus.io/download/

如果是监控我们的应用程序,可以在程序中集成官方的 SDK,自己埋点暴露出需要监控的指标即可。

PushGateway

PushGateway 作为一个独立的服务,大部分场景下我们用的是 pull 模式,也就是 Prometheus Server 去拉取 Exporter 提供的数据,如果想使用 push 模式的话,可以将数据 push 给 PushGateway,由 PushGateway 统一提供数据给 Server。

Service Discovery

服务发现是一个特别重要的功能,特别是在微服务场景下监控显得尤为重要。如果没有服务发现的功能,那么每启动一个服务就需要去修改 Prometheus 的配置文件增加对应的配置。

有了服务发现的功能,可以动态的去发现服务信息,无需手动修改配置。官方推荐用 Consul 作为服务发现,像我们用 Nacos 的话,目前是不支持的,还需要想办法进行处理,比如定时拉取信息同步到文件中。

三剑客

Prometheus 目前的标配都是和 Grafana,AlertManage 一起使用的,三剑客。跟 ELK 是一样的,正所谓三个臭皮匠赛过诸葛亮。

Prometheus

负责拉取监控数据,存储。

Grafana

负责展示各种监控指标,通过图形化的方式。

Prometheus 负责赚钱养家,Grafana 负责美貌如花。

AlertManage

负责异常告警,可以对接钉钉等多种消息通知。

本文来自网络,不代表站长网立场,转载请注明出处:https://www.zwzz.com.cn/html/video/2021/0525/6460.html

作者: dawei

【声明】:站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。
联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部