微服务框架(二十三)Prometheus + Grafana 安装、配置及使用

简介: 此系列文章将会描述Java框架Spring Boot、服务治理框架Dubbo、应用容器引擎Docker,及使用Spring Boot集成Dubbo、Mybatis等开源框架,其中穿插着Spring Boot中日志切面等技术的实现,然后通过gitlab-CI以持续集成为Docker镜像。本文为Prometheus + Grafana 安装、配置及使用本系列文章中所使用的框架版本为Spring ...

  此系列文章将会描述Java框架Spring Boot、服务治理框架Dubbo、应用容器引擎Docker,及使用Spring Boot集成Dubbo、Mybatis等开源框架,其中穿插着Spring Boot中日志切面等技术的实现,然后通过gitlab-CI以持续集成为Docker镜像。

  本文为Prometheus + Grafana 安装、配置及使用

本系列文章中所使用的框架版本为Spring Boot 2.0.3-RELEASE,Spring 5.0.7-RELEASE,Dubbo 2.6.2。

Prometheus

prometheus.yml

先创建prometheus.yml文件,初始化配置

global:
  scrape_interval: 15s
  evaluation_interval: 15s

scrape_configs:
  - job_name: 'prometheus'
    static_configs:
    - targets: ['127.0.0.1:9090']

docker容器启动

采集数据持久化在磁盘中,docker启动时挂载的data目录需授权

prometheus 运行过程中使用的用户是nobodydata目录权限需设置为757

  • prometheus.yml为promethus的配置文件,修改后需重启生效
  • /prometheus/data为promethus的磁盘持久化数据
  • --config.file=/etc/prometheus/prometheus.yml为启动容器时加载的配置文件
docker run -d \
--name prometheus \
--net monitor \
--hostname prom \
-p 9090:9090 \
-v /media/raid10/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml \
-v /media/raid10/prometheus/data:/prometheus/data \
prom/prometheus \
--config.file=/etc/prometheus/prometheus.yml

增加promtheus拉取数据的项目,需在挂载的配置文件prometheus.yml中增加对应的Endpoint设置并重启服务

增加数据采集点

修改prometheus.yml配置文件

scrape_configs:
  - job_name: 'controller'
    metrics_path: '/actuator/prometheus'
    static_configs:
      - targets: ['localhost:9700']
        labels: 
          application: dubbo

重启Prometheus

docker restart prometheus

最佳做法

  1. --storage.tsdb.retention.time定义旧数据的删除策略,默认为15d
  2. Prometheus RE2语法正则表达式

Grafana

docker容器启动

  • auth.anonymous为匿名登录选项,设置为enabled=true即可免登录(Viewer)
  • grafana.ini为配置文件
  • 挂载/etc/timezone/etc/localtime文件,使grafana-reporter生成报表时使用服务器时区
docker run -d \
--name grafana \
--net monitor \
-p 3000:3000 \
-v /media/raid10/grafana/grafana.ini:/etc/grafana/grafana.ini \
-v grafana:/var/lib/grafana \
-v /etc/timezone:/etc/timezone \
-v /etc/localtime:/etc/localtime \
grafana/grafana

监控报警

  1. 添加监控通知渠道Alerting->Notifications channels
  2. 为图表设置报警配置Alert Config
  3. 为图表设置添加报警渠道及信息

常用的报警渠道有EmailDingDingWebhook

模板变量

报警中不能使用带模板变量的查询语句

issue-查询语句的模板变量支持

dashboard

常用模板

plugins

1.进入容器

docker exec -it grafana /bin/bash

2.安装对应插件

grafana-cli plugins install grafana-piechart-panel

查找对应的图表ID,安装完成后退出容器

3.重启grafana

docker restart grafana
相关文章
|
存储 Prometheus 监控
Grafana 系列文章(十四):Helm 安装 Loki
Grafana 系列文章(十四):Helm 安装 Loki
|
Prometheus 监控 Kubernetes
Prometheus 在微服务架构中的应用
【8月更文第29天】随着微服务架构的普及,监控和跟踪各个服务的状态变得尤为重要。Prometheus 是一个开源的监控系统和时间序列数据库,非常适合用于微服务架构中的监控。本文将详细介绍 Prometheus 如何支持微服务架构下的监控需求,包括服务发现、服务间的监控指标收集以及如何配置 Prometheus 来适应这些需求。
652 3
|
Prometheus 监控 Cloud Native
Prometheus+Grafana(docker安装)
本文档详细介绍了如何使用Docker容器快速部署Prometheus监控系统和Grafana数据可视化平台。该方案适用于需要快速搭建监控环境的开发测试场景,具备部署简单、资源占用低、易于维护等特点。
|
Prometheus 监控 Cloud Native
基于Docker安装Grafana和Prometheus
Grafana 是一款用 Go 语言开发的开源数据可视化工具,支持数据监控和统计,并具备告警功能。通过 Docker 部署 Grafana 和 Prometheus,可实现系统数据的采集、展示和告警。默认登录用户名和密码均为 admin。配置 Prometheus 数据源后,可导入主机监控模板(ID 8919)进行数据展示。
1279 4
|
Prometheus 监控 Cloud Native
prometheus学习笔记之Grafana安装与配置
prometheus学习笔记之Grafana安装与配置
3715 2
|
Prometheus 监控 Cloud Native
使用Prometheus搞定微服务监控
使用Prometheus搞定微服务监控
使用Prometheus搞定微服务监控
|
SQL 监控 数据库
grafana 配置自定义dashboard
grafana 配置自定义dashboard
1797 0
grafana 配置自定义dashboard
|
Kubernetes Cloud Native 持续交付
云原生架构的核心组成部分通常包括容器化(如Docker)、容器编排(如Kubernetes)、微服务架构、服务网格、持续集成/持续部署(CI/CD)、自动化运维(如Prometheus监控和Grafana可视化)等。
云原生架构的核心组成部分通常包括容器化(如Docker)、容器编排(如Kubernetes)、微服务架构、服务网格、持续集成/持续部署(CI/CD)、自动化运维(如Prometheus监控和Grafana可视化)等。
|
Prometheus 监控 Cloud Native
基于prometheus的微服务指标监控
基于prometheus的微服务指标监控
阿里云Grafana服务支持一键安装Grafana插件
【2月更文挑战第12天】阿里云Grafana服务支持一键安装Grafana插件
360 4

推荐镜像

更多