Prometheus部署

Prometheus部署

简介

Prometheus是最初在SoundCloud上构建的开源系统监视和警报工具包。自2012年成立以来,许多公司和组织都采用了Prometheus,该项目拥有非常活跃的开发人员和用户社区。Prometheus 于2016年加入了 Cloud Native Computing Foundation,这是继Kubernetes之后的第二个托管项目。

官网:https://prometheus.io 最新版本: 2.19.2

Exporter是一个采集监控数据并通过Prometheus监控规范对外提供数据的组件,能为Prometheus提供监控的接口。

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

  • Prometheus 开源的系统监控和报警框架,灵感源自Google的Borgmon监控系统

  • AlertManager 处理由客户端应用程序(如Prometheus server)发送的警报。它负责将重复数据删除,分组和路由到正确的接收者集成,还负责沉默和抑制警报

  • Node_Exporter 用来监控各节点的资源信息的exporter,应部署到prometheus监控的所有节点

  • PushGateway 推送网关,用于接收各节点推送的数据并暴露给Prometheus server

Prometheus介绍

prometheus的特点:

  1. 多维的数据模型(基于时间序列的Key、Value键值对)
  2. 灵活的查询和聚合语言PromQL
  3. 提供本地存储和分布式存储
  4. 通过基于HTTP的Pull模型采集时间序列数据
  5. 可利用Pushgateway(Prometheus的可选中间件)实现Push模式
  6. 可通过动态服务发现或静态配置发现目标机器
  7. 支持多种图表和数据大盘

prometheus的组件:

  1. Prometheus server,负责拉取、存储时间序列数据
  2. 客户端库(client library),插入应用程序代码
  3. 推送网关(push gateway),支持短暂的任务
  4. 特殊类型的exporter,支持如HAProxy,StatsD,Graphite等服务
  5. 一个alertmanager处理告警
  6. 各种支持工具

prometheus的架构:

下图说明了Prometheus的体系结构及其某些生态系统组件:

prometheus的使用场景:
prometheus非常适合记录任何纯数字时间序列。它既适合以机器为中心的监视,也适合监视高度动态的面向服务的体系结构。在微服务世界中,它对多维数据收集和查询的支持是一种特别的优势。

prometheus的设计旨在提高可靠性,使其成为中断期间要使用的系统,从而使您能够快速诊断问题。每个prometheus服务器都是独立的,而不依赖于网络存储或其他远程服务,当基础设施部分出现问题时仍然可以使用它。

Prometheus概念
数据模型:
prometheus将所有数据存储为时间序列:属于相同 metric名称和相同标签组(键值对)的时间戳值流。

metric 和 标签:
每一个时间序列都是由其 metric名称和一组标签(键值对)组成唯一标识。

metric名称代表了被监控系统的一般特征(如 http_requests_total代表接收到的HTTP请求总数)。它可能包含ASCII字母和数字,以及下划线和冒号,它必须匹配正则表达式[a-zA-Z_:][a-zA-Z0-9_:]*。

注意:冒号是为用户定义的记录规则保留的,不应该被exporter使用。

标签给prometheus建立了多

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值