接入 Grafana 的整体思路:
数据类型 | 来源组件 | 数据采集方式 | Grafana 展示方式 |
---|---|---|---|
请求数 / 错误率 | Edge Stack / Envoy | Prometheus 指标采集 | Grafana 仪表盘(PromQL) |
响应时间 | Edge Stack / Envoy | Prometheus + metrics API | 时间序列图、热图等 |
状态码分布 | Edge Stack | Prometheus | 饼图 / 柱状图 |
Trace 信息 | Edge Stack + Jaeger | OpenTelemetry / Zipkin | Grafana Tempo 面板 |
步骤说明
1.开启 Edge Stack 的 Prometheus Metrics
Edge Stack 是基于 Envoy 实现的,它默认暴露了 Prometheus 格式的指标接口。
你需要:
apiVersion: getambassador.io/v3alpha1
kind: Module
metadata:
name: ambassador
spec:
config:
diagnostics:
enabled: true
statsd:
enabled: true
metrics:
enabled: true
use_remote_address: false
xff_num_trusted_hops: 1
并确保 Prometheus 可以抓取以下地址:
http://<edge-stack-admin-service>:8877/metrics
2. Prometheus 配置抓取 Edge Stack 指标
在 Prometheus 中添加 scrape 目标,例如:
scrape_configs:
- job_name: 'edge-stack'
metrics_path: /metrics
static_configs:
- targets: ['ambassador-admin.ambassador:8877']
或者通过 Kubernetes service discovery 自动抓取。
3. Grafana 添加数据源
- 添加 Prometheus 数据源
- 选择已有的 Dashboard,或导入官方模板
💡 Grafana 有多个社区提供的仪表盘,比如id:
13758
4698
效果展示:
评论区