一、背景
最近接触了一款数据库性能洞察软件DBdoctor,出自海信(对,就是那个做家电的海信,我也是很吃惊),这款产品是用eBPF技术来诊断数据库性能问题的,而且这个软件只聚焦在数据库性能,所以对数据库性能问题研究的非常深入,比较适合我们这种没有专业DBA的公司,推荐给大家,他们还有一个技术交流群,关注公众号:“DBdoctor服务”就能进群,免费版不是全部功能,在群里跟他们聊聊天几乎就送你企业版,还是比较慷慨的。网上资料比较少,在这里专门记录下这款软件一些隐藏功能的使用方法,希望对大家有用。
产品官网:海信聚好看云服务—值得托付的人工智能互联网科技平台 - 海信聚好看云服务
这是他们产品负责人张纪宽的博客DBdoctor,致力于解决数据库的一切性能问题_dbdoctor.-CSDN博客,里面也有一些文章介绍,一并推荐给大家
本篇主要介绍:在已有Prometheus监控情况下,如何用DBdoctor直接引用Prometheus中的监控数据做性能诊断。
二、操作步骤
1. 使用admin账号登录管理员操作界面【安装成功后,默认密码123456】
2. 登录后选择数据采集管理->模板配置
a. 系统中内置了通用promethues规则,我们可以通过编辑,适配自己的promethues配置,也可以通过创建模板的方式新增数据采集模板
3. 模板编辑:
a. 我们需要将访问地址中的ip端口替换为自身promethues的ip和端口
b. 主机指标配置,根据当前promethues指标信息,进行修改,如果当前都适配可无需修改
4. 指标动态替换规则
因模板是适配所有实例的,像其中的动态参数,如主机ip、实例ID、租户项目、磁盘等信息,系统内置了占位符,进行动态替换,详细配置如下:
${NODE_IP} 替换为:当前实例的主机IP
${INSTANCE_ID}替换为:当前实例ID
${NAMESPACE}替换为 :租户-项目
${POD_NAME}替换为: 当前实例pod_name 【对外不暴露】
${LAST_DEVICE_NAME}替换为: 实例录入时的路径最后一位,如路径为/dev/sda1, 替换的字符串为sda1
${LAST_DEVICE_NAME_NO_NUMBER}替换为: 实例录入时的路径最后一位,如路径为/dev/sda1, 替换的字符串为sda
${DEVICE_NAME}替换为: /dev/sda1
${MYSQL_DATA_DIR}:替换为: 该实例SQL结果: SELECT @@datadir;
${MYSQL_IP}替换为:当前实例录入的IP
${MYSQL_PORT}替换为: 当前实例录入的PORT