You need to enable JavaScript to run this app.
文档中心
托管 Prometheus

托管 Prometheus

复制全文
下载 pdf
Prometheus 数据采集与接入
Prometheus-agent 稳定性提升最佳实践
复制全文
下载 pdf
Prometheus-agent 稳定性提升最佳实践
Prometheus-agent 是托管 Prometheus 为容器服务(VKE)集群提供的采集器组件,其稳定性与集群观测结果和质量息息相关。本文介绍如何在实践中提升该组件的稳定性。​
背景信息​
在容器服务集群中,Prometheus-agent 组件会不定期更新新版本,新版会进行优化和稳定性提升,建议您关注组件发布记录,并及时将组件升级到新版本。详情请参见 组件发布记录。​
同时,为避免 Prometheus-agent 组件在使用过程中,由于集群规模逐渐扩大而引发性能等问题,导致不必要故障(例如:指标采集数据丢失),建议您参考以下常用操作,减少潜在隐患,提升 Prometheus-agent 组件的稳定性。 ​
常用操作​
升级版本​
如果您集群中的 Prometheus-agent 组件不是最新版本,建议您升级至最新版本。详情请参见 升级组件。​
注意​
Prometheus-agent 组件在 v2.8.0 版本中增加了组件自监控指标采集功能,允许使用容器服务的云原生观测功能监控组件自身的指标和状态。​
  • 如果组件版本小于 v2.8.0,请升级至最新版本。​
  • 如果暂时无法升级,请参考下文步骤二,创建组件自监控采集配置。​
请确保容器服务集群的 Prometheus-agent 组件为标准化方式部署,否则可能无法通过控制台升级。标准化部署方式如下:​
  1. 在左侧导航栏中选择 集群,单击需要配置的目标集群。​
  1. 在集群管理页面的左侧导航栏中,选择 组件管理,并选择 监控 页签。​
  1. 找到 Prometheus-agent 组件卡片,选择该组件右上角的 ... > 安装,即可安装该组件。安装时的配置项说明,请参见 安装组件。​
​​​
如果您希望采集集群中的容器基础指标,需要在集群中开启云原生观测和基础观测。详情请参见 开启观测、基础观测。​
创建自监控采集配置​
当您集群中的 Prometheus-agent 组件版本小于 v2.8.0 版本,且暂时无法升级时,可以参照如下步骤,在容器集群中使用 ServiceMonitor 创建自监控采集配置。​
  1. 在左侧菜单栏中选择 集群,并在右侧集群列表中选择目标集群。​
  1. 单击集群名称,进入集群配置页面。​
  1. 在左侧菜单栏中选择 工作负载 > 对象浏览器。 单击 使用 Yaml 创建 ,通过 ServiceMonitor 配置服务发现。​
  • 在 类型 下拉菜单中选择 自定义。​
  • 在 Yaml 配置框内输入 Yaml 配置。​
​
apiVersion: monitoring.coreos.com/v1​
kind: ServiceMonitor​
metadata:​
labels:​
volcengine.vmp: "true"​
name: prometheus-agent​
namespace: kube-system​
spec:​
endpoints:​
- bearerTokenSecret:​
key: ""​
interval: 15s​
path: /metrics​
port: http​
scheme: http​
scrapeTimeout: 10s​
namespaceSelector:​
matchNames:​
- kube-system​
selector:​
matchLabels:​
app.kubernetes.io/instance: prometheus-agent​
app.kubernetes.io/name: vmagent​
managed-by: vm-operator​
​
开启自动扩缩容​
随着集群规模和采集指标数量的逐渐增长,可能造成 Prometheus-agent 组件资源规格不满足需求,造成 OOM 或者采集受限,严重时会导致采集数据丢失。为避免上述问题,建议开启组件的自动扩缩容功能,系统会根据组件资源的使用情况,自动扩缩容采集组件的副本数。​
您可以在部署组件时或组件部署完成后,开启组件的自动扩缩容功能。本文组件部署完成后为例,操作步骤如下:​
  1. 在左侧导航栏中选择 集群,单击需要配置的目标集群。​
  1. 在集群管理页面的左侧导航栏中,选择 组件管理,并选择 监控 页签。​
  1. 单击 Prometheus-agent 组件卡片上的 配置,在弹出的配置页面中,启用组件扩缩容功能,并指定最大分片数。​
