用于对基于Ceph的对象存储系统进行故障分析的系统和介质的制作方法

专利2022-06-30  67


本发明涉及计算机应用技术领域,具体地,涉及一种用于对基于ceph的对象存储系统进行故障分析的系统和存储介质。



背景技术:

ceph是一个可靠地、自动重均衡、自动恢复的分布式存储系统,根据场景划分可以将ceph分为三大块,分别是对象存储、块设备存储和文件系统服务。

ceph的核心组件包括:osd,全称objectstoragedevice,负责响应客户端请求返回具体数据的进程,一个ceph集群有很多个osd;monitor,一个ceph集群需要多个monitor组成的小集群,它们通过paxos同步数据,用来保存osd的元数据;object是ceph最底层的存储单元,每个object包含元数据和原始数据;pg,全称placementgrouops,是一个逻辑的概念,一个pg包含多个osd。引入pg这一层其实是为了更好的分配数据和定位数据;crush是ceph使用的数据分布算法,类似一致性哈希,让数据分配到预期的地方。

目前主流的ceph开源监控软件有:calamari、vsm、inkscope、ceph-dash、zabbix等。例如,calamari对外提供了web管理和监控界面,以及一套改进的restapi接口(不同于ceph自身的restapi),在一定程度上简化了ceph的管理。calamari为ceph的运维和管理提供了一个统一的平台,用户可以基于这个平台扩展自己的存储管理产品,但同时也存在着不足和需要改进的地方。该监控工具侧重对节点的管理及集群状态的查看,但无法在故障场景中帮助运维人员判断故障影响范围和恢复时间。



技术实现要素:

鉴于现有技术存在的上述缺陷,本发明实施方式提供了一种用于对基于ceph的对象存储系统进行故障分析的系统和存储介质,可以帮助运维人员判断故障影响范围和恢复时间。

根据本发明的第一方面,本发明的实施方式提供了一种用于对基于ceph的对象存储系统进行故障分析的系统,其包括前端设备和后端服务器;其中,所述前端设备包括用于执行以下操作的故障影响查询模块:从所述后端服务器获取ip-osd列表(即ip地址与osd状态对应的列表)、osd-pg列表(即osd状态与pg状态对应的列表)、ip-pg列表(即ip地址与pg状态对应的列表),并将ip-osd列表展现在前端页面;根据运维人员输入的两个故障节点ip或磁盘id从ip-pg列表或osd-pg列表查询受影响的pg,并将受影响的pg显示在前端页面;其中,所述后端服务器包括用于执行以下操作的osd及pg列表获取模块:在接收到所述前端设备获取osd、pg列表的请求后,向所述对象存储系统获取集群的osd、pg列表;处理所述osd、pg列表得到ip-osd列表、osd-pg列表、ip-pg列表,并将所述ip-osd列表、osd-pg列表、ip-pg列表返回给所述前端设备。

在本发明的一些实施方式中,所述前端设备还包括迁移恢复时间预算模块,用于执行以下操作:从所述后端服务器得到ip-osd存储状态列表和osd之间的传输速率,并将所述ip-osd存储状态列表展示在前端页面;根据运维人员输入的故障节点ip或磁盘id从ip-osd存储状态列表确定待迁移的数据量;根据所述待迁移的数据量和所述传输速率计算数据迁移时间;将计算得到的数据迁移时间展示在前端页面;并且,所述后端服务器还包括传输速率计算模块,用于执行以下操作:在接收到所述前端设备获取恢复时间的请求后,从所述对象存储系统获取osd列表及集群状态信息;处理据所述osd列表及集群状态信息得到ip-osd存储状态列表;根据磁盘io性能和集群配置计算osd之间的传输速率;将所述ip-osd存储状态列表和所述传输率返回给所述前端设备。

在本发明的一些实施方式中,所述前端设备还包括扩缩容影响预判模块,用于执行以下操作:从所述后端服务器获取crushmap及osd-pg列表;将所述crushmap及osd-pg列表展示在前端页面;将运维人员输入的需要扩缩容的节点信息及磁盘信息发送至所述后端服务器;获取所述后端服务器返回的根据需要扩缩容的节点信息及磁盘信息计算得到的新的pg分布;并且,所述后端服务器还包括扩缩容影响计算模块,用于执行以下操作:在接收到所述前端服务器发送的预判扩缩容影响的请求后,从所述对象存储系统获取集群的crushmap及pg列表;处理所述crushmap及pg列表得到crushmap及osd-pg列表;将得到的crushmap及osd-pg列表返回给所述前端设备;根据所述前端设备发送的需要扩缩容的节点信息及磁盘信息,采用crush算法计算新的pg分布;将新的pg分布返回至所述前端设备。

