利用GaussDB的可观测性能力构建故障模型

server/2024/9/22 18:08:34/

D-SMART高斯专版已经开发了几个月了,目前主要技术问题都已经解决,也能够初步看到大概的面貌了。有朋友问我,GaussDB不已经有了TPOPS了,为什么你们还要开发D-SMART高斯专版呢?

实际上TPOPS和D-SMART虽然都可以用于Gaussdb的运维监控,不过其分工还是十分明显的。TPOPS是华为GaussDB自带的运维工具,从数据库部署开始就一直可以使用。TPOPS+DBMind也具有一定的运维分析能力,不过这些功能都是基于传统的运维管理理念的。D-SMART是一个运维知识自动化系统,其目的是实现更加数字化的运维监控、故障预警、根因分析(RCA)、自动化巡检等,今后还会依托D-SMART的数据构建线上的SAAS生态。D-SMART是一个十分强大的知识自动化平台,可以不断沉淀用户自己的运维知识,包括各种健康模型、故障模型和诊断工具。这些都是TPOPS不具备的功能,因此D-SMART可以作为TPOPS的有效补充。

另外一方面,D-SMART高斯专版会支持所有的高斯生态产品,包含华为GaussDB集中式/分布式,openGauss、南大通用GBASE 8C、海量Vastbase、神通数据库、磐维、MogDB等。

 

 

 D-SMART是从运维视角来看待GaussDB的。从入口上,D-SMART与TPOPS的视角就完全不同。

 使用过D-SMART的用户送GaussDB专版没有任何学习成本,可以很轻松的通过工具去对GaussDB集群进行分析。

 配套的D-SMART V2.6版本提供了一个图形化的集群拓扑。让习惯于图形界面的DBA看起来更加舒适。

 在集群拓扑上可以点击CN/DN节点进行下钻。在D-SMART中,每个有分布式CN/DN节点和集中式DN节点三种子类型,目前我们把它们作为PG兼容子类来看待。因为GaussDB和openGauss都有大量的监控视图与PG兼容,可以复用部分PG的工具,因此我们没有给openGauss/GaussDB节点独立的数据库类别。虽然如此,GaussDB、openGauss和PostgreSQL三种数据库子类在可观测性视图方面已经有了很多差异。作为可观测性能力而言,GaussDB>openGauss >PostgreSQL。更强的可观测性意味着更为强大的自动化/智能化分析能力。

故障模型告警和诊断工具依然沿用D-SMART传统的模式,目前工具的开发还在持续进行中,不过基于运维知识图谱的通用分析工具已经是可用的了。智能指标分析与告警时序分析、等待事件智能分析等工具已经可以使用了。    

基于GaussDB强大的可观测能力,目前故障模型的梳理工作也进展顺利,和一些其他的国产数据库不同的是,我们明显感到能够梳理出来的故障模型数量太多了,刚刚发布的时候可能就会有上百个故障模型,比我们2018年发布Oracle版本时的故障模式数量还要多出不少。    

故障模型是对数据库运维经验的一种总结,能够构建其丰富的故障模型对于承载大型关键应用系统十分关键。而故障模型的构建依赖于强大的可观测能力,以及将数据库状态指标化的能力,再辅以专家的经验才能完成。这种能力可以让一些原本需要专家才能发现的问题实现自动化发现与自动化预警。

目前我们针对GaussDB的故障模型涉及组件健康状态、容量、高可用、并发、负载、性能、资源、实例健康、任务等维度。实际上这是针对GaussDB集群的故障模型,针对每个组件,比如CN/DN,以及承载CN/DN的服务器也都会设计故障模型。这样才能保证整个数据库运行环境出现问题,都能够被提前发现。

分布式数据库的运维工具开发起来比较麻烦,在前面的开发过程中我们也遇到了很多问题,比如DN节点的切换后,系统能否立即无缝跟踪到这个变化,如果复制组中存在硬件配置上的不同,可能会影响模型的评估,如何能够在每隔2-3分钟的评估中避开数据错误,这些都在不断的完善中。这个月底希望有一个评估版本可以完成,届时也希望生产环境中有GaussDB的朋友能一起合作来验证工具。

作者:白鳝的洞穴

欢迎小伙伴们交流~


http://www.ppmy.cn/server/23887.html

相关文章

前端vue scope的定义以及用法

这段代码是 Vue 组件中用于定义表格列的代码,包含了自定义模板和逻辑,以显示特定格式的内容。在这里,el-table-column 来自 Element UI 框架,提供了一种简洁的方式来定义表格的列及其显示内容。 让我们看看这段代码的细节&#x…

pytorch 实现语义分割 PSPNet

语意分割是指一张图片上包含多个物体,通过语义分割可以识别物体分类、物体名称、像素识别的任务。和物体检测不同,他不会将物体框出来,而是根据像素的归属把物体标注出来。PSPNet 的输入是一张图片,例如300500,那么输出…

套接字以及相关函数

socket函数 linux下的socket函数&#xff1a; #include<sys/socket.h> int socket(int domain, int type, int protocol); 参数&#xff1a; domain 套接字中使用的协议族信息 type 套接字数据传输类型信息 …

算法人生(13):从“Scrum”看“PDCA时间管理法”

很多人会好奇为什么“读了很多书&#xff0c;却依然不知道怎么过好这一生”&#xff1f;大家可能都有各自的理解&#xff0c;但正如王阳明先生的“知行合一”所说&#xff0c;“知”要能“行”出来才算“真知”&#xff0c;生活中很多时候知并不一定能行&#xff0c;所以知与行…

YOLOv8+PyQt5输电线路缺陷检测(目前最全面的类别检测,可以从图像、视频和摄像头三种路径检测)

1.效果视频&#xff1a;YOLOv8PyQt5输电线路缺陷检测&#xff08;目前最全面的类别检测&#xff0c;可以从图像、视频和摄像头三种路径检测&#xff09;_哔哩哔哩_bilibili 资源包含可视化的输电线路缺陷检测系统&#xff0c;可识别图片和视频当中出现的五类常见的输电线路缺陷…

Phi-3-mini-4k-instruct 的功能测试

Model card 介绍 Phi-3-Mini-4K-Instruct 是一个 3.8B 参数、轻量级、最先进的开放模型&#xff0c;使用 Phi-3 数据集进行训练&#xff0c;其中包括合成数据和经过过滤的公开可用网站数据&#xff0c;重点是 高品质和推理密集的属性。 该型号属于 Phi-3 系列&#xff0c;Mini…

Dockerfile 构建上下文 build -f 选项 加快构建速度

理解构建上下文&#xff08;Build Context&#xff09; 当运行 docker build 命令时&#xff0c;当前工作目录被称为构建上下文&#xff0c;docker本身会将工作目录里面所有的文件都上传给docker daemon&#xff0c;在这个基础之上再去构建容器镜像。&#xff08;如果你在根目…

鸿蒙应用ArkTS开发- 选择图片、文件和拍照功能实现

前言 在使用App的时候&#xff0c;我们经常会在一些社交软件中聊天时发一些图片或者文件之类的多媒体文件&#xff0c;那在鸿蒙原生应用中&#xff0c;我们怎么开发这样的功能呢&#xff1f; 本文会给大家对这个功能点进行讲解&#xff0c;我们采用的是拉起系统组件来进行图片…