一 概述
基础设施监控对于确保系统的稳定性和性能至关重要。而要有效地监控和管理基础设施,可视化是一种强大的工具。本文将介绍如何使用Grafana和Flowcharting来实现基础设施监控的可视化,包括监控指标的收集、数据展示和报警通知等方面。通过合理的设计和配置,我们可以快速建立起一个直观、实时、可操作的监控系统,提高基础设施的可靠性和响应能力。
关键词:Grafana、Flowcharting、基础设施监控、可视化、监控指标。
二 背景
flowcharting是grafana社区提供的一款插件,其借助开源绘图工具drawio可以实现定制化的的业务链路动态监控,将各项监控指标以更加面向业务的图表形式进行展示,可以实现网络拓扑图、流程图、架构图等等各种图形,将比较分散的指标统一成可视化的监控图形。
三 特点
Grafana结婚Flowcharting可以实现可视化架构图,集成数据指标和流程的特点:
四 实战
4.1 Flowcharting部署
在Grafana插件中寻查询Flowcharting插件,并进行部署
4.2 利用Drawio.io 绘制业务架构图
draw.io 是一款免费的在线图表编辑工具, 可以用来编辑工作流, BPM, org charts, UML, ER图, 网络拓朴图等 ,开源免费,并且支持多平台,图形可以多种形式导出,并且可以复制图形的XML导入到flowcharting中。
draw.io的在线地址为:www.draw.io/index.html
也可以私有化部署draw.io,再次使用K8s部署draw.io,进行架构图绘制
使用draw.io画好了图形以后,使用Extras->Edit Diagram,复制XML。
4.2 架构图绘制
点击+->Create,创建DashBoard,点击"Add new panel",在Visualization中选择FlowCharting选项,panel中会出现如下自带默认案例图:
选择FlowCharting类型
一共包含四个指标
4.2.1 Panel options
4.2.2 Flowchart
Flowchart Flowchart小节重要的内容是Definition,其中的"source type"代表导入的图形数据的类型,支持XML和CSV,一般使用draw.io画的图形导入使用XML类型
注意:直接利用Edit Draw绘制的图形无法显示,需先在drawio.io中绘制然后复制xml,之后可以利用grafana中的edit draw进行编辑修改。
"source content"就是draw.io图形导出的XML黏贴的地方。 还有Advanced小节的内容,主要配置项如下:
其他属性:
- Scale 对图形进行缩放。
- Center 图形居中进行显示。
- Grid 背景显示网格。
- Bg Color 用于配置图形的背景色。
- Lock 对图形上的元素对象进行锁定,不允许拖动修改。
- Allow draw.io.source 允许从draw.io下载图形。
- Enable animation 启用动画效果。
- Tooltip 允许提示信息,当鼠标经过时提示相应的信息。
4.2.3 Mapping
Mapping顾名思义,是将图形中的元素和Grafana中的查询指标进行映射关联,并有多种展现形式及根据指标显示的交互状态。
Rule name:为规则名称
Apply to metrics:为利用grafana查询出来的结果,也是规则与查询匹配的关联条目
Aggregation:查询结果的呈现方式
Type:为查询结果的显示类型,可以为数字、字符串、日期等。
Unit:为查询结果的显示单位;
Decimals:结果为数字,小数点保留位数;
Thresholds为定义数据显示的状态,可以为基础正常,警告、紧急等,可以根据指标定制多个等级。
Tooltips为显示标签内容
label:需要自定义显示内容;
When state is:为显示条件
Direction:为显示方式,垂直或水平
Graph Tooltips为鼠标移动到对应图形上有图形展示
Graph type:可以图标展示形式为线形,或直方图;
Graph Size:图表显示大小,可以自适应,或者大中小等;
Y-Min/Y-Max:自定义x、y轴
Scale type:显示为你的数据可视化选择合适的刻度类型
Color/Tooltip Mappings,颜色和提升工具的映射
identify by:通过图形的label或者id来执行映射,
之后是映射条件,what为那个图形,when为什么条件执行,how执行什么动作。
Label/Text Mappings展示图形关联文本
链接映射,点击图形可以跳转到对应链接地址
事件动画映射。
可以Copy Rule快速创建第二条规则。
4.2.4 Inspect
Inspect可以帮助用户查看图像ID,实现ID与查询结果的映射。
五 展示
再次仅简单展示部分图表,可根据自身业务架构绘制对应架构图,同时可根据不同场景绘制不同应用架构。
查看LB的入口流量
查看到Node11的流量
查看node11的资源情况
查看负载均衡信息
点击具体资,可调整到详细资源图表查看
六 其他
-
需要提前在drawio中绘制好图形,在复制到grafana中,直接使用Flowcharting中的编辑,导致图形丢失bug。
-
如果图形复杂,需要有较多的query和rule,配置起来较麻烦。
-
如果架构图中元素更改了,需要更新其中配置,因此适用于变化较少的架构,弹性架构不合适。
-
如果不生效需要先保存然后F5强刷下!有时还会应为网络原因部分数据无法加载。
七 总结
结合Grafana和Flowcharting可以实现数据可视化、流程描述、故障排查、优化和决策辅助等功能,提高工作效率和结果的准确性。