在本发明的一些实施方式中,所述前端设备还包括osd状态实时展示模块,用于向所述后端服务器发送获取osd状态的请求并将所述后端服务器响应所述请求而返回的集群节点的osd状态信息以预定形式展现在前端页面上;并且,所述后端服务器还包括osd状态处理模块,用于在接收到所述前端设备发送的获osd状态的请求后向所述ceph的对象存储系统获取集群节点的osd状态信息,并将获取的集群节点的osd状态信息返回给所述前端设备。在本发明的可选实施方式中,所述预定形式包括树形结构,并且用不同的颜色显示集群节点的osd的不同状态。

根据本发明的第二方面,本发明实施方式提供了一种用于对基于ceph的对象存储系统进行故障分析的系统,其包括前端设备和后端服务器。

其中,所述前端设备包括显示器、第一存储器和第一处理器,所述第一存储器上存储有被第一处理器执行以进行下述操作的计算机可读指令:

从所述后端服务器获取ip-osd列表、osd-pg列表、ip-pg列表,并将ip-osd列表通过所述显示器展现在前端页面;根据运维人员输入的两个故障节点ip或磁盘id从ip-pg列表或osd-pg列表查询受影响的pg,并将受影响的pg通过所述显示器显示在前端页面;

其中,所述后端服务器包括第二存储器和第二处理器,所述第二存储器上存储有被第二处理器执行以进行下述操作的计算机可读指令:

在接收到所述前端设备获取osd、pg列表的请求后,向所述对象存储系统获取集群的osd、pg列表;处理所述osd、pg列表得到ip-osd列表、osd-pg列表、ip-pg列表,并将所述ip-osd列表、osd-pg列表、ip-pg列表返回给所述前端设备。

在本发明的一些实施方式中,在所述前端设备中,所述第一存储器上还存储有被第一处理器执行以进行下述操作的计算机可读指令:

从所述后端服务器得到ip-osd存储状态列表和osd之间的传输速率,并将所述ip-osd存储状态列表通过所述显示器展示在前端页面;根据运维人员输入的故障节点ip或磁盘id从ip-osd存储状态列表确定待迁移的数据量;根据所述待迁移的数据量和所述传输速率计算数据迁移时间;将计算得到的数据迁移时间通过所述显示器展示在前端页面;

并且,在所述后端服务器中,所述第二存储器上还存储有被第二处理器执行以进行下述操作的计算机可读指令:

在接收到所述前端设备获取恢复时间的请求后,从所述对象存储系统获取osd列表及集群状态信息;处理据所述osd列表及集群状态信息得到ip-osd存储状态列表;根据磁盘io性能和集群配置计算osd之间的传输速率;将所述ip-osd存储状态列表和所述传输率返回给所述前端设备。

在本发明的一些实施方式中,在所述前端设备中,所述第一存储器上还存储有被第一处理器执行以进行下述操作的计算机可读指令:

从所述后端服务器获取crushmap及osd-pg列表;将所述crushmap及osd-pg列表展示在前端页面;将运维人员输入的需要扩缩容的节点信息及磁盘信息发送至所述后端服务器;获取所述后端服务器返回的根据需要扩缩容的节点信息及磁盘信息计算得到的新的pg分布;

并且,在所述后端服务器中,所述第二存储器上还存储有被第二处理器执行以进行下述操作的计算机可读指令:

在接收到所述前端服务器发送的预判扩缩容影响的请求后,从所述对象存储系统获取集群的crushmap及pg列表;处理所述crushmap及pg列表得到crushmap及osd-pg列表;将得到的crushmap及osd-pg列表返回给所述前端设备;根据所述前端设备发送的需要扩缩容的节点信息及磁盘信息,采用crush算法计算新的pg分布;将新的pg分布返回至所述前端设备。

在本发明的一些实施方式中,在所述前端设备中,所述第一存储器上还存储有被第一处理器执行以进行下述操作的计算机可读指令:

