云平台存储熔断的方法、装置、设备及存储介质.pdf
《云平台存储熔断的方法、装置、设备及存储介质.pdf》由会员分享,可在线阅读,更多相关《云平台存储熔断的方法、装置、设备及存储介质.pdf(17页完成版)》请在专利查询网上搜索。
1、(19)国家知识产权局(12)发明专利申请(10)申请公布号 (43)申请公布日 (21)申请号 202310630805.3(22)申请日 2023.05.29(71)申请人 济南浪潮数据技术有限公司地址 250000 山东省济南市自由贸易试验区济南片区浪潮路1036号浪潮科技园S05楼S311室(72)发明人 何若永郭涛孔维亭(74)专利代理机构 北京三聚阳光知识产权代理有限公司 11250专利代理师 穆瑞丹(51)Int.Cl.G06F 3/06(2006.01)(54)发明名称一种云平台存储熔断的方法、装置、设备及存储介质(57)摘要本发明涉及计算机技术领域,公开了一种云平台存储熔断的。
2、方法、装置、设备及存储介质,方法应用于云管理平台,包括:以预设周期从开放式云端平台的预设数据库中读取存储池监控数据,存储池监控数据由开放式云端平台中预部署的监控采集脚本采集得到,用于表征各个存储池的存储容量;通过存储池监控数据识别存储容量超过容量阈值的目标存储池;搜索目标存储池挂载的目标云主机;通过调用开放式云端平台的Nova组件对目标云主机进行熔断。本发明保证了分布式存储系统中容量已经超限的目标存储池的容量不再继续增长,进而维护了分布式存储系统的稳定性。权利要求书2页 说明书10页 附图4页CN 116610260 A2023.08.18CN 116610260 A1.一种云平台存储熔断的方。
3、法,其特征在于,应用于云管理平台,所述方法包括:以预设周期从开放式云端平台的预设数据库中读取存储池监控数据,所述存储池监控数据由所述开放式云端平台中预部署的监控采集脚本采集得到,用于表征各个存储池的存储容量;通过所述存储池监控数据识别存储容量超过容量阈值的目标存储池;搜索所述目标存储池挂载的目标云主机;通过调用所述开放式云端平台的Nova组件对所述目标云主机进行熔断。2.根据权利要求1所述的方法,其特征在于,所述容量阈值包括中度阈值和严重阈值,所述严重阈值大于所述中度阈值,所述通过所述存储池监控数据识别存储容量超过容量阈值的目标存储池,包括:通过所述存储池监控数据从全部存储池中识别存储容量超过。
4、所述中度阈值的候选目标存储池;基于所述候选目标存储池生成告警记录;通过所述存储池监控数据从所述候选目标存储池中识别存储容量超过所述严重阈值的所述目标存储池。3.根据权利要求2所述的方法,其特征在于,所述搜索所述目标存储池挂载的目标云主机,包括:根据所述目标存储池在云管理平台的存储池数据库中搜索所述目标存储池挂载的目标云主机。4.根据权利要求3所述的方法,其特征在于,所述云管理平台包括监控模块和计算模块,所述以预设周期从开放式云端平台的预设数据库中读取存储池监控数据到所述通过所述存储池监控数据识别存储容量超过容量阈值的目标存储池的步骤由所述监控模块执行,所述搜索所述目标存储池挂载的目标云主机到所。
5、述通过调用所述开放式云端平台的Nova组件对所述目标云主机进行熔断的步骤由所述计算模块执行,在所述搜索所述目标存储池挂载的目标云主机之前,所述方法还包括:通过监控模块发送包含所述目标存储池的告警事件到所述计算模块,以使所述计算模块解析所述告警事件,得到所述目标存储池。5.根据权利要求1所述的方法,其特征在于,所述通过调用所述开放式云端平台的Nova组件对所述目标云主机进行熔断,包括:判断所述目标存储池是否在所述云管理平台中配置了开启熔断;当所述目标存储池开启熔断时,通过调用所述开放式云端平台的Nova组件对所述目标云主机进行熔断;当所述目标存储池未开启熔断时,忽略熔断目标云主机的请求。6.根据。
6、权利要求5所述的方法,其特征在于,所述当所述目标存储池开启熔断时,通过调用所述开放式云端平台的Nova组件对所述目标云主机进行熔断,包括:判断所述云管理平台配置的熔断策略是全部熔断还是部分熔断;当所述熔断策略是全部熔断时,通过调用所述开放式云端平台的Nova组件对所述目标云主机中的全部业务云主机进行熔断;当所述熔断策略是部分熔断时,根据所述存储池监控数据从所述目标云主机中确定在权利要求书1/2 页2CN 116610260 A2预设时间段内存储增长量最高的前预设百分比的活跃云主机;通过调用所述开放式云端平台的Nova组件对所述活跃云主机进行熔断。7.根据权利要求6所述的方法,其特征在于,所述方。
7、法还包括:监控所述目标存储池的存储容量;每当所述目标存储池的存储容量增长预设容量值时,通过调用所述开放式云端平台的Nova组件对所述目标云主机再次进行熔断。8.一种云平台存储熔断的装置,其特征在于,应用于云管理平台,所述装置包括:监控单元,用于以预设周期从开放式云端平台的预设数据库中读取存储池监控数据,所述存储池监控数据由所述开放式云端平台中预部署的监控采集脚本采集得到,用于表征各个存储池的存储容量;存储状态识别单元,用于通过所述存储池监控数据识别存储容量超过容量阈值的目标存储池;云主机识别单元,用于搜索所述目标存储池挂载的目标云主机;熔断单元,用于通过调用所述开放式云端平台的Nova组件对所。
8、述目标云主机进行熔断。9.一种计算机设备,其特征在于,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1至7中任一项所述的方法。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至7中任一项所述的方法。权利要求书2/2 页3CN 116610260 A3一种云平台存储熔断的方法、装置、设备及存储介质技术领域0001本发明涉及计算机技术领域,具体涉及一种云平台存储熔断的方法、装置、设备及存储介质。背景技术0002传统的网络存储系统。
9、采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要。分布式存储系统,是将数据分散存储在多台独立的设备上,分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,它不但提高了系统的可靠性、可用性和存取效率,还易于扩展。0003分布式存储系统要求所有存储池的容量不能超过一定的占比,倘若超过则会导致存储系统分配过载从而出现故障,云主机出现卡死。存储后端过度写入后,继续写入将大幅增加隐患,会引发存储挂掉、其上的云主机不可用等问题。所以,提出一个高度可靠的解决方案刻不容缓。发明内容0004有鉴。
10、于此,本发明提供了一种云平台存储熔断的方法、装置、设备及存储介质,以解决分布式存储系统中存储池容量超限的问题。0005第一方面,本发明提供了一种云平台存储熔断的方法,应用于云管理平台,方法包括:以预设周期从开放式云端平台的预设数据库中读取存储池监控数据,存储池监控数据由开放式云端平台中预部署的监控采集脚本采集得到,用于表征各个存储池的存储容量;通过存储池监控数据识别存储容量超过容量阈值的目标存储池;搜索目标存储池挂载的目标云主机;通过调用开放式云端平台的Nova组件对目标云主机进行熔断。0006本实施例在云管理平台和开放式云端平台分别增加了监控分析逻辑与监控数据采集逻辑,开放式云端平台会实时将。
11、采集的存储池监控数据存储到预设数据库中,从而云管理平台通过读取预设数据库中,根据存储池监控数据分析哪一个存储池的存储容量超过容量阈值,进而在云管理平台中搜索和识别存储容量超过容量阈值的存储池上挂载的目标云主机,从而通过调用开放式云端平台的Nova组件对目标云主机进行熔断,以防止目标云主机继续向对应的存储池中写入数据,保证了分布式存储系统中容量已经超限的目标存储池的容量不再继续增长,进而维护了分布式存储系统的稳定性。0007在一种可选的实施方式中,容量阈值包括中度阈值和严重阈值,严重阈值大于中度阈值,通过存储池监控数据识别存储容量超过容量阈值的目标存储池,包括:通过存储池监控数据从全部存储池中识。
12、别存储容量超过中度阈值的候选目标存储池;基于候选目标存储池生成告警记录;通过存储池监控数据从候选目标存储池中识别存储容量超过严重阈值的目标存储池。0008本实施例在云管理平台中分别配置了中度阈值和严重阈值两个容量阈值,中度阈说明书1/10 页4CN 116610260 A4值主要用于对容量将要超限但是还没有超限的存储池进行识别,严重阈值用于对已经容量超限的存储池进行识别。本实施例针对存储容量超过中度阈值的候选目标存储池均生成告警记录,用于通知用户及时采取措施;对于候选目标存储池中存储容量超过严重阈值的目标存储池才采取熔断措施。这样做的优点在于,本实施例的告警机制是一个绝对中立的进程,通过中度阈。
13、值的识别,不论存储池的容量是否已经超限,当存储池的容量较大时都及时告警用户,以促使用户采取消减存储容量或扩容的措施,以在云主机熔断之前通过措施提高分布式存储系统的稳定性,来降低云主机熔断的几率,维持用户的使用体验。0009在一种可选的实施方式中,搜索目标存储池挂载的目标云主机,包括:根据目标存储池在云管理平台的存储池数据库中搜索目标存储池挂载的目标云主机。0010本实施例在云管理平台中预先部署了存储池数据库,在存储池数据库中记录了开放式云端平台所管理的全部存储池信息,关于每个存储池挂载的云主机信息均可以在存储池数据库中查询得到,通过存储池数据库能够使云管理平台快速搜索到目标存储池挂载的目标云主。
14、机,进而执行熔断策略,无需通过网络在开放式云端平台中远程搜索每个存储池挂载的云主机信息,提高了确定目标云主机的效率。0011在一种可选的实施方式中,云管理平台包括监控模块和计算模块,以预设周期从开放式云端平台的预设数据库中读取存储池监控数据到通过存储池监控数据识别存储容量超过容量阈值的目标存储池的步骤由监控模块执行,搜索目标存储池挂载的目标云主机到通过调用开放式云端平台的Nova组件对目标云主机进行熔断的步骤由计算模块执行,在搜索目标存储池挂载的目标云主机之前,方法还包括:通过监控模块发送包含目标存储池的告警事件到计算模块,以使计算模块解析告警事件,得到目标存储池。0012在本实施例中,将云管。
15、理平台执行熔断方法的程序分为两个模块,其中监控模块用于提取存储池监控数据并分析哪一个存储池因为容量超限需要执行熔断,计算模块用于根据监控模块确定的目标存储池计算相应需要熔断的目标云主机并调用开放式云端平台的Nova组件执行熔断,计算模块与监控模块通过告警事件进行通信。通过这一方式,将云存储熔断整体流程解耦为两个独自的子程序,使监控存储池和执行熔断两部分能够异步执行,提高了云存储熔断方法的灵活性和执行效率。0013在一种可选的实施方式中,通过调用开放式云端平台的Nova组件对目标云主机进行熔断,包括:判断目标存储池是否在云管理平台中配置了开启熔断;当目标存储池开启熔断时,通过调用开放式云端平台的。
16、Nova组件对目标云主机进行熔断;当目标存储池未开启熔断时,忽略熔断目标云主机的请求。0014在本实施例中,还通过云管理平台配置了云主机是否开启熔断的功能,从而根据用户的需求,当存储池需要进行保护时,则开启熔断,否则不开启熔断。在执行熔断策略时,只对开启熔断的存储池进行云主机熔断,从而进一步提高了云存储熔断的灵活性。0015在一种可选的实施方式中,当目标存储池开启熔断时,通过调用开放式云端平台的Nova组件对目标云主机进行熔断,包括:判断云管理平台配置的熔断策略是全部熔断还是部分熔断;当熔断策略是全部熔断时,通过调用开放式云端平台的Nova组件对目标云主机中的全部业务云主机进行熔断;当熔断策略。
17、是部分熔断时,根据存储池监控数据从目标云主机中确定在预设时间段内存储增长量最高的前预设百分比的活跃云主机;通过调用开放式云端平台的Nova组件对活跃云主机进行熔断。说明书2/10 页5CN 116610260 A50016在本实施例中,分别配置了两种熔断策略,一类是熔断容量超限的存储池上的全部业务云主机,另一类是熔断存储量增长过快的部分业务云主机,基于此,本发明实施例可以根据用户的实际需求灵活选择,从而当用户具有云主机的强使用需求时,可以保留部分业务云主机不熔断,维持用户的业务,进一步提高了云存储熔断方法的灵活性。0017在一种可选的实施方式中,方法还包括:监控目标存储池的存储容量;每当目标存。
18、储池的存储容量增长预设容量值时,通过调用开放式云端平台的Nova组件对目标云主机再次进行熔断。0018在本实施例中,以定期轮询的方式判断已经执行熔断的目标存储池是否又出现了较大的存储容量增长,以在目标存储池的存储容量每增长超过预设容量值时均触发一次熔断策略,进一步提高了分布式存储系统的可靠性和稳定性。0019第二方面,本发明提供了一种云平台存储熔断的装置,应用于云管理平台,装置包括:监控单元,用于以预设周期从开放式云端平台的预设数据库中读取存储池监控数据,存储池监控数据由开放式云端平台中预部署的监控采集脚本采集得到,用于表征各个存储池的存储容量;存储状态识别单元,用于通过存储池监控数据识别存储。
19、容量超过容量阈值的目标存储池;云主机识别单元,用于搜索目标存储池挂载的目标云主机;熔断单元,用于通过调用开放式云端平台的Nova组件对目标云主机进行熔断。0020第三方面,本发明提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的方法。0021第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的方法。附图说明0022为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对。
20、具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。0023图1是相关技术分布式存储系统架构的结构示意图;0024图2是根据本发明实施例的一种云平台存储熔断的方法的流程示意图;0025图3是根据本发明实施例的分布式存储系统架构的结构示意图;0026图4是根据本发明实施例的一种云平台存储熔断的方法的另一个流程示意图;0027图5是根据本发明实施例的一种云平台存储熔断的装置的结构示意图;0028图6是本发明实施例的计算机设备的硬件结构示意图。具体实施方。
21、式0029为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没说明书3/10 页6CN 116610260 A6有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。0030分布式存储系统,是将数据分散存储在多台独立的设备上的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息。在软件层面,分布式存储系统架构主要包括3层,如图1所示,自顶向下分别是云管理平台(Cloud Manageme。
22、nt Platforms,CMP)、开放式云端平台(Openstack)和存储池。0031其中,存储池是在物理存储的基础上虚拟化生成的存储空间,物理存储包括但不限于G2存储、AS13000存储等多种存储设备。例如:假设有10台G2存储设备,将10台存储设备视为一个整体,通过虚拟化技术可在10台存储设备上跨设备虚拟得到5个存储空间,每个虚拟出的存储空间即作为一个存储池。存储虚拟化是云存储的一个重要技术基础,是通过抽象和封装底层存储系统的物理特性,将多个互相隔离的存储系统统一化为一个抽象的资源池的技术,通过存储虚拟化技术,云存储可以实现很多新的特性,比如,用户数据在逻辑上的隔离、存储空间的精简配置。
23、等。0032其中,开放式云端平台是用于管理存储资源的开源系统,由几个主要的组件共同完成一些具体的工作,是一个旨在为公共及私有云的建设与管理提供软件的开源项目,一个开放式云端平台可以管理多个存储池,同样,由大量存储池组成的底层存储可以被多个开放式云端平台分别管理。0033其中,云管理平台是云平台的门户,是用户对云资源进行综合管理和应用的直接交互与操作对象,用户的所有云资源都能够在云管理平台中呈现,在本应用场景中,开放式云端平台的各大组件位于云管理平台的下方,云管理平台为实现资源管理能力需要调用开放式云端平台中各个组件的API;存储池构成的底层存储位于开放式云端平台的再下一层,是由第三方运营商提供。
24、的在线存储系统,比如文件、块或对象存储系统等,多采用分布式架构。云管理平台可以跨平台式的管理多个开放式云端平台,多个开放式云端平台的组件能够通过一个云管理平台统一管理和调用。0034其中,每个存储池均挂载了若干云主机,在分布式系统中,除了分布式的物理存储设备,还包括处理器等执行设备,云主机是基于虚拟化技术从分布式服务器上虚拟生成的虚拟机,例如虚拟一定数量的处理器核、显卡等,生成云主机,用户通过访问云主机完成在云端完成一系列任务,同时,云主机产生的存储数据需要存储到存储池。当存储池的容量超过一定占比时,具有较大风险导致存储系统分配过载从而出现故障,云主机出现卡死,还会引发存储挂掉、其上的云主机不。
25、可用等问题。0035基于此,针对存储池的存储容量超限的问题,本发明实施例提供了如下方案。0036根据本发明实施例,提供了一种云平台存储熔断的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。0037在本实施例中提供了一种云平台存储熔断的方法,应用于云管理平台,图2是根据本发明实施例的一种云平台存储熔断的方法的流程图,如图2所示,该流程包括如下步骤:0038步骤S201:以预设周期从开放式云端平台的预设数据库中读取存储池监控数据,存储池监控数据由开。
26、放式云端平台中预部署的监控采集脚本采集得到,用于表征各个存储池的存储容量。说明书4/10 页7CN 116610260 A70039具体地,本发明实施例在开放式云端平台中分别部署了预设数据库和监控采集脚本,其中监控采集脚本用于采集存储池监控数据,存储池监控数据是用于表征各个存储池的存储容量的数据,例如表征当前存储池已存储了多少TP、GB、MB等单位的数据,或者表征当前存储池的存储容量达到了总容量的百分比。监控采集脚本的编程语言并不做特殊限定,在一般应用场景下,开放式云端平台是基于python语言的管理平台,从而监控采集脚本可开发为python脚本。其中预设数据库用于存储监控采集脚本采集的存储池。
27、监控数据,在本发明实施例中,为了便于云管理平台按照时间从预设数据库中读取存储池监控数据,故采用时序数据库,具体可采用的数据库包括但不限于InfluxDB、Kdb+、TimescaleDB。在本实施例中,开放式云端平台通过监控采集脚本实时采集存储池监控数据,并将存储池监控数据存入预设数据库,云管理平台以预设周期(例如5分钟10分钟)从开放式云端平台的预设数据库中读取存储池监控数据。0040步骤S202:通过存储池监控数据识别存储容量超过容量阈值的目标存储池。0041具体地,本发明实施例在云管理平台中预先配置了容量阈值,用于将读取的存储池监控数据和容量阈值进行比对,从而根据比对结果从全部存储池中确。
28、定存储容量超过容量阈值的目标存储池。0042步骤S203:搜索目标存储池挂载的目标云主机。0043具体地,目标存储池是存储容量超过容量阈值的存储池,表征目标存储池存储数据过多,其上各业务云主机如果继续保持极高的写入操作,将直接引起存储出现不可控受损,发生存储或云主机宕机的风险较大,因此,及时熔断挂载在目标存储池上的云主机是一种非常可靠的方式。所谓熔断,是一种类似于电路保险丝的机制,一旦存储写入过量,比较有效的解决方案就是及时采取措施避免接下来的写入操作,保护存储避免出现故障,从而为未来的安全扩容等等有效解决方案争取条件。所以,在本发明实施例中,云管理平台会及时搜索在目标存储池上挂载的目标云主机。
29、,以便于对目标云主机进行熔断,避免目标存储池的存储容量继续增长。在本实施例中,云管理平台可以通过开放式云端平台的Nova组件API调用Nova组件,通过Nova组件搜索管理的目标存储池上挂载的目标云主机具体包括哪些。0044步骤S204:通过调用开放式云端平台的Nova组件对目标云主机进行熔断。0045具体地,在搜索到目标云主机后,云管理平台可以通过开放式云端平台的API调用Nova组件,通过Nova组件对目标云主机进行熔断。在本发明实施例中,熔断方式包括暂停和关闭两种,当熔断方式采用暂停时,熔断的云主机暂停当前任务进程,在恢复时可以继续之前的任务,灵活性更高,但是对分布式存储系统的稳定性保障。
30、相对较低。当熔断方式采用关闭时,熔断的云主机完全关闭,之前正在进行的任务完全清除,对分布式存储系统的稳定性保障相对较高。针对以上两种熔断方式,本实施例可根据用户的需求,在云管理平台的图像界面中进行灵活配置。0046本发明实施例提供的方案,核心思维在于如何去采取措施在极端情况下扼制继续往存储当中写入数据来保护存储,并不直接参与修复已经发生的后端存储池故障。设计重心从分布式存储系统的最顶层出发,去更早地保护后端存储池及其上的云主机等资源不受损失,自顶向下,稳步推进数据一致性。通过这一方案,保证了分布式存储系统中容量已经超限的目标存储池的容量不再继续增长,进而维护了分布式存储系统的稳定性。说明书5/。
31、10 页8CN 116610260 A80047在一些可选地实施方式中,容量阈值包括中度阈值和严重阈值,严重阈值大于中度阈值,上述步骤S202包括:0048步骤a1,通过存储池监控数据从全部存储池中识别存储容量超过中度阈值的候选目标存储池。0049步骤a2,基于候选目标存储池生成告警记录。0050步骤a3,通过存储池监控数据从候选目标存储池中识别存储容量超过严重阈值的目标存储池。0051具体地,本实施例在云管理平台中分别配置了中度阈值和严重阈值两个容量阈值,中度阈值主要用于对容量将要超限但是还没有超限的存储池进行识别,严重阈值大于中度阈值,主要用于对已经容量超限的存储池进行识别。云管理平台在监。
32、控过程中,根据存储池监控数据将各个存储池的存储容量先与中度阈值进行比对,然后为其中超过中度阈值的候选目标存储池均生成告警记录,告警记录用于生成相应的告警通知,用于通知用户及时采取措施,例如通知用户及时进行扩容,或者通知用户及时删除存储池中无用的数据。在此基础上,将每个候选目标存储池的存储容量与严重阈值进行比对,对于候选目标存储池中存储容量超过严重阈值的目标存储池才采取熔断措施。本发明实施例采取这一方式的优点在于,本实施例提供的告警机制是一个绝对中立的进程,通过中度阈值的识别,不论存储池的容量是否已经超过严重阈值,针对较大容量的存储池都及时告警用户,以促使用户采取消减存储容量或扩容的措施,以在云。
33、主机熔断之前通过措施提高分布式存储系统的稳定性。本实施例提供的方案是集监控告警、计算与存储资源管理等多套云计算内部体系于一身的综合体,令云平台存储熔断方法的功能目标本质上是力图阻断可能发生的存储写入过量导致的各类异常,该功能的设计实现决定了其的作用主要是预防,从而降低了云主机熔断的几率,维持了用户的使用体验。0052在一些可选地实施方式中,上述步骤S203包括:0053步骤b1,根据目标存储池在云管理平台的存储池数据库中搜索目标存储池挂载的目标云主机。0054具体地,本发明实施例还在云管理平台中部署了存储池数据库,存储池数据库是一个关系型数据库(例如mariaDB、MysqlDB),用于存储开。
34、放式云端平台所管理的全部存储池信息,关于每个存储池的名称、ID以及每个存储池挂载的云主机信息(包括但不限于名称和ID)均可以在存储池数据库中查询得到,通过存储池数据库能够使云管理平台快速搜索到目标存储池挂载的目标云主机,进而执行熔断策略,无需通过网络在开放式云端平台中远程搜索每个存储池挂载的云主机信息,提高了确定目标云主机的效率。0055在一些可选地实施方式中,如图3所示,云管理平台包括监控模块和计算模块,上述步骤S201值S202由监控模块执行,上述步骤S203至S204由计算模块执行,在上述步骤S203之前,本发明实施例提供的一种云平台存储熔断的方法还包括:0056步骤c1,通过监控模块发。
35、送包含目标存储池的告警事件到计算模块,以使计算模块解析告警事件,得到目标存储池。0057具体地,在本实施例中,将云管理平台执行熔断方法的程序分为两个模块,其中监控模块负责收集与管理各种云资源的监控数据,用于提取存储池监控数据并分析哪一个存储池因为容量超限需要执行熔断,从而触发告警事件。计算模块负责管理所有的计算资源,说明书6/10 页9CN 116610260 A9包括资源池、云主机等等,用于根据监控模块确定的目标存储池计算相应需要熔断的目标云主机并调用开放式云端平台的Nova组件执行熔断,计算模块与监控模块通过告警事件进行通信。通过这一方式,将云存储熔断整体流程解耦为两个独自的子程序,使监控。
36、存储池和执行熔断两部分能够异步执行,提高了云存储熔断方法的灵活性和执行效率。0058在一些可选的实施方式中,上述步骤S204包括:0059步骤d1,判断目标存储池是否在云管理平台中配置了开启熔断;0060步骤d2,当目标存储池开启熔断时,通过调用开放式云端平台的Nova组件对目标云主机进行熔断;0061步骤d3,当目标存储池未开启熔断时,忽略熔断目标云主机的请求。0062具体地,在本实施例中,还通过云管理平台配置了存储池是否开启熔断的功能,例如用户可通过云管理平台的图像界面选择存储池数据库中的哪一个存储池开启熔断功能,哪一个存储池关闭熔断。从而根据用户的需求,当存储池需要进行保护时,则开启熔断。
37、,否则不开启熔断。在执行熔断策略时,本发明实施例只对开启熔断的存储池进行云主机熔断,从而进一步提高了云存储熔断的灵活性。0063在一些可选的实施方式中,上述步骤d2包括:0064步骤e1,判断云管理平台配置的熔断策略是全部熔断还是部分熔断;0065步骤e2,当熔断策略是全部熔断时,通过调用开放式云端平台的Nova组件对目标云主机中的全部业务云主机进行熔断;0066步骤e3,当熔断策略是部分熔断时,根据存储池监控数据从目标云主机中确定在预设时间段内存储增长量最高的前预设百分比的活跃云主机;0067步骤e4,通过调用开放式云端平台的Nova组件对活跃云主机进行熔断。0068具体地,在本实施例中,分。
38、别配置了两种熔断策略,一类是熔断容量超限的存储池上的全部业务云主机(业务云主机指的是实际操作业务的云主机,是除不可关闭的系统云主机和服务实例云主机之外的云主机),另一类是熔断存储量增长过快的部分业务云主机,基于此,本发明实施例可以根据用户的实际需求灵活选择,从而当用户具有云主机的强使用需求时,统计目标存储池上挂载的云主机在预设时间段内存储增长量,并将其从大到小排序,然后只对存储增长量最高的前预设百分比的活跃云主机(活跃云主机指的同样是活跃的业务云主机)进行熔断,可以保留部分云主机不熔断,维持用户的业务,进一步提高了云存储熔断方法的灵活性。0069在一些可选的实施方式中,本发明实施例提供的云平台。
39、存储熔断的方法还包括:0070步骤f1,监控目标存储池的存储容量;0071步骤f2,每当目标存储池的存储容量增长预设容量值时,通过调用开放式云端平台的Nova组件对目标云主机再次进行熔断。0072具体地,在实际应用时,可能出现部分未熔断的云主机突然开始高写入操作,还可能出现某些熔断关闭的云主机被用户偷偷打开,针对这一问题,在本实施例中,以定期轮询的方式判断已经执行熔断的目标存储池是否又出现了不可接受的存储容量增长(例如存储容量增长了0.2),从而在目标存储池的存储容量每增长超过预设容量值时均触发一次熔断策略,进一步提高了分布式存储系统的可靠性和稳定性。0073为了便于对本方案的理解,如图4所示。
40、,下面以一个完整实施例对本申请提供的一说明书7/10 页10CN 116610260 A10种云平台存储熔断的方法进行说明。00741.在云管理平台中配置针对于后端存储池的容量阈值,级别有中度阈值和严重阈值,严重阈值需大于中度阈值;00752.在云管理平台中配置各个存储池是否开启熔断,在任意存储池需要保护时,则需开启;00763.在云管理平台中配置云主机的熔断方式,支持关闭和暂停两种方式;00774.在云管理平台中配置熔断云主机的具体熔断策略,分为熔断全部云主机与熔断部分云主机;00785.云管理平台通过监控模块定期轮询存储池监控数据,从而分析各个后端存储池的存储占用率;00796.在某一时刻。
41、如果后端存储池的存储容量超过中度阈值(例如存储占用率超过50)但未超过严重阈值,云管理平台通过监控模块产生一条告警记录,并提示用户“后端存储池使用率已达到中度阈值,请及时扩容存储池或者将云主机迁移至其他存储”;00807.在某一时刻如果后端存储池的存储容量超过严重阈值(例如存储占用率超过70),监控模块则产生一条告警记录,并提示用户“后端存储池使用率已达到严重告警阈值,请扩容后端存储池或者将云主机迁移至其他存储”,与此同时,监控模块发出告警事件到计算模块,用于告知计算模块是哪个后端存储池需要熔断;00818.计算模块接收到告警事件后,判断需要熔断的目标存储池是否开启熔断,如果未开启,则不再做任。
42、何事情;00829.计算模块接收到告警事件后,判断需要熔断的目标存储池是否开启熔断,如果已开启:00831)当熔断策略为熔断全部业务云主机时,根据传过来的资源池与后端存储池,从挂载的全部云主机中排除其中的系统云主机、服务实例云主机等,筛选出剩下的处于开机状态的业务云主机;00842)当熔断云主机选择策略为熔断存储增长量最高的前预设百分比的云主机时,排除其中的系统云主机、服务实例云主机等,然后按照云主机的存储增长量对剩下的云主机倒序排序,从中找到所有处于开机状态的业务云主机,再根据配置的预设百分比计算出需要熔断的云主机个数,得到筛选的云主机;008510.云管理平台通过计算模块访问rest ap。
43、i,调用Nova组件对已经筛选出的云主机执行熔断,如果配置的熔断方式为暂停,则暂停所有被筛选的云主机,如果熔断方式为关闭,则关闭所有被筛选的云主机;008611.告警任务定期轮询,每隔固定的时间间隔便会轮询一次,在目标存储池超过严重阈值之后,每增长0.2,再触发一次熔断,流程为上述步骤610。0087对用户创建的业务云主机来说,本发明实施例提供的技术方案是一个强劲且有效的保护机制。从侧面来看,本方案对于其他的正常业务存在一定的干扰因素,不得不考量对用户体验性的影响。在熔断的过程中考虑用户体验性,实则是在熔断云主机时做一些取舍,即筛选出哪些云主机予以熔断、哪些云主机不去熔断,从而让用户的部分云主。
44、机所承载的业务不受影响。但是显然,只要有一个云主机没有熔断,那么分布式存储系统的可靠性会受到严峻考验,因为无法预料它们未来在某时的写入情况,所以用户体验性与功能可靠性可说明书8/10 页11CN 116610260 A11能是两个极端,本申请提供的技术方案旨在这种条件下进行权衡。0088为避免因漏熔断、或者某些没有熔断的云主机在未来某个时刻突发高IO,尽可能地将潜在风险因素降到最低,本申请提供的技术方案提供了熔断全部业务云主机这一选项去无差别熔断所有业务云主机。在采取扩容存储等有效修复手段之前,为了避免接下来存在的存储占用率增长风险,本申请提供的技术方案的熔断过程不是一次完成的,计划制定了0.。
45、2的步长,即存储占用率每增长0.2,则触发一次熔断。相比于用户服务,本申请提供的技术方案更多考虑可靠性,只要后端存储写入过度,必然出现如此故障,进而出现大面积云主机卡死的问题,这比有序暂停全部云主机更加恶劣,故本发明实施例提供的熔断方法采取最为严苛的手段进行过载保护是一种科学的方案。0089在本实施例中还提供了一种云平台存储熔断的装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。0090本实施例提供一种云。
46、平台存储熔断的装置,如图5所示,应用于云管理平台,包括:0091监控单元501,用于以预设周期从开放式云端平台的预设数据库中读取存储池监控数据,存储池监控数据由开放式云端平台中预部署的监控采集脚本采集得到,用于表征各个存储池的存储容量;0092存储状态识别单元502,用于通过存储池监控数据识别存储容量超过容量阈值的目标存储池;0093云主机识别单元503,用于搜索目标存储池挂载的目标云主机;0094熔断单元504,用于通过调用开放式云端平台的Nova组件对目标云主机进行熔断。0095上述各个模块和单元的更进一步的功能描述与上述对应实施例相同,在此不再赘述。需要注意的是,上述监控单元501和存储。
47、状态识别单元502即构成了监控模块,上述云主机识别单元503和熔断单元504构成了计算模块。0096本实施例中的一种云平台存储熔断的装置是以功能单元的形式来呈现,这里的单元是指ASIC(Application Specific Integrated Circuit,专用集成电路)电路,执行一个或多个软件或固定程序的处理器和存储器,和/或其他可以提供上述功能的器件。0097本发明实施例还提供一种计算机设备,具有上述图5所示的一种云平台存储熔断的装置。0098请参阅图6,图6是本发明可选实施例提供的一种计算机设备的结构示意图,如图6所示,该计算机设备包括:一个或多个处理器10、存储器20,以及用于。
48、连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相通信连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在计算机设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在一些可选的实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个计算机设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图6中以一个处理器10为例。0099处理器10可以是中央处理器,网络处理器或其组合。其中,处理器。
49、10还可以进一步说明书9/10 页12CN 116610260 A12包括硬件芯片。上述硬件芯片可以是专用集成电路,可编程逻辑器件或其组合。上述可编程逻辑器件可以是复杂可编程逻辑器件,现场可编程逻辑门阵列,通用阵列逻辑或其任意组合。0100其中,存储器20存储有可由至少一个处理器10执行的指令,以使至少一个处理器10执行实现上述实施例示出的方法。0101存储器20可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器20可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储。
50、器件、闪存器件、或其他非瞬时固态存储器件。在一些可选的实施方式中,存储器20可选包括相对于处理器10远程设置的存储器,这些远程存储器可以通过网络连接至该计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。0102存储器20可以包括易失性存储器,例如,随机存取存储器;存储器也可以包括非易失性存储器,例如,快闪存储器,硬盘或固态硬盘;存储器20还可以包括上述种类的存储器的组合。0103该计算机设备还包括通信接口30,用于该计算机设备与其他设备或通信网络通信。0104本发明实施例还提供了一种计算机可读存储介质,上述根据本发明实施例的方法可在硬件、固件中实现,或者被实。
- 内容关键字: 平台 存储 熔断 方法 装置 设备 介质
链接地址:https://www.zhuanlichaxun.net/pdf/14332770.html