You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置通过Helm Charts安装的Prometheus抓取Vault指标

Vault Prometheus 指标抓取配置完整流程

第一步:确认Vault侧指标暴露配置生效

  • 首先检查Vault的Helm values配置,除了开启injector的metrics外,还要开启Vault主服务的指标暴露能力,完整配置参考:
server:
  telemetry:
    # 开启Prometheus格式指标输出
    prometheusRetentionTime: "24h"
    # 临时关闭Prometheus指标认证,排查完成后可按需开启
    disablePrometheusAuth: true
injector:
  metrics:
    enabled: true
    # injector指标默认暴露端口为8080
  • 执行升级命令让Vault配置生效:
    helm upgrade vault hashicorp/vault -f <你的vault-values文件路径> -n <Vault所在命名空间>
  • 验证指标暴露是否正常:在同集群同网络可达的Pod中执行以下命令,能正常返回指标文本即为配置生效
    • 主Vault指标:curl http://vault.<Vault所在命名空间>.svc:8200/v1/sys/metrics?format=prometheus
    • Injector指标:curl http://vault-agent-injector-svc.<Vault所在命名空间>.svc:8080/metrics

第二步:注解方式配置自动抓取(适合开启了Service/Pod注解自动发现的Prometheus场景)

  • 修改Vault的Helm values,给对应服务添加抓取注解:
server:
  service:
    annotations:
      prometheus.io/scrape: "true"
      prometheus.io/port: "8200"
      prometheus.io/path: "/v1/sys/metrics"
      prometheus.io/params_format: "prometheus"
injector:
  service:
    annotations:
      prometheus.io/scrape: "true"
      prometheus.io/port: "8080"
      prometheus.io/path: "/metrics"
  • 升级Vault release即可完成配置

注意:如果注解配置后仍然抓取失败,大概率是你的Prometheus自动发现组件不支持通过注解传递请求参数,直接使用下文的additionalScrapeConfigs方案即可。

第三步:additionalScrapeConfigs方式配置(兜底稳定方案)

  • 修改Prometheus的Helm values,在additionalScrapeConfigs字段下添加如下抓取任务:
additionalScrapeConfigs:
- job_name: 'vault-server'
  kubernetes_sd_configs:
  - role: service
    namespaces:
      names:
      - <替换为Vault所在的命名空间>
  relabel_configs:
  - source_labels: [__meta_kubernetes_service_label_app_kubernetes_io_name]
    regex: vault
    action: keep
  - source_labels: [__meta_kubernetes_service_label_app_kubernetes_io_component]
    regex: server
    action: keep
  metrics_path: /v1/sys/metrics
  params:
    format: ['prometheus']

- job_name: 'vault-injector'
  kubernetes_sd_configs:
  - role: service
    namespaces:
      names:
      - <替换为Vault所在的命名空间>
  relabel_configs:
  - source_labels: [__meta_kubernetes_service_label_app_kubernetes_io_name]
    regex: vault-agent-injector
    action: keep
  metrics_path: /metrics
  • 执行升级命令让Prometheus配置生效:
    helm upgrade prometheus prometheus-community/prometheus -f <你的prometheus-values文件路径> -n <Prometheus所在命名空间>

常见排障点

  • 确认Prometheus绑定的ClusterRole有对应命名空间下service、endpoint、pod资源的get/list/watch权限,权限不足会导致无法发现抓取目标
  • 确认集群网络策略没有阻断Prometheus到Vault命名空间8200、8080端口的访问
  • 登录Prometheus Web UI打开/targets页面,查看Vault对应抓取任务的报错信息,根据报错调整对应配置即可

内容的提问来源于stack exchange,提问作者jsmickey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 18:09:01