向所述后端服务器发送获取osd状态的请求,并将所述后端服务器响应所述请求而返回的集群节点的osd状态信息以预定形式通过所述显示器展现在前端页面上;其中,所述预定形式可以包括树形结构,并且用不同的颜色显示集群节点的osd的不同状态;

并且,在所述后端服务器中,所述第二存储器上还存储有被第二处理器执行以进行下述操作的计算机可读指令:

osd状态处理模块,用于在接收到所述前端设备发送的获osd状态的请求后向所述ceph的对象存储系统获取集群节点的osd状态信息,并将获取的集群节点的osd状态信息返回给所述前端设备。

根据本发明的第三方面,本发明实施方式提供了一种计算机可读存储介质,其特征在于,其上存储有计算机可读指令,所述计算机可读指令被处理器执行时进行上述任一实施方式的系统中的前端设备所执行的操作或后端服务器所执行的操作。

由上述可知,本发明在监控集群状态的基础上,增加了故障分析功能,能够支持节点或磁盘故障、存储扩缩容等场景下的影响范围预判;支持集群节点变化前后数据迁移的容量及时间预算。可以在节点或磁盘故障时迅速判断影响范围及迁移恢复时间,提高工作效率。

附图说明

图1a是根据本发明一种实施方式的用于对基于ceph的对象存储系统进行故障分析的系统的框图;

图1b是根据本发明一种实施方式的用于对基于ceph的对象存储系统进行故障分析的系统实现故障影响查询的流程图。

图2a是根据本发明另一种实施方式的用于对基于ceph的对象存储系统进行故障分析的系统的框图;

图2b是根据本发明另一种实施方式的用于对基于ceph的对象存储系统进行故障分析的系统实现恢复时间预算的流程图。

图3a是根据本发明另一种实施方式的用于对基于ceph的对象存储系统进行故障分析的系统的框图;

图3b是根据本发明另一种实施方式的用于对基于ceph的对象存储系统进行故障分析的系统实现扩缩容影响预判的流程图。

图4a是根据本发明另一种实施方式的用于对基于ceph的对象存储系统进行故障分析的系统的框图;

图4b是根据本发明另一种实施方式的用于对基于ceph的对象存储系统进行故障分析的系统实现osd状态实时展示的流程图。

具体实施方式

为了便于理解本发明技术方案的各个方面、特征以及优点,下面结合附图对本发明进行具体描述。应当理解,下述的各种实施方式只用于举例说明,而非用于限制本发明的保护范围。

图1a是根据本发明一种实施方式的用于对基于ceph的对象存储系统进行故障分析的系统的框图。如图1所示,所述系统可以包括前端设备(简称为“前端”)和后端服务器(简称为“后端”),所述前端设备和后端服务器可以通过网络连接。

所述前端设备包括故障影响查询模块110,用于执行以下操作:从所述后端服务器获取ip-osd列表、osd-pg列表、ip-pg列表,并将ip-osd列表展现在前端页面;根据运维人员输入的两个故障节点ip或磁盘id从ip-pg列表或osd-pg列表查询受影响的pg,并将受影响的pg显示在前端页面。

所述后端服务器包括osd及pg列表获取模块210,用于执行以下操作:在接收到所述前端设备获取osd、pg列表的请求后,向所述对象存储系统获取集群的osd、pg列表;处理所述osd、pg列表得到ip-osd列表、osd-pg列表、ip-pg列表,并将所述ip-osd列表、osd-pg列表、ip-pg列表返回给所述前端设备。

根据本发明实施方式,可以获取ip-osd列表、osd-pg列表、ip-pg列表,进而可以根据输入的故障节点ip或磁盘id预判节点或磁盘故障时,受到影响的pg数量以及pgid,帮助运维人员判断节点、磁盘故障时是否影响数据三副本以及影响三副本的pg列表。

图1b示出了根据上述实施方式的故障影响查询的流程,所述系统进行故障影响查询的流程包括:

s101:运维人员点击“故障分析”标签,通过/faultcheck接口发送请求。

s102:前端通过接口/getpgosdlist将请求发送至后端。

s103:后端通过接口/api/v0.1/osd/dump.json、/api/v0.1/pg/dump.json向ceph-rest-api请求集群osd、pg列表。其中,ceph-rest-api是一个wsgi(webservicegatewayinterface)应用程序,可作为网页服务独立运行,也可在支持wsgi的网页服务器下运行。它通过http访问接口提供了ceph命令行工具的大多数功能。通过ceph的restapi可以获取集群状态信息,也可以对集群配置作出修改。

