【监控系统】可视化工具Grafana简介及容器化部署实战

1.什么是Grafana

官网地址:https://grafana.com/

Grafana用Go语言开发的开源数据可视化工具,可以做数据监控和数据统计,带有告警功能。支持快速灵活的客户端图表,面板插件有许多不同方式的可视化指标和日志,官方库中具有丰富的仪表盘插件。

数据源广: Graphite,InfluxDB,OpenTSDB,Prometheus,Elasticsearch,CloudWatch和KairosDB等。

  • 支持混合数据源,在同一个图中混合不同的数据源,可以根据每个查询指定数据源,甚至适用于自定义数据源。

报警:支持可视方式定义最重要指标的警报规则,Grafana将不断计算并发送通知,在数据达到阈值时进行告警。

过滤器:过滤器允许动态创建新的键/值过滤器,这些过滤器将自动应用于使用该数据源的所有查询。

在整个监控体系中,Exporter 数据生产者,采集需要监控的数据。Prometheus 普罗米修斯时序数据库,用来存储和查询的监控数据,从Exporter上拉取。Grafana 可视化工具仪表盘。

2.Grafana的特点

  • grafana拥有快速灵活的客户端图表,面板插件有许多不同方式的可视化指标和日志,官方库中具有丰富的仪表盘插件,比如热图、折线图、图表等多种展示方式,让我们复杂的数据展示的美观而优雅。
  • Grafana支持许多不同的时间序列数据(数据源)存储后端。每个数据源都有一个特定查询编辑器。官方支持以下数据源:Graphite、infloxdb、opensdb、prometheus、elasticsearch、cloudwatch。每个数据源的查询语言和功能明显不同。你可以将来自多个数据源的数据组合到一个仪表板上,但每个面板都要绑定到属于特定组织的特定数据源
  • Grafana中的警报允许您将规则附加到仪表板面板上。保存仪表板时,Gravana会将警报规则提取到单独的警报规则存储中,并安排它们进行评估。报警消息还能通过钉钉、邮箱等推送至移动端。但目前grafana只支持graph面板的报警。
  • Grafana使用来自不同数据源的丰富事件注释图表,将鼠标悬停在事件上会显示完整的事件元数据和标记;
  • Grafana使用Ad-hoc过滤器允许动态创建新的键/值过滤器,这些过滤器会自动应用于使用该数据源的所有查询。

3.Docker容器化部署Grafana

bash 复制代码
 docker run -d -p 3000:3000 --name=grafana grafana/grafana:8.1.5

浏览器访问http://IP+3000就能访问到登陆页面,默认用户名admin密码admin。

这就是grafana刚进来的页面。

OK,接下来我们来配置数据源,指定prometheus地址。



4.Grafana常用菜单和仪表盘配置实战

(1)用户和组织

  • 用户
    • Grafana 里面用户有三种角色 admin,editor,viewer。
    • admin 权限最高,可以执行任何操作,包括创建用户,新增 Datasource、DashBoard。
    • editor 角色不可以创建用户,不可以新增 Datasource,可以创建 DashBoard。
    • viewer 角色仅可以查看 DashBoard。
  • 组织
    • 每个用户可以拥有多个 Organization,用户登录后可以在不同的 Organization 之间切换。
    • 不同的 Organization 之间完全不一样,包括 datasource,dashboard 等都不一样。
    • 创建一个 Organization 就相当于开了一个全新的视图,所有的 datasource,dashboard 等都要再重新开始创建。

(2)数据源 (DataSource)

  • Grafana 支持多种不同的时序数据库数据源,对每种数据源提供不同的查询方法,而且能很好的支持每种数据源的特性
  • 可以将多个数据源的数据合并到一个单独的仪表板上

(3)仪表盘(Dashboard)

  • 最重要 UI 界面 仪表盘,通过数据源定义好可视化的数据来源,Dashboard 来组织和管理数据可视化图表

  • 仪表盘可以视为一组一个或多个面板组成的一个集合,来展示各种各样的面板。

  • Panel 在一个 Dashboard 中一个最基本的可视化单元为一个 Panel(面板)

  • 通过 Panel 的 Query Editor(查询编辑器)为每一个 Panel 添加查询的数据源以及数据查询方式,每一个 Panel 都是独立的

5.仪表盘配置使用步骤

(1)步骤一:创建dashboard

(2)步骤二:创建panel面板

(3)步骤三:配置数据项 jvm_memory_used_bytes

OK,到这里Grafana的简介以及安装配置就搞定啦,及得三连➕关注哦!

相关推荐
Wang's Blog8 小时前
Go-Zero 项目开发45: Prometheus + Grafana 安装部署与服务监控实战
golang·grafana·prometheus
行者-全栈开发5 天前
TIG 监控体系搭建:Telegraf + InfluxDB + Grafana 全链路实战
grafana·influxdb·服务器监控·tig·docker部署·监控系统·telegraf
Elastic 中国社区官方博客6 天前
将你的 Grafana Kubernetes 仪表板迁移到 Elastic Observability:相同的 PromQL,30 倍更快的查询
大数据·人工智能·elasticsearch·搜索引擎·容器·kubernetes·grafana
做个文艺程序员8 天前
Linux第24篇:Java应用监控体系搭建:Prometheus+Grafana可视化运维
java·grafana·prometheus
取谖慕12.9 天前
Prometheus+Alertmanager+node_exporter+grafana高可用
linux·运维·grafana·prometheus
爱莉希雅&&&10 天前
Prometheus高可用(alertmanager+node_exporter+grafana)
运维·服务器·grafana·prometheus
行者-全栈开发11 天前
【码动四季】Spring Boot 可观测性体系:Micrometer + OpenTelemetry + Grafana 全链路搭建
grafana·opentelemetry·micrometer·全链路追踪·分布式追踪·atomcode·spring boot可观测性
todoitbo12 天前
让数据看板随时可见:Grafana + cpolar 远程访问实战
ui·网络安全·grafana·数据看板·远程访问
维C°14 天前
Grafana实例-Gauge仪表盘面板
grafana
微三云 - 廖会灵 (私域系统开发)14 天前
电商系统监控告警体系从0到1:Prometheus+Grafana+AlertManager的全链路可观测性实践
oracle·grafana·prometheus