引文
在数据库运维过程中,所应用的运维治理平台是否存在这样的问题:
- 1、默认监控粒度不够,业务须要更细颗粒度的监控数据。
- 2、平台默认的监控命令不适宜,须要调整阈值量身定制监控策略。
- 3、不同类型的实例或组件须要有不同的监控重点,但治理平台监控固化,难以应答多样化的监控需要。
- 4、只监控零碎要害指标,屏蔽不必要的指标,优化CPU耗费、网络、采集数据量等,缩小资源耗费,晋升零碎性能。
在数据库运维过程中,用户或者DBA常常会因为治理平台监控面板无奈配置,或者监控模板固化,监控模板中没有所关注的指标项,而不得已弃用局部治理平台,进而自建监控或者基于本身业务自定义一批运维监控脚本,来实现数据库或者主机的多样化监控需要。
但这些脚本往往出自不同DBA之手,监控脚本的治理、更新和保护,以及危险评估给数据库的稳固运行带来了新的危险,而且脚本的输入后果须要DBA周期查看剖析,展现上也不够直观。明天咱们来看下GreatADM是如何解决上述问题的。
一、GreatADM的监控介绍
GreatADM提供灵便的自定义监控配置办法,反对通用的prometheus+grafana
的标准,用户能够依照理论业务上的需要,通过配置规范的grafana面板json格式文件或者通过图形化选项配置监控采集项,手动定义dashboard面板。用户可按需灵便的配置监控面板。同时GreatADM反对用户按需调整监控数据的采集频率、监控超时阈值等,用户可按理论业务需要来定义调整,以及对应的SQL命令的调整等。
GreatADM提供不同数据库架构的监控指标和监控模板,反对采集频率、超时阈值的调整,并提供3个维度监控:
- 1、架构层面:数据库高可架构整体全局状态概览和复制状态、提早、运行时长、趋势概览。
- 2、数据库实例:数据库实例节点层面的监控,如SQL执行状况,内存稳定,网络申请,I/O负载等方面监控。
- 3、物理主机:数据库实例所在主机性能指标如CPU、内存、IO、磁盘用量等,能够发现数据库的性能瓶颈,及时进行优化。
针对监控采集,DBA在分析判断问题时,也可清晰理解到监控应用的SQL命令是什么,办法是否和本人的应用的SQL雷同等。
如果下面的监控指标,或者面板不是你想要的,接下来咱们就具体看下GreatADM如何自定义业务中,或者DBA想要的监控项,和监控面板的配置。
二、如何自定义GreatADM的监控面板
配置整体步骤如下:
- a、增加监控采集指标,编辑采集命令
- Demo1:只监控Linux根空间用量
- Demo2:监控慢日志累计增长量
- b、查看采集器是否无效
- c、配置监控面板
- d、自定义监控实现
- e、多个面板配置在同一页面
1、增加空间采集项
Demo1、【如何减少主机自定义监控项---独立监控linux根空间用量】
针对以下选项:
填写采集组名称:host_root
采集频率:300s
采集超时:5s
采集组默认是否启用:启用
增加到哪个类型数据库架构:paxos高可用复制
采集指标:数据库主机
抉择任一节点:hostname
运行shell采集命令:df -Th|grep root|awk -F' ' '{print $6}'|awk -F'%' '{print $1}'
采集命令留神:监控主机,则采集语句为shell命令,指标抉择主机;监控数据库,则采集语句为SQL命令,指标抉择数据库。另外对应的采集器返回的后果只容许是"单项后果值",如果存在多列,多行后果,对应的采集器会报错,并且无奈失常采集。
采集器增加实现之后,信息如下
查看对应的采集命令
Demo2、【如何减少数据库自定义监控项---数据库慢日志增长趋势】
针对以下选项配置办法同上:
填写采集组名称:slow_queries
采集频率:5s
采集超时:5s
采集组默认是否启用:启用
增加到哪个类型数据库架构:paxos高可用复制
采集指标:数据库实例
抉择任一实例节点: 抉择数据库名:paxos_600 实例节点:database_1
运行SQL采集命令:select variable_value from performance_schema.global_status where variable_name='slow_queries'
提交并查看监控项信息
应用的SQL语句
增加采集项的整体配置流程能够总结为:
- 1抉择类型
- 2抉择主机/数据库
- 3采集命令
- 4运行采集命令
- 5提交并查看
2、查看新增采集项是否无效
抉择【监控告警】--子项【查问】来验证新减少的采集项是否可采集到数据,以及前端绘图是否失常
点击【应用查问】可看到对应的graph的绘制图,点击【查看】,可具体看到采集项【统计数据】,如下共采集了482行。以后因为我抉择了2台主机的,因截图遮展现框盖住了另外一台的绘图。
具体【数据】可查看到时序工夫对应的主机采集的磁盘数值。
登录主机和理论主机的磁盘根空间比照查看
确认对应的采集数据能够失常,无误,为可用状态。(数据库的采集项和此查看统一,这里就不在赘述了)。 接下来就能够配置grafana面板了。
3、配置监控面板
登录GreatADM的http://172.17.139.50/graph/login
可间接跳转到GreatADM集成Grafana面板配置页,默认账号为admin,明码为GreatADM内置的初始密码。
抉择【+】 Dashboard--增加新的【panel】
在这里Data sorce 抉择【监控】
点击【指标浏览器】--搜寻栏搜寻采集项名称【host_root】--匹配到【node_ext_host_root_demo】--主动匹配【address标签】展现可监控的主机IP列表
抉择要监控的主机【IP】--点击【应用查问】--可失常绘制监控图 调整横坐标轴的题目title【主机 "/" 根空间使用率】和纵坐标的lable形容【磁盘空间使用率(%)】
下一步针对绘图线的格局调整,点击【选项】--【图例】--【自定义(提供命名模板)】
将{{label_name}}批改为{{address}}之后,对应的主机信息就残缺了
保留配置,并为Dashboard 定义名称
配置好之后的Grafana面板如下:
接下来只须要将定义好的面板的json数据配置信息,cp到greatadm的自定义监控项中,粘贴进去即可。
4、实现自定义监控面板
拷贝以后配置实现的Grafana面板的json数据,到greatadm自定义面板页面,抉择【Edit】
点击【配置的齿轮图标】
抉择【JSON Model】--全选--复制即可
点击GreatADM的【监控告警】---【自定义监控】--【新增监控面板】--粘贴拷贝的json文本
提交即可看到自定义的监控面板了。
同样的形式配置slow_queries的增长趋势,办法和主机监控的雷同,这里就不在反复介绍了。整体成果如下2个面板针对不同的监控项做定制。
但此时有人问了,如何将面板都配置在同一页面中呢?
5、多个面板如何配置在同一页面
如果将多个面板如何配置在同一页面中展现呢,比方将慢日志增长趋势的和主机根空间配置在一起。接下来持续看。 抉择 【add panel】--增加新的面板
将慢查问增长趋势,失常配置进去
调整--【选项】--【自定义】--【{{address}}:{{port}}:{{name}}】对应【数据库实例IP:端口:实例名】,配置办法齐全始终。
最终在GreatADM页面点击【保留】之后,配置成果如下
验证监控成果; 慢查问增长通过:select sleep(10);select sleep(10);select sleep(10)
; 减少3条慢查问记录,从9条减少到12条。
磁盘空间应用dd 命令,长期创立1个10G的大文件,看根空间的使用率变动,从50%增长到55%
[root@gip /]# dd if=/dev/zero of=/test_root_space bs=1024M count=10
增长趋势变动可直观的查看到,与理论数据库和主机的值匹配。示意监控项是无效可用可直观察看到变动。
三、自定义监控的应用场景和意义
为什么须要自定义监控性能解决了用户和dba现场保护数据库时的几个诉求,以及提供基于业务可定制监控的路径。其意义如下:
1、个性化监控:不同类型的实例或组件须要有不同的视角,但治理平台监控固化,而自定义监控解决了应答多样化的监控需要。自定义监控面板容许管理员抉择所需的监控指标和图表,依据本人的理论需要来展现重要的数据库运行数据,进步信息关注度和有效性。
2、重点监控:针对特定的业务需要,管理员能够将自定义面板中的监控指标和图表设置为关注重点,确保数据库的要害性能和性能失去优先监控。
3、运行趋势监控:数据库治理平台自定义监控面板可能进步数据的可视化水平。使数据库性能和健康状况更容易了解和剖析。通过设置预警和警报规定,自定义面板有助于及时发现潜在问题,并采取措施进行干涉,确保数据库的稳固运行。 这也是GreatADM再联合诸多业务的理论运维场景,紧贴用户理论需要开发的产品,真正做到易用,好用,可灵便配置,解决理论问题为目标,为数据库的安稳运行保驾护航。
Enjoy GreatSQL :)
## 对于 GreatSQL
GreatSQL是实用于金融级利用的国内自主开源数据库,具备高性能、高牢靠、高易用性、高平安等多个外围个性,能够作为MySQL或Percona Server的可选替换,用于线上生产环境,且完全免费并兼容MySQL或Percona Server。
相干链接: GreatSQL社区 Gitee GitHub Bilibili
GreatSQL社区:
社区博客有奖征稿详情:https://greatsql.cn/thread-100-1-1.html
技术交换群:
微信:扫码增加GreatSQL社区助手
微信好友,发送验证信息加群
。