Prometheus 企业级监控使用总结

本文探讨了监控的重要性,指出监控应与应用程序同步部署,并介绍了黑盒和白盒监控方法。特别关注了Prometheus系统,包括其架构、适用场景、数据模型、指标类型、查询语言以及如何通过NodeExporter和cAdvisor监控资源。还提供了计算CPU、内存和磁盘使用率的方法以及如何使用PromQL进行高级查询和预测。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、监控概念&误区

监控是管理基础设施和业务的核心工具,监控应该和应用程序一起构建和部署,没有监控,将无法了解你的系统运行环境,进行故障诊断,也无法阻止提供系统性的性能、成本和状态等信息。

误区:要尽量避免进行机械式的监控、不够准确的监控、静态和监控、不频繁的监控、缺少自动化或自服务。

二、黑盒监控&白盒监控

1、黑盒监控

  • 应用程序或主机是从外部观察的,因此,这种方法可能相当有限。检查是为了评估被观察的系统是否以已知的方式响应探测。

  • 例子:

1)主机是否相应PING的请求

2)特定的TCP端口是否打开

3)应用程序在接受到特定的HTTP请求时,是否使用正确的数据和状态代码进行响应

4)特定应用程序的进程是否在其主机中运行

2、白盒监控

系统在被测对象表面显示其内部状态和临界段的性能数据。这种类型的自省可能非常强大,因为它暴露了内部操作,显示不同内部组件的健康状况,否则很难甚至不可能确定。这种数据处理通常以胰腺癌方式进行处理:

1)通过日志导出:到目前为止。这是也是在广泛引入库之前,应用程序是如何暴露其内部工作的最常见的情况,例如:可以处理 HTTP 服务器的访问日志来监视请求率、延迟和错误百分比;

2)以结构化的事件输出:这种方法类似于日志记录,但不是将数据写入磁盘,而是直接将数据发送到处理系统进行分析和聚合。

3)以聚合的方式保存在内存中:这种格式的数据可以驻留在端点中,也可以直接从命令行工具中读取。这种方法的例子有/metrics with Prometheus metrics、HAProxy 的 stats 页面或 varnishstats 命令行工具。

三、度量指标

度量指标有监控系统执行的过程通常可以分为两种方式:push(监控系统去服务进行拉取)、pull(被监控的服务自动往监控系统进行推送)【站在客户的角度】

  • Push VS Pull

  • 测量什么:

谷歌提出应该监控的四个指标:

  • 延迟:服务请求所需的时间

  • 流量:正在发出的请求的数量

  • 错误:求失败的比率

  • 饱和:未处理的工作量,通常在队列中

Brendan 的方法更关注于及其他声明对于每个资源(CPU、磁盘、网络接口等等),应该监视以下指标:

  • 利用率:以资源繁忙的百分比来衡量

  • 饱和:资源无法处理的工作量,通常会排队

  • 错误:发生的错误数量

汤姆威尔基的红色方法:更侧重于服务级别方法,而不是底层系统本身。显然,这种才领略对于见识服务很有用,对于预测外部客户的体验也很有价值。如果服务的错误率增加,那么就可以合理地假设这些错误将直接或间接地影响客户的体验。

  • 速率:转换成每秒请求数

  • 错误:每秒失败请求的数量

  • 持久性:这些请求所花费的时间

四、Pr

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值