s104:后端收到返回结果后进行处理,得到ip-osd列表、osd-pg列表、ip-pg列表。

s105:将ip-osd列表、osd-pg列表、ip-pg列表返回前端。

s106:将ip-osd列表展示在前端。

s107:运维人员输入两个故障节点ip或磁盘id,点击查询。

s108:前端根据ip-pg列表或osd-pg列表查询影响范围。

s109:将影响的pg列表展示在前端。

图2a是根据本发明另一种实施方式的用于对基于ceph的对象存储系统进行故障分析的系统的框图。

在本发明的一种实施方式中,所述前端设备除了包括所述故障影响查询模块110外,进一步包括迁移恢复时间预算模块120,用于执行以下操作:从所述后端服务器得到ip-osd存储状态列表和osd之间的传输速率,并将所述ip-osd存储状态列表展示在前端页面;根据运维人员输入的故障节点ip或磁盘id从ip-osd存储状态列表确定待迁移的数据量;根据所述待迁移的数据量和所述传输速率计算数据迁移时间;将计算得到的数据迁移时间展示在前端页面;

并且,所述后端服务器除了osd及pg列表获取模块210外,包括进一步包括传输速率计算模块220,用于执行以下操作:在接收到所述前端设备获取恢复时间的请求后,从所述对象存储系统获取osd列表及集群状态信息;处理据所述osd列表及集群状态信息得到ip-osd存储状态列表;根据磁盘io性能和集群配置计算osd之间的传输速率;将所述ip-osd存储状态列表和所述传输率返回给所述前端设备。

在本发明的可选实施方式中,所述前端设备可以只包括迁移恢复时间预算模块120,所述后端服务器可以只包括传输速率计算模块220。

根据本发明实施方式,可以判断集群出现数据迁移时,迁移恢复的时间,方便运维人员预算迁移恢复时间,判断业务影响。

如图2b所示,所述系统进行恢复时间预算的流程包括:

s201:运维人员点击“迁移恢复”标签,通过接口/recoverytime下发请求。

s202:前端通过接口/getrecoverytime将请求下发至后端。

s203:后端通过/api/v0.1/pg/dump.json、api/v0.1/status.json接口获取osd列表及集群状态信息。

s204-205:处理返回结果得到ip-osd存储状态列表,并根据磁盘io性能和集群配置估算osd之间的传输速率。

s206-207:后端将处理结果返回并展示在前端。

s208:输入故障磁盘id或节点ip,点击查询。

s209:按照下面的公式估算数据迁移时间:

公式中,data为待迁移数据量,v为估算的osd之间的传输速率。

s210:将步骤9计算的结果展示在前端页面。

图3a是根据本发明另一种实施方式的用于对基于ceph的对象存储系统进行故障分析的系统的框图。

在本发明的一些实施方式中,所述前端设备除了包括故障影响查询模块110、迁移恢复时间计算模块120外,还包括扩缩容影响预判模块130,用于执行以下操作:从所述后端服务器获取crushmap及osd-pg列表;将所述crushmap及osd-pg列表展示在前端页面;将运维人员输入的需要扩缩容的节点信息及磁盘信息发送至所述后端服务器;获取所述后端服务器返回的根据需要扩缩容的节点信息及磁盘信息计算得到的新的pg分布。

并且,所述后端服务器除了包括osd及pg列表获取模块210、传输速率计算模块220外,还包括扩缩容影响计算模块230,用于执行以下操作:在接收到所述前端服务器发送的预判扩缩容影响的请求后,从所述对象存储系统获取集群的crushmap及pg列表;处理所述crushmap及pg列表得到crushmap及osd-pg列表;将得到的crushmap及osd-pg列表返回给所述前端设备;根据所述前端设备发送的需要扩缩容的节点信息及磁盘信息,采用crush算法计算新的pg分布;将新的pg分布返回至所述前端设备。

在本发明的可选实施方式中,所述前端设备可以只包括扩容影响预判模块130,所述后端服务器可以只包括扩容影响计算模块230。在本发明的又一可选实施方式中,所述前端设备可以包括迁移恢复时间预算模块120和扩容影响预判模块130,所述后端服务器可以包括传输速率计算模块220和扩容影响计算模块230。在本发明的其他实施方式中,所述前端设备可以包括故障影响查询模块110和扩容影响预判模块130,所述后端服务器可以包括osd及pg列表获取模块210和扩容影响计算模块230。

