traefik监控基础配置

本文涉及的产品
可观测监控 Prometheus 版,每月50GB免费额度
可观测可视化 Grafana 版,10个用户账号 1个月
简介: traefik监控基础配置

- 说明

  • Prometheus是云原生时代事实上的系统(服务)状态监测标准,通过基于HTTP的pull方式采集时序数据,可以通过服务发现或者静态配置去获取要采集的目标服务器,支持单主节点工作,支持多种可视化图表及仪表盘--在本文中Prometheus用来收集Traefik Metrics数据
  • Grafana是一个开源的度量分析与可视化套件。 纯Javascript 开发的前端工具,通过访问库(如InfluxDB、Prometheus),展示自定义报表、显示图表等。Grafana的UI更加灵活,有丰富的插件,功能强大--在本文中Grafana用来展示来自Prometheus和Loki的数据

    但是如果没有一个可视化的Traefik访问状态与Acces Log的Dashboard界面的话,对于一个网关来说实际上是不完整的,这里只是用了以上两个可视化平台,关于细节还需要研究

1. prometheus的安装

#下载
wget https://github.com/prometheus/prometheus/releases/download/v2.41.0/prometheus-2.41.0.linux-amd64.tar.gz
#解压
tar -zxvf prometheus-2.41.0.linux-amd64.tar.gz
#修改全局配置
vi prometheus.yml

配置如下内容:prometheus.yml

scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: "prometheus"

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
      - targets: ["localhost:9090"]
#以下是traefk的metrics的监控地址
  - job_name: "traefik"
    static_configs:
      - targets: ["localhost:8080"]

启动prometheus监控:

./prometheus --config.file=./prometheus.yml --web.listen-address=0.0.0.0:9090 --storage.tsdb.path=/data/trash/watch/prometh
eus-2.41.0.linux-amd64/data

打开浏览器,输入localhost:9090打开控制面板

2.安装granfana

#下载&解压
wget https://dl.grafana.com/enterprise/release/grafana-enterprise-9.3.2.linux-amd64.tar.gz
tar -zxvf grafana-enterprise-9.3.2.linux-amd64.tar.gz
#启动
./bin/grafana-server web
#配置数据源,打开浏览器输入:localhost:3000,设置用户名密码admin/admin
#打开左侧面板Configuration-》data sources->右侧选择Prometheus --add datasource
#填入HTTP的配置http://localhost:9090,点击保存
#配置面板
#打开左侧面板Dashboards-》import->4475  或者通过https://grafana.com/grafana/dashboards/4475-traefik/下载json并载入配置即可

3.treafik 配置修改

打开traefik.yml增加如下配置:

tracing: {}
metrics:
    prometheus: {}

granfana统计展示如下:
1673862724023.png

相关文章
|
存储 Prometheus 监控
K3S环境下接入Prometheus,grafana,等监控套件
因为常规的监控都是用K8S做的,而K3S上的监控方案少之又少,如果直接用rancher上的prometheus监控,会消耗至少2G的内存,于是我们就自己做了K3S和pg数据库的监控,并且通过我们自己做的监控,可以减少一些不必要的性能开销。主要监控容器资源消耗,宿主机资源消耗,pg数据库资源消耗
4408 0
K3S环境下接入Prometheus,grafana,等监控套件
|
负载均衡 应用服务中间件 nginx
基于Ubuntu-22.04安装K8s-v1.28.2实验(二)使用kube-vip实现集群VIP访问
基于Ubuntu-22.04安装K8s-v1.28.2实验(二)使用kube-vip实现集群VIP访问
419 1
|
jenkins Java 持续交付
运用Jenkins实现Java项目的持续集成与自动化部署
在新建的Jenkins Job中,我们需要配置源码管理,通常选择Git、SVN等版本控制系统,并填入仓库地址和凭据。接着,设置构建触发器,如定时构建、轮询SCM变更、GitHub Webhook等方式,以便在代码提交后自动触发构建过程。
506 2
|
关系型数据库 MySQL Java
java协程操作mysql数据库
本文介绍了如何在Java项目中使用虚拟线程和协程操作MySQL数据库,并通过代码示例展示了如何利用CompletableFuture实现非阻塞数据库连接和操作。
154 2
java协程操作mysql数据库
|
数据可视化 关系型数据库 MySQL
【MySQL】MySQL8.0 创建用户及授权 - 看这篇就足够了
本文介绍了在MySQL 8.0+版本中创建和管理用户的详细步骤,包括通过命令行进入MySQL、创建数据库、用户及授权等操作,并提供了具体命令示例。适合初学者参考学习,帮助实现系统的权限管理和安全控制。
7681 3
【MySQL】MySQL8.0 创建用户及授权 - 看这篇就足够了
|
缓存 监控 NoSQL
Redis在减轻数据库压力中的关键角色
**摘要:** 本文介绍了Redis如何减轻数据库压力。Redis作为高性能内存数据库,利用其缓存热点数据、异步处理、分布式锁和数据聚合功能降低数据库负载。实践中,应合理设置缓存策略,优化数据结构和查询,监控告警并进行扩容容灾,以确保系统性能和稳定性。
510 4
|
Kubernetes 网络虚拟化 网络架构
k8s 网络组件详细 介绍
k8s 网络组件详细 介绍
|
消息中间件 缓存 算法
消息队列进阶-1.消息队列的应用场景与选型
消息队列进阶-1.消息队列的应用场景与选型
354 0
|
JavaScript Java 测试技术
从零开始:Nexus私服搭建与Maven仓库配置的完全指南
从零开始:Nexus私服搭建与Maven仓库配置的完全指南
22600 7