​​​
​
配置项​
说明​
组件扩缩容​
配置是否开启 vm-agent 采集器和 kube-state-metrics 组件的自动扩缩容功能。​
  • 不开启:组件的分片数为配置的初始分片数。不会随着资源占用率的提升而自动扩容。​
  • 开启:需要配置组件的最大分片数。组件会基于资源占用率自动扩缩容,具体逻辑如下:​
  • vm-agent 扩容:任一资源(CPU 或内存)使用率 > 70% 时,自动扩容。​
  • vm-agent 缩容:全部资源(CPU 和内存)使用率均 < 30% 时,自动缩容。​
  • kube-state-metrics 扩容:任一资源(CPU 或内存)使用率 > 70% 时,自动扩容。​
  • kube-state-metrics 缩容:全部资源(CPU 和内存)使用率均 < 70% 时,自动缩容。​
注意​
  • vm-agent 扩缩容冷却时间为 30 分钟。kube-state-metrics 基于 HPA 进行扩缩容量。​
  • 配置组件自动扩缩容功能后,请保证集群资源充足,否则可能由于资源不足,导致组件扩容失败。​
  • vm-agent 采集器和 kube-state-metrics 组件扩容时,为保证负载均衡,建议配置 kube-state-metrics 组件的分片数为 vm-agent 采集器分片数的整数倍,例如:kube-state-metrics 组件分片数:vm-agent 采集器分片数 为 1:1 或 2:1 等。​
​
配置告警​
托管 Prometheus 提供了 Prometheus-agent 组件的告警模版,建议您配置组件告警,方便第一时间发现组件的异常。​
说明​
告警模版中默认的告警阈值比较严格,如果实际产生有较多的告警,可自行根据情况调整阈值。​
  1. 在顶部导航栏,选择目标地域。​
  1. 在左侧导航栏中选择 告警中心 > 告警规则模板,选择 预置模板 页签。​
  1. 在 预置模板 页面中,找到 vmagent 告警模版。单击 操作 栏中的 应用模版。​
  • ​​​
  1. 配置具体的告警规则和阈值。配置详情,请参见 创建告警规则组。​
查看监控看板​
预置看板​
在集群中 开启云原生观测 后,您可以在托管 Prometheus 的预置看板中,查看 Prometheus-agent 组件监控看板。​
说明​
查看看板时,请选择与集群绑定的托管 Prometheus 工作区。​
  1. 登录 VMP 服务控制台。​
  1. 在顶部导航栏,选择目标地域。​
  1. 在左侧导航栏中选择 监控看板,在看板列表里搜索 vmagent 即可。​
​​​
建议重点关注看板中的以下图表:​
  • CPU 和 RSS memory % usage:该图表展示了组件资源使用情况。​
  • Persistent queue dropped:该图表展示了持久化队列是否有丢点。如果 vmagent 有性能问题或者异常情况,则对应指标无法发送至托管 Prometheus 工作区。此时,组件会将指标存储到持久化队列中,等待下次恢复后发送,如果该图表中的指标有展示,则表示整体发送有丢点的情况。​
  • RemoteWrite connection saturation:该图表展示了发送连接的饱和度。如果饱和度 > 80%,表明每个发送包的延迟较大,可以考虑调大 vmagent 的 CPU Limit 值,从而增大发送并发度。​
自建看板​
您也可以根据需求,自建 Grafana 并导入 Prometheus-agent 组件监控看板。详情请参见如下文档。​
  1. 看板:在自建 Grafana 中导入如下看板 JSON 配置文件。​
​
​
vmagent-dashboard.json
​
​
​
最近更新时间:2026.06.25 13:59:07
这个页面对您有帮助吗?
有用
有用
无用
无用