根据本发明的上述实施方式,可以判断集群扩缩容时影响的pg范围,以及需要重新分布的数据情况,帮助运维人员判断扩缩容影响范围。

如图3b所示,所述系统进行扩缩容影响预判的处理流程包括:

s301:运维人员点击“扩缩容影响”标签,通过/capacityaffect接口下发请求。

s302:前端通过接口/getcapacityaffect向后端发送请求。

s303:后端通过/api/v0.1/pg/dump.json、/api/v0.1/osd/crush/dump.json接口向ceph-rest-api请求集群crushmap及pg列表信息。

s304:后端收到响应信息后进行处理,得到crushmap及osd-pg列表。

s305-306:后端将crushmap及osd-pg列表返回前端展示在前端页面上。

s307-308:运维人员输入需要扩缩容的节点信息及磁盘信息,前端将该信息发送给后端。

s309-s311:后端利用crush算法计算新的pg分布情况,并将结果返回、展示在前端。

图4a是根据本发明另一种实施方式的用于对基于ceph的对象存储系统进行故障分析的系统的框图。

在本发明的一些实施方式中,所述前端设备除了包括故障影响查询模块110、迁移恢复时间计算模块120、扩缩容影响预判模块130外,还包括osd状态实时展示模块140,用于向所述后端服务器发送获取osd状态的请求并将所述后端服务器响应所述请求而返回的集群节点的osd状态信息以预定形式展现在前端页面上。

并且,所述后端服务器除了包括osd及pg列表获取模块210、传输速率计算模块220、扩缩容影响计算模块230,还包括osd状态处理模块240,用于在接收到所述前端设备发送的获osd状态的请求后向所述ceph的对象存储系统获取集群节点的osd状态信息,并将获取的集群节点的osd状态信息返回给所述前端设备。在本发明的可选实施方式中,所述预定形式包括树形结构,并且用不同的颜色显示集群节点的osd的不同状态。

在本发明的可选实施方式中,所述前端设备可以只包括osd状态实时展示模块140,所述后端服务器可以只包括osd状态处理模块240。在本发明的其他可选实施方式中,所述前端设备除了osd状态实时展示模块140外,还可以包括故障影响查询模块110、迁移恢复时间预算模块120和扩容影响预判模块130中的任意一个或多个,所述后端服务器除了包括osd状态处理模块240外,还可以包括osd及pg列表获取模块210、传输速率计算模块220和扩容影响计算模块230中的任意一个或多个。

根据上述实施方式,可以实时查看集群节点及磁盘状态,并以树状结构展示在前端页面。绿色表示osd状态为‘up’,黄色表示osd状态为‘down’,红色表示osd状态为‘out’。子节点状态异常时,父节点也会显示异常状态。可以帮助运维人员迅速定位问题节点或磁盘。

如图4b所示,所述系统进行osd状态查询的流程包括:

s401:运维人员点击“状态查询”标签,选择需要查看的集群名称,点击“查询”查看相应集群的osd状态。

s402:前端通过接口/getosdstatus将请求发送给后端。

s403:后端通过接口/api/v0.1/osd/dump.json向ceph-rest-api发起请求,获取osd状态列表。

s404-405:后端收到ceph-rest-api返回的osd状态信息后进行处理,得到host-osd列表及osd状态信息返回前端。

s406:前端收到后端返回的响应后,以树状结构将osd状态展示在前端页面上,不同状态的osd展示为不同颜色。

现有的ceph监控平台只能获取简单的集群状态信息,不能对故障场景进行分析和预判,本发明可以通过ceph-rest-api获取集群状态信息,在监控集群状态的基础上,增加故障分析功能,能够支持节点或磁盘故障、存储扩缩容等场景下的影响范围预判,分析需要迁移的数据量及迁移目的节点和磁盘;支持集群节点变化前后数据迁移的容量及时间预算,可以在节点或磁盘故障时迅速判断影响范围及迁移恢复时间,提高工作效率。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件结合硬件平台的方式来实现。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。

一方面,本发明实施方式提供了一种用于对基于ceph的对象存储系统故障分析的系统,其包括前端设备和后端服务器。

