技术摘要:
本申请涉及数据存储技术领域,特别涉及一种RAID卡故障处理方法及装置。该RAID卡故障处理方法应用于分布式存储系统,所述分布式存储系统包括若干采用至少两张RAID卡分别管理硬盘的服务器,所述方法包括:对目标服务器上各RAID卡的工作状态进行检测,其中,所述各RAID卡 全部
背景技术:
磁盘阵列(Redundant Arrays of Independent Drives,RAID)技术广泛应用于服 务器领域,通过RAID卡将硬盘背板上的多块硬盘组成不同RAID级,可以增大实现存储空间, 提高数据存储速度及提升数据存储稳定性。分布式存储系统中,对于硬盘槽位较多的服务 器,为了提升硬盘的缓存性能,通常采用多张RAID卡分别管理不同的硬盘。如,一台服务器 的硬盘背板配置有24块硬盘(OSD 1-OSD 24),那么,就可以采用两张RAID卡管理24个硬盘, 其中,由一张RAID卡管理OSD 1-OSD 12,由另一张RAID卡管理OSD 13-OSD 24。 目前,当一个服务器上的任一RAID卡出现异常,则其所连接的硬盘阵列也一同出 现故障,严重时会使整个存储阵列瘫痪,即使可以修复,也需对整个系统进行断电再更换 RAID卡,难以保证系统运行的稳定性。
技术实现要素:
本申请实施例提供一种RAID卡故障处理方法及装置,用以解决现有技术中存在的 由于RAID卡故障而导致业务不稳定的问题。 本申请实施例提供的具体技术方案如下: 第一方面,本申请提供了一种RAID卡故障处理方法,应用于分布式存储系统,所述 分布式存储系统包括若干采用至少两张RAID卡分别管理硬盘的服务器,所述方法包括: 对目标服务器上各RAID卡的工作状态进行检测,其中,所述各RAID卡中每一RAID 卡分别管理所述目标服务器上不同的硬盘; 基于所述各RAID卡的工作状态,判断所述各RAID卡中是否存在出现故障的目标 RAID卡; 若是,则采用所述各RAID卡中未出现故障的RAID卡管理所述目标RAID卡对应的硬 盘。 可选地,所述方法还包括: 将所述目标RAID卡管理的硬盘所承载的业务迁移至所述分布式系统中其它未出 现故障的RAID卡管理的硬盘上。 可选地,每一RAID卡包括至少一个控制器,维护有每一RAID卡的每一控制器的状 态标识,其中,任一控制器发生故障时,其状态标识的值为预设值; 所述对目标服务器上各RAID卡的工作状态进行检测的步骤包括: 对所述目标服务器上各RAID卡的每一控制器的状态标识的值进行检测。 可选地,所述基于所述各RAID卡的工作状态,判断所述各RAID卡中是否存在出现 故障的目标RAID卡的步骤包括: 基于所述各RAID卡的每一控制器的状态标识的值,分别判断每一RAID卡的各控制 4 CN 111581034 A 说 明 书 2/8 页 器中是否存在状态标识的值为预设值的控制器,其中,若一个RAID卡的任一控制器的状态 标识的值为预设值,则确定该一个RAID卡发生故障。 可选地,目标服务器包括第一RAID卡和第二RAID卡,目标服务器的硬盘背板上集 成有第一硬盘集群和第二硬盘集群,第一RAID卡管理第一硬盘集群,第二RAID卡管理第二 硬盘集群,目标服务器的硬盘背板上存储有第一背板配置文件,第一RAID配置文件,第二背 板配置文件和第二RAID配置文件,其中,在运行第一背板配置文件和第一RAID配置文件时, 目标服务器上的各RAID卡分别管理其对应的硬盘集群,在运行第二背板配置文件和第二 RAID配置文件时,目标服务器上未发生故障的RAID管理硬盘背板上的硬盘集群; 所述采用所述各RAID卡中未出现故障的RAID卡管理所述目标RAID卡对应的硬盘 的步骤包括: 在确定第一RAID卡或第二RAID卡发生故障时,启用第二背板配置文件和第二RAID 配置文件,以使得未发生故障的RAID卡对发生故障的RAID卡对应的硬盘集群进行管理。 第二方面,本申请提供了一种RAID卡故障处理装置,应用于分布式存储系统,所述 分布式存储系统包括若干采用至少两张RAID卡分别管理硬盘的服务器,所述装置包括: 检测单元,用于对目标服务器上各RAID卡的工作状态进行检测,其中,所述各RAID 卡中每一RAID卡分别管理所述目标服务器上不同的硬盘; 判断单元,用于基于所述各RAID卡的工作状态,判断所述各RAID卡中是否存在出 现故障的目标RAID卡; 切换单元,在所述判断单元判定所述各RAID卡中存在出现故障的目标RAID卡时, 所述切换单元用于采用所述各RAID卡中未出现故障的RAID卡管理所述目标RAID卡对应的 硬盘。 可选地,所述装置还包括: 迁移单元,用于将所述目标RAID卡管理的硬盘所承载的业务迁移至所述分布式系 统中其它未出现故障的RAID卡管理的硬盘上。 可选地,每一RAID卡包括至少一个控制器,维护有每一RAID卡的每一控制器的状 态标识,其中,任一控制器发生故障时,其状态标识的值为预设值; 所述对目标服务器上各RAID卡的工作状态进行检测时,所述检测单元具体用于: 对所述目标服务器上各RAID卡的每一控制器的状态标识的值进行检测。 可选地,所述基于所述各RAID卡的工作状态,判断所述各RAID卡中是否存在出现 故障的目标RAID卡时,所述判断单元具体用于: 基于所述各RAID卡的每一控制器的状态标识的值,分别判断每一RAID卡的各控制 器中是否存在状态标识的值为预设值的控制器,其中,若一个RAID卡的任一控制器的状态 标识的值为预设值,则确定该一个RAID卡发生故障。 可选地,目标服务器包括第一RAID卡和第二RAID卡,目标服务器的硬盘背板上集 成有第一硬盘集群和第二硬盘集群,第一RAID卡管理第一硬盘集群,第二RAID卡管理第二 硬盘集群,目标服务器的硬盘背板上存储有第一背板配置文件,第一RAID配置文件,第二背 板配置文件和第二RAID配置文件,其中,在运行第一背板配置文件和第一RAID配置文件时, 目标服务器上的各RAID卡分别管理其对应的硬盘集群,在运行第二背板配置文件和第二 RAID配置文件时,目标服务器上未发生故障的RAID管理硬盘背板上的硬盘集群; 5 CN 111581034 A 说 明 书 3/8 页 所述采用所述各RAID卡中未出现故障的RAID卡管理所述目标RAID卡对应的硬盘 时,所述切换单元具体用于: 在确定第一RAID卡或第二RAID卡发生故障时,启用第二背板配置文件和第二RAID 配置文件,以使得未发生故障的RAID卡对发生故障的RAID卡对应的硬盘集群进行管理。 第三方面,本申请提供了另一种RAID卡故障处理装置,该RAID卡故障处理装置包 括: 存储器,用于存储程序指令; 处理器,用于调用上述存储器中存储的程序指令,按照获得的程序执行上述第一 方面中任一项方法。 第四方面,本申请提供一种计算机存储介质,该计算机可读存储介质存储有计算 机可执行指令,上述计算机可执行指令用于使上述计算机执行上述第一方面中任一项方 法。 本申请有益效果如下: 综上所述,本申请提供的RAID卡故障处理方法,应用于分布式存储系统,所述分布 式存储系统包括若干采用至少两张RAID卡分别管理硬盘的服务器,所述方法包括:对目标 服务器上各RAID卡的工作状态进行检测,其中,所述各RAID卡中每一RAID卡分别管理所述 目标服务器上不同的硬盘;基于所述各RAID卡的工作状态,判断所述各RAID卡中是否存在 出现故障的目标RAID卡;若是,则采用所述各RAID卡中未出现故障的RAID卡管理所述目标 RAID卡对应的硬盘。 采用本申请提供的RAID卡故障处理方法,实时检测各RAID卡的工作状态,并根据 检测到的各RAID卡的工作状态,确定一个服务器中某一RAID卡出现故障时,采用该服务器 中其它未出现故障的RAID卡管理该出现故障的RAID卡对应的硬盘集群,这样就不会导致该 服务器宕机,提升了系统的业务的可靠性。 附图说明 图1为本申请实施例提供的一种分布式存储系统的结构示意图; 图2为本申请实施例提供的一种RAID卡故障处理方法的流程示意图; 图3为本申请实施例提供的一种RAID卡故障处理装置的结构示意图; 图4为本申请实施例提供的另一种RAID卡故障处理装置的结构示意图。