System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请实施例涉及云原生,尤其涉及一种数据恢复方法及计算设备。
技术介绍
1、云原生技术是一项构建和运行应用程序的技术。通常地,在利用云原生技术构建应用程序时,会涉及到以kubernetes编排工具(也称为k8s)为主的容器技术。k8s集群的相关数据通常存储在分布式键值存储etcd集群,因而在k8s集群下如何高效保障etcd集群的稳定性显得十分重要。
2、目前,通常需要技术人员手动检测etcd集群中的每个节点,以判断是否存在发生异常的节点,在发现存在异常的节点后需要手动配置该节点的配置文件并手动添加备份文件,从而完成节点的数据恢复。
3、然而,上述技术方案需要依赖于技术人员的人工操作,使得数据恢复的效率较低,难以高效保障etcd集群的稳定性。
技术实现思路
1、本申请实施例提供一种数据恢复方法及计算设备,用于提供一种高效的数据恢复方法,从而高效保障etcd集群的稳定性。
2、为达到上述目的,本申请实施例采用如下技术方案:
3、一方面,提供了一种数据恢复方法,该方法包括:
4、对etcd集群中的多个节点进行异常检测,得到该多个节点的异常检测结果。其中,该异常检测结果用于指示节点是否发生异常。如此,提供了一种自动化执行异常检测流程的方案,能够快速高效地完成对etcd集群中多个节点的异常检测,提高了异常检测的效率。
5、并且,基于该多个节点的异常检测结果,确定etcd集群的异常类型。其中,该异常类型用于指示节点异常类型
6、进而,基于etcd集群的异常类型,执行该异常类型对应的数据恢复流程。如此,提供了一种自动化执行数据恢复流程的方案,能够快速高效地完成对etcd集群中多个节点的数据恢复,从而高效保障etcd集群的稳定性。
7、在上述技术方案中,提供了一种自动化执行异常检测流程和数据恢复流程的方案,能够快速高效地完成对etcd集群中多个节点的异常检测和数据恢复,提高了针对etcd集群的异常检测效率和数据恢复效率,从而高效保障etcd集群的稳定性。
8、在一些可能的实现方式中,对etcd集群中的多个节点进行异常检测,得到该多个节点的异常检测结果,包括:对于该多个节点中的每个节点,对该节点进行预设次数的状态检测,得到该节点的状态检测结果。其中,该状态检测结果用于指示节点的异常次数。进而,响应于该节点的异常次数达到该预设次数,确定该节点的异常检测结果为发生异常。
9、在上述实现方式中,提供了一种异常检测的实现方式。其中,通过对各个节点进行预设次数的状态检测,并记录各个节点的异常次数。通过判断各个节点的异常次数是否达到该预设次数,来确定各个节点是否发生异常。如此,一方面,能够快速高效地完成对etcd集群中多个节点的异常检测,提高了异常检测的效率。另一方面,参考了多次状态检测的结果,丰富了异常检测所参考的信息量,能够进一步提升异常检测的准确度。
10、在一些可能的实现方式中,对该节点进行预设次数的状态检测,得到该节点的状态检测结果,包括:
11、对于该预设次数中的每一次状态检测,获取该节点的状态码。其中,该状态码用于指示该节点的通信是否正常。进而,响应于该节点的状态码指示通信正常,获取该节点的状态字段信息。其中,该状态字段信息用于指示该节点是否存在故障。也就是说,在确保该节点的状态码指示通信正常的情况下,再判断该节点的状态字段信息是否指示该节点是否存在故障。
12、如此,确保在通信正常的情况下再去判断节点的状态字段信息是否指示存在故障,避免因通信异常而产生误报的问题发生,能够有效降低误报率,从而提高了状态检测的准确度。
13、进而,响应于该节点的状态字段信息指示存在故障,增加该节点的异常次数。也就是说,在每一次状态检测的过程中记录异常次数,以便后续利用异常次数来进行异常分析。
14、最终,响应于该节点的检测次数达到该预设次数,基于该节点的异常次数确定该节点的状态检测结果。如此,确保在对节点执行预设次数的状态检测后,基于该预设次数的状态检测的结果来综合分析该节点是否发生异常,参考了多次状态检测的结果,丰富了异常检测所参考的信息量,能够进一步提升异常检测的准确度。
15、在一些可能的实现方式中,基于该多个节点的异常检测结果,确定etcd集群的异常类型,包括:
16、基于该多个节点的异常检测结果,确定异常节点的数量,该异常节点指发生异常的节点;响应于该异常节点的数量未达到该多个节点的总数量的一半,确定etcd集群的异常类型为该节点异常类型;或,响应于该异常节点的数量达到该多个节点的总数量的一半,确定etcd集群的异常类型为该集群异常类型。
17、在上述实现方式中,提供了一种确定etcd集群的异常类型的实现方式。其中,考虑到etcd集群中存在一半或以上节点发生异常,会使得k8s集群变成异常状态而不可调度,因而,通过判断异常节点的数量是否达到该多个节点的总数量的一半,能够巧妙的确定出etcd集群的异常类型。
18、在一些可能的实现方式中,在etcd集群的异常类型为该节点异常类型的情况下,基于etcd集群的异常类型,执行该异常类型对应的数据恢复流程,包括:
19、从etcd集群中移除异常节点,该异常节点指发生异常的节点。例如,在一些可能的实现方式中,通过调用任一正常节点的移除成员接口,从etcd集群中移除异常节点。
20、在该异常节点的配置文件中,对etcd集群的集群信息进行更新。例如,在一些可能的实现方式中,通过调用异常节点的修改接口,在该异常节点的配置文件中,对etcd集群的集群信息进行更新。
21、进而,基于该异常节点的配置文件中更新后的etcd集群的集群信息,将该异常节点添加至etcd集群中。例如,在一些可能的实现方式中,通过调用任一正常节点的添加成员接口,基于该异常节点的配置文件中更新后的etcd集群的集群信息,将该异常节点添加至etcd集群中。
22、在上述实现方式中,提供了一种针对节点异常类型的etcd集群的数据恢复流程,考虑到节点在加入etcd集群后会自动同步集群数据这一特性,完成了针对异常类型为节点异常类型的etcd集群的数据恢复。
23、在一些可能的实现方式中,从etcd集群中移除异常节点之后,该方法还包括:将该异常节点的配置文件从数据目录移动至临时目录。例如,在一些可能的实现方式中,通过调用异常节点的停止接口,将该异常节点的配置文件从数据目录移动至临时目录。如此,将该异常节点的配置文件从数据目录移动至临时目录,能够达到将该异常节点停止运行的效果,避免k8s集群在调用该异常节点时因无法响应而造成k8s集群异常。
24、在一些可能的实现方本文档来自技高网...
【技术保护点】
1.一种数据恢复方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述对ETCD集群中的多个节点进行异常检测,得到所述多个节点的异常检测结果,包括:
3.根据权利要求2所述的方法,其特征在于,所述对所述节点进行预设次数的状态检测,得到所述节点的状态检测结果,包括:
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述基于所述多个节点的异常检测结果,确定所述ETCD集群的异常类型,包括:
5.根据权利要求1-4中任一项所述的方法,其特征在于,在所述ETCD集群的异常类型为所述节点异常类型的情况下,所述基于所述ETCD集群的异常类型,执行所述异常类型对应的数据恢复流程,包括:
6.根据权利要求5所述的方法,其特征在于,所述从所述ETCD集群中移除异常节点之后,所述方法还包括:
7.根据权利要求1-4中任一项所述的方法,其特征在于,在所述ETCD集群的异常类型为所述集群异常类型的情况下,所述基于所述ETCD集群的异常类型,执行所述异常类型对应的数据恢复流程,包括:
8.根
9.根据权利要求1-8中任一项所述的方法,其特征在于,所述对ETCD集群中的多个节点进行异常检测,包括:
10.一种计算设备,其特征在于,所述计算设备包括处理器和存储器;所述处理器和所述存储器耦合;
...【技术特征摘要】
1.一种数据恢复方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述对etcd集群中的多个节点进行异常检测,得到所述多个节点的异常检测结果,包括:
3.根据权利要求2所述的方法,其特征在于,所述对所述节点进行预设次数的状态检测,得到所述节点的状态检测结果,包括:
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述基于所述多个节点的异常检测结果,确定所述etcd集群的异常类型,包括:
5.根据权利要求1-4中任一项所述的方法,其特征在于,在所述etcd集群的异常类型为所述节点异常类型的情况下,所述基于所述etcd集群的异常类型,执行所述异常类型对应的数据恢复流...
【专利技术属性】
技术研发人员:彭燕飞,
申请(专利权)人:超聚变数字技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。