其中,所述前端设备包括显示器、第一存储器和第一处理器,所述第一存储器上存储有被第一处理器执行以进行下述操作的计算机可读指令:

从所述后端服务器获取ip-osd列表、osd-pg列表、ip-pg列表,并将ip-osd列表通过所述显示器展现在前端页面;根据运维人员输入的两个故障节点ip或磁盘id从ip-pg列表或osd-pg列表查询受影响的pg,并将受影响的pg通过所述显示器显示在前端页面;

其中,所述后端服务器包括第二存储器和第二处理器,所述第二存储器上存储有被第二处理器执行以进行下述操作的计算机可读指令:

在接收到所述前端设备获取osd、pg列表的请求后,向所述对象存储系统获取集群的osd、pg列表;处理所述osd、pg列表得到ip-osd列表、osd-pg列表、ip-pg列表,并将所述ip-osd列表、osd-pg列表、ip-pg列表返回给所述前端设备。

在本发明的一些实施方式中,在所述前端设备中,所述第一存储器上还存储有被第一处理器执行以进行下述操作的计算机可读指令:

从所述后端服务器得到ip-osd存储状态列表和osd之间的传输速率,并将所述ip-osd存储状态列表通过所述显示器展示在前端页面;根据运维人员输入的故障节点ip或磁盘id从ip-osd存储状态列表确定待迁移的数据量;根据所述待迁移的数据量和所述传输速率计算数据迁移时间;将计算得到的数据迁移时间通过所述显示器展示在前端页面;

并且,在所述后端服务器中,所述第二存储器上还存储有被第二处理器执行以进行下述操作的计算机可读指令:

在接收到所述前端设备获取恢复时间的请求后,从所述对象存储系统获取osd列表及集群状态信息;处理据所述osd列表及集群状态信息得到ip-osd存储状态列表;根据磁盘io性能和集群配置计算osd之间的传输速率;将所述ip-osd存储状态列表和所述传输率返回给所述前端设备。

在本发明的一些实施方式中,在所述前端设备中,所述第一存储器上还存储有被第一处理器执行以进行下述操作的计算机可读指令:

从所述后端服务器获取crushmap及osd-pg列表;将所述crushmap及osd-pg列表展示在前端页面;将运维人员输入的需要扩缩容的节点信息及磁盘信息发送至所述后端服务器;获取所述后端服务器返回的根据需要扩缩容的节点信息及磁盘信息计算得到的新的pg分布;

并且,在所述后端服务器中,所述第二存储器上还存储有被第二处理器执行以进行下述操作的计算机可读指令:

在接收到所述前端服务器发送的预判扩缩容影响的请求后,从所述对象存储系统获取集群的crushmap及pg列表;处理所述crushmap及pg列表得到crushmap及osd-pg列表;将得到的crushmap及osd-pg列表返回给所述前端设备;根据所述前端设备发送的需要扩缩容的节点信息及磁盘信息,采用crush算法计算新的pg分布;将新的pg分布返回至所述前端设备。

在本发明的一些实施方式中,在所述前端设备中,所述第一存储器上还存储有被第一处理器执行以进行下述操作的计算机可读指令:

向所述后端服务器发送获取osd状态的请求,并将所述后端服务器响应所述请求而返回的集群节点的osd状态信息以预定形式通过所述显示器展现在前端页面上;其中,所述预定形式可以包括树形结构,并且用不同的颜色显示集群节点的osd的不同状态;

并且,在所述后端服务器中,所述第二存储器上还存储有被第二处理器执行以进行下述操作的计算机可读指令:

osd状态处理模块,用于在接收到所述前端设备发送的获osd状态的请求后向所述ceph的对象存储系统获取集群节点的osd状态信息,并将获取的集群节点的osd状态信息返回给所述前端设备。

另一方面,本发明实施方式提供了一种计算机可读存储介质,其特征在于,其上存储有计算机可读指令,所述计算机可读指令被处理器执行时进行上述任一实施方式的系统中的前端设备所执行的操作或后端服务器所执行的操作。

本领技术人员应当理解,以上所公开的仅为本发明的实施方式而已,当然不能以此来限定本发明之权利范围,依本发明实施方式所作的等同变化,仍属本发明权利要求所涵盖的范围。


技术特征:

1.一种用于对基于ceph的对象存储系统进行故障分析的系统,其特征在于,所述系统包括前端设备和后端服务器;

