热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

开发笔记:#yyds干货盘点#Prometheus之exporter及查询持久性

篇首语:本文由编程笔记#小编为大家整理,主要介绍了#yyds干货盘点#Prometheus之exporter及查询持久性相关的知识,希望对你有一定的参考价值。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了#yyds干货盘点#Prometheus 之 exporter 及查询持久性相关的知识,希望对你有一定的参考价值。



在主机上获得 CPU 饱和的一种方法是跟踪平均负载,实际上它是将主机上的 CPU 数量考虑在内的一段时间内的平均运行队列长度。平均负载少于 CPU 的数量通常是正常的,长时间内超过该数字的平均值则表示 CPU 已饱和。要查看主机的平均负载,我们可以使用 node_load*指标,它们显示了 1 分钟、5 分钟和 15 分钟的平均负载。


许多 exporter 都有特定的指标,旨在确定最后一次成功的数据抓取。例如,cAdvisor 指标 container_last_seen,它提供容器列表以及它们最近一次活动的时间。mysql Exporter 返回一个指标 mysql_up,如果 SELECT 查询在数据库服务器上成功运行,则将该指标设置为 1。


可以使用 metadata 指标来进行向量匹配(vector match)。向量匹配可以使用任何 PromQL 二元运算符[插图]。向量匹配尝试针对左侧向量中的每个元素在右侧向量中查找对应的匹配元素。目前有两种向量匹配:一对一(one-to-one)和多对一(many-to-one,或一对多(one-to-many))


记录规则是一种根据已有时间序列计算新时间序列(特别是聚合时间序列)的方法,我们这样做是为了:

  • 跨多个时间序列生成聚合
  • 预先计算消耗大的查询
  • 产生可用于生成警报的时间序列


记录规则在规则组中定义,这里的规则组叫作 node_rules。规则组名称在服务器中必须是唯一的。规则组内的规则以固定间隔顺序执行。默认情况下,这是通过全局 evaluate_interval 来控制的,但你可以使用 interval 子句在规则组中覆盖。


安装了 exporter,并且抓取了主机和容器指标。对于指定的每个目标,我们在抓取配置中手动列出了它们的 IP 地址和端口。这种方法在主机较少时还可以,但不适用于规模较大的集群,尤其不适用于使用容器和基于云的实例的动态集群,这些实例经常会出现变化、创建或销毁的情况。


Prometheus 通过使用服务发现解决了这个问题:通过自动化的机制来检测、分类和识别新的和变更的目标。服务发现可以通过以下几种机制实现:

  • 从配置管理工具生成的文件中接收目标列表
  • 查询 API(例如 Amazon AWS API)以获取目标列表。
  • 使用 DNS 记录以返回目标列表。

推荐阅读
  • 本文详细介绍了 Kubernetes 集群管理工具 kubectl 的基本使用方法,涵盖了一系列常用的命令及其应用场景,旨在帮助初学者快速掌握 kubectl 的基本操作。 ... [详细]
  • 本文探讨了Web开发与游戏开发之间的主要区别,旨在帮助开发者更好地理解两种开发领域的特性和需求。文章基于作者的实际经验和网络资料整理而成。 ... [详细]
  • 利用RabbitMQ实现高效延迟任务处理
    本文详细探讨了如何利用RabbitMQ实现延迟任务,包括其应用场景、实现原理、系统设计以及具体的Spring Boot实现方式。 ... [详细]
  • ServletContext接口在Java Web开发中扮演着重要角色,它提供了一种方式来获取关于整个Web应用程序的信息。通过ServletContext,开发者可以访问初始化参数、共享数据以及应用资源。 ... [详细]
  • 使用Jenkins构建Java项目实践指南
    本指南详细介绍了如何使用Jenkins构建Java项目,包括环境搭建、工具配置以及项目构建的具体步骤。 ... [详细]
  • 开发笔记:Python:GUI之tkinter学习笔记1控件的介绍及使用
    开发笔记:Python:GUI之tkinter学习笔记1控件的介绍及使用 ... [详细]
  • 本文介绍如何在指定的Module中通过配置build.gradle文件来生成自定义名称和路径的JAR文件,适用于Gradle 2.4及以上版本的Android Studio环境。 ... [详细]
  • 本文探讨了Java编程中MVC模式的优势与局限,以及如何利用Java开发一款基于鸟瞰视角的赛车游戏。 ... [详细]
  • 本文由「Vue虚拟实验室」的成员effort撰写,深入探讨了Vue CLI 3.0创建项目后的配置细节,特别是如何通过配置代理解决开发环境中的跨域问题。 ... [详细]
  • 本文介绍了Kettle资源库的基本概念、类型及其管理方法,同时探讨了Kettle的不同运行方式,包括图形界面、命令行以及API调用,并详细说明了日志记录的相关配置。 ... [详细]
  • FFPlay 字幕与LRC歌词播放指南
    本文详细介绍了不同媒体容器支持的字幕格式,以及如何使用FFPlay和FFMPEG进行字幕和LRC歌词的播放与转换。涵盖的内容包括字幕显示方法、字体配置、字幕流选择等。 ... [详细]
  • 本文探讨了Vue项目在Internet Explorer浏览器中遇到的问题及解决方案,包括axios请求失效和页面在低版本浏览器中显示为空白的问题。 ... [详细]
  • 本文详细介绍了MooseFS中的副本管理(Goal)以及文件回收机制。副本管理允许用户设定文件的复制份数,确保数据的安全性和可用性;而文件回收机制则提供了在误删除文件后的恢复途径,通过设置合理的隔离时间,保护重要数据。 ... [详细]
  • 前言ReactNative是目前最流行的跨平台框架,并且是Facebook团队开源的项目。架构及实现技术上都有很高的研究价值,本系列就来分析一下Reac ... [详细]
  • Zookeeper面试常见问题解析
    本文详细介绍了Zookeeper中的ZAB协议、节点类型、ACL权限控制机制、角色分工、工作状态、Watch机制、常用客户端、分布式锁实现、默认通信框架以及消息广播和领导选举的流程。 ... [详细]
author-avatar
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有