Traefik指标适用于Prometheus,但Grafana仪表板为空 部署YAML参数 Configmap TOML文件 Prometheus服务监视器YAML 使用CURL的盗版指标

我已经为Trafeik(v1.7.15)Prometheus运算符配置了稳定的HELM图表(chart version 8.2.4)

但是,我看不到Grafana仪表板中的任何指标数据,它们为空。

我还可以使用pod IP:8080命令查看curl端口附带的度量标准。请参考以下指标摘录和一些重要的配置清单。

我还可以看到trafeik的{​​{1}}服务监视器处于UP状态,并且我对Prometheus指标和那些Mongo/Postgres/Rabbit MQ仪表板执行了相同的策略具有丰富的数据表示集并且可以正常工作。

如果有人可以指导我正确地解决和显示grafana中的Trafeik入口控制器度量标准,那么非常感谢?还让我知道原因吗?

我正在使用以下grafana仪表板,但没有显示数据。 很少的仪表板ID-44758214117416293

谢谢

Grafana配置:

部署YAML参数

Trafeik

Configmap TOML文件

    ports:
    - name: http
      containerPort: 80
    - name: admin
      containerPort: 8080
    - name: https
      containerPort: 443
    args:
    #- --api
    - --web
    - --web.metrics.prometheus
    - --kubernetes
    - --logLevel=INFO
    - --configfile=/config/traefik.toml
    volumeMounts:
    - mountPath: /config
      name: config
    - mountPath: /ssl
      name: ssl

Prometheus服务监视器YAML

  traefik.toml: |
    # traefik.toml
    logLevel = "INFO"
    defaultEntryPoints = ["http","https"]
    [entryPoints]
      [entryPoints.http]
      address = ":80"
      [entryPoints.http.redirect]
      entryPoint = "https"
      [entryPoints.https]
      address = ":443"
      [entryPoints.https.tls]
        [[entryPoints.https.tls.certificates]]
        CertFile = "/ssl/tls.crt"
        KeyFile = "/ssl/tls.key"
    [metrics]
      [metrics.prometheus]
        buckets = [0.1,0.3,1.2,5.0]

使用CURL的盗版指标

apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
    name: traefik-sm
    labels:
        release: my-prometheus
spec:
    selector:
      matchLabels:
        k8s-app: traefik-ingress-lb
    namespaceSelector:
      any: true
    endpoints:
    - port: admin-ui
      name: traefik-ingress-service
      targetPort: 8080
      path: /metrics
      interval: 10s
      honorLabels: true
wow_365763491 回答:Traefik指标适用于Prometheus,但Grafana仪表板为空 部署YAML参数 Configmap TOML文件 Prometheus服务监视器YAML 使用CURL的盗版指标

traefik导出的指标太少

如果您检查导出的指标,则该指标太少:

$ curl -s http://10.96.1.141:8080/metrics | grep -P '^traefik_'

traefik_backend_server_up{backend="auth-jooqa.abc.com/",url="http://192.168.22.77:8180"}
traefik_config_last_reload_failure 0
traefik_config_last_reload_success 1.585741581e+09
traefik_config_reloads_failure_total 0
traefik_config_reloads_total 4

很难用您的一组指标来找到现成的grafana仪表板

让我们在提到的信息中心中的grep expr标签(4475821411741,[6293](https://grafana.com/grafana/dashboards/6293

for dashboard_url in 'https://grafana.com/api/dashboards/4475/revisions/4/download' 'https://grafana.com/api/dashboards/6293/revisions/2/download' 'https://grafana.com/api/dashboards/8214/revisions/1/download' 'https://grafana.com/api/dashboards/11741/revisions/1/download' ; do
  echo "\t = Dashboard: $dashboard_url = "
  curl -s $dashboard_url | jq '.panels[].targets[0].expr' | grep -Po 'traefik_[a-z_]+' | sort |uniq
done
))

上面的命令返回相应仪表板的traefik_*中使用的expr个指标的列表:

         = Dashboard: https://grafana.com/api/dashboards/4475/revisions/4/download =
traefik_backend_request_duration_seconds_sum
traefik_backend_requests_total
traefik_backend_server_up
traefik_config_reloads_total
traefik_entrypoint_requests_total
         = Dashboard: https://grafana.com/api/dashboards/6293/revisions/2/download =
traefik_backend_open_connections
traefik_backend_request_duration_seconds_sum
traefik_backend_requests_total
traefik_entrypoint_open_connections
traefik_entrypoint_request_duration_seconds_sum
traefik_entrypoint_requests_total
         = Dashboard: https://grafana.com/api/dashboards/8214/revisions/1/download =
traefik_backend_request_duration_seconds_sum
traefik_backend_requests_total
traefik_entrypoint_request_duration_seconds_sum
traefik_entrypoint_requests_total
         = Dashboard: https://grafana.com/api/dashboards/11741/revisions/1/download =
traefik_entrypoint_open_connections
traefik_entrypoint_request_duration_seconds_sum
traefik_entrypoint_requests_total
traefik_service_open_connections
traefik_service_request_duration_seconds_count
traefik_service_request_duration_seconds_sum
traefik_service_requests_total

您会看到,仅使用了5个指标中的两个。

让我们尝试找到合适的仪表板

由于这4个信息中心不适用于您的指标集,因此,请尝试在GitHub中找到合适的信息中心:

  • traefik_backend_server_up8 code results
  • traefik_backend_server_uptraefik_config_reloads_total11 code results
  • traefik_config_last_reload_failure OR traefik_config_last_reload_success OR traefik_config_reloads_failure_total1 code results

建议

因此,id建议:

  • 要么尝试更新traefik来公开更多实际的指标集
  • 或创建自己的信息中心,it's easy

P.S。 grafana-dashboard-builder 可更轻松地创建Grafana仪表板

有一个开源工具可以更轻松地创建仪表板:

jakubplichta/grafana-dashboard-builder: Generate Grafana dashboards with YAML

当前它支持三个数据存储:

  • 石墨
  • 普罗米修斯
  • InfluxDB
本文链接:https://www.f2er.com/2530225.html

大家都在问