其中,所述前端设备包括:

故障影响查询模块,用于执行以下操作:从所述后端服务器获取ip-osd列表、osd-pg列表、ip-pg列表,并将ip-osd列表展现在前端页面;根据运维人员输入的两个故障节点ip或磁盘id从ip-pg列表或osd-pg列表查询受影响的pg,并将受影响的pg显示在前端页面;

其中,所述后端服务器包括:

osd及pg列表获取模块,用于执行以下操作:在接收到所述前端设备获取osd、pg列表的请求后,向所述对象存储系统获取集群的osd、pg列表;处理所述osd、pg列表得到ip-osd列表、osd-pg列表、ip-pg列表,并将所述ip-osd列表、osd-pg列表、ip-pg列表返回给所述前端设备。

2.如权利要求1所述的系统,其特征在于,

所述前端设备还包括:

迁移恢复时间预算模块,用于执行以下操作:从所述后端服务器得到ip-osd存储状态列表和osd之间的传输速率,并将所述ip-osd存储状态列表展示在前端页面;根据运维人员输入的故障节点ip或磁盘id从ip-osd存储状态列表确定待迁移的数据量;根据所述待迁移的数据量和所述传输速率计算数据迁移时间;将计算得到的数据迁移时间展示在前端页面;

所述后端服务器还包括:

传输速率计算模块,用于执行以下操作:在接收到所述前端设备获取恢复时间的请求后,从所述对象存储系统获取osd列表及集群状态信息;处理据所述osd列表及集群状态信息得到ip-osd存储状态列表;根据磁盘io性能和集群配置计算osd之间的传输速率;将所述ip-osd存储状态列表和所述传输率返回给所述前端设备。

3.如权利要求2所述的系统,其特征在于,

所述前端设备还包括:

扩缩容影响预判模块,用于执行以下操作:从所述后端服务器获取crushmap及osd-pg列表;将所述crushmap及osd-pg列表展示在前端页面;将运维人员输入的需要扩缩容的节点信息及磁盘信息发送至所述后端服务器;获取所述后端服务器返回的根据需要扩缩容的节点信息及磁盘信息计算得到的新的pg分布;

所述后端服务器还包括:

扩缩容影响计算模块,用于执行以下操作:在接收到所述前端服务器发送的预判扩缩容影响的请求后,从所述对象存储系统获取集群的crushmap及pg列表;处理所述crushmap及pg列表得到crushmap及osd-pg列表;将得到的crushmap及osd-pg列表返回给所述前端设备;根据所述前端设备发送的需要扩缩容的节点信息及磁盘信息,采用crush算法计算新的pg分布;将新的pg分布返回至所述前端设备。

4.如权利要求1至3任意一项所述的系统,其特征在于

所述前端设备还包括:

osd状态实时展示模块,用于向所述后端服务器发送获取osd状态的请求并将所述后端服务器响应所述请求而返回的集群节点的osd状态信息以预定形式展现在前端页面上;

所述后端服务器还包括:

osd状态处理模块,用于在接收到所述前端设备发送的获osd状态的请求后向所述ceph的对象存储系统获取集群节点的osd状态信息,并将获取的集群节点的osd状态信息返回给所述前端设备。

5.如权利要求4所述的系统,其特征在于,所述预定形式包括树形结构,并且用不同的颜色显示集群节点的osd的不同状态。

6.一种用于对基于ceph的对象存储系统进行故障分析的系统,其特征在于,所述系统包括前端设备和后端服务器;

其中,所述前端设备包括显示器、第一存储器和第一处理器,所述第一存储器上存储有被第一处理器执行以进行下述操作的计算机可读指令:

从所述后端服务器获取ip-osd列表、osd-pg列表、ip-pg列表,并将ip-osd列表通过所述显示器展现在前端页面;根据运维人员输入的两个故障节点ip或磁盘id从ip-pg列表或osd-pg列表查询受影响的pg,并将受影响的pg通过所述显示器显示在前端页面;

其中,所述后端服务器包括第二存储器和第二处理器,所述第二存储器上存储有被第二处理器执行以进行下述操作的计算机可读指令:

在接收到所述前端设备获取osd、pg列表的请求后,向所述对象存储系统获取集群的osd、pg列表;处理所述osd、pg列表得到ip-osd列表、osd-pg列表、ip-pg列表,并将所述ip-osd列表、osd-pg列表、ip-pg列表返回给所述前端设备。

7.如权利要求6所述的系统,其特征在于,

在所述前端设备中,所述第一存储器上还存储有被第一处理器执行以进行下述操作的计算机可读指令:

从所述后端服务器得到ip-osd存储状态列表和osd之间的传输速率,并将所述ip-osd存储状态列表通过所述显示器展示在前端页面;根据运维人员输入的故障节点ip或磁盘id从ip-osd存储状态列表确定待迁移的数据量;根据所述待迁移的数据量和所述传输速率计算数据迁移时间;将计算得到的数据迁移时间通过所述显示器展示在前端页面;

在所述后端服务器中,所述第二存储器上还存储有被第二处理器执行以进行下述操作的计算机可读指令:

在接收到所述前端设备获取恢复时间的请求后,从所述对象存储系统获取osd列表及集群状态信息;处理据所述osd列表及集群状态信息得到ip-osd存储状态列表;根据磁盘io性能和集群配置计算osd之间的传输速率;将所述ip-osd存储状态列表和所述传输率返回给所述前端设备。

8.如权利要求7所述的系统,其特征在于,

在所述前端设备中,所述第一存储器上还存储有被第一处理器执行以进行下述操作的计算机可读指令:

从所述后端服务器获取crushmap及osd-pg列表;将所述crushmap及osd-pg列表展示在前端页面;将运维人员输入的需要扩缩容的节点信息及磁盘信息发送至所述后端服务器;获取所述后端服务器返回的根据需要扩缩容的节点信息及磁盘信息计算得到的新的pg分布;

在所述后端服务器中,所述第二存储器上还存储有被第二处理器执行以进行下述操作的计算机可读指令:

在接收到所述前端服务器发送的预判扩缩容影响的请求后,从所述对象存储系统获取集群的crushmap及pg列表;处理所述crushmap及pg列表得到crushmap及osd-pg列表;将得到的crushmap及osd-pg列表返回给所述前端设备;根据所述前端设备发送的需要扩缩容的节点信息及磁盘信息,采用crush算法计算新的pg分布;将新的pg分布返回至所述前端设备。

9.如权利要求6至8任意一项所述的系统,其特征在于

在所述前端设备中,所述第一存储器上还存储有被第一处理器执行以进行下述操作的计算机可读指令:

向所述后端服务器发送获取osd状态的请求,并将所述后端服务器响应所述请求而返回的集群节点的osd状态信息以预定形式通过所述显示器展现在前端页面上;

在所述后端服务器中,所述第二存储器上还存储有被第二处理器执行以进行下述操作的计算机可读指令:

osd状态处理模块,用于在接收到所述前端设备发送的获osd状态的请求后向所述ceph的对象存储系统获取集群节点的osd状态信息,并将获取的集群节点的osd状态信息返回给所述前端设备。

10.如权利要求9所述的系统,其特征在于,所述预定形式包括树形结构,并且用不同的颜色显示集群节点的osd的不同状态。

11.一种计算机可读存储介质,其上存储有计算机可读指令,其特征在于,所述计算机可读指令被处理器执行时进行权利要求6-10中任意一项所述的系统中所述前端设备所执行的操作或所述后端服务器所执行的操作。

技术总结
本文公开了一种用于对基于Ceph的对象存储系统进行故障分析的系统和介质,涉及计算机应用技术领域。所述系统包括前端设备和后端服务器,其中,所述后端服务器在接收到所述前端设备获取osd、pg列表的请求后,向所述对象存储系统获取集群的osd、pg列表;处理所述osd、pg列表得到ip‑osd列表、osd‑pg列表、ip‑pg列表,并将所述ip‑osd列表、osd‑pg列表、ip‑pg列表返回给所述前端设备;所述前端设备将ip‑osd列表展现在前端页面,根据运维人员输入的两个故障节点IP或磁盘ID从ip‑pg列表或osd‑pg列表查询受影响的pg,并将受影响的pg显示在前端页面。可以在节点或磁盘故障时迅速判断影响范围及迁移恢复时间,提高工作效率。

技术研发人员:刘鹤煜;谷亚军
受保护的技术使用者:中国建设银行股份有限公司
技术研发日:2019.12.31
技术公布日:2020.06.05

转载请注明原文地址: https://bbs.8miu.com/read-59278.html

最新回复(0)