云资源的处理方法、装置及电子设备与流程

文档序号:29039222发布日期:2022-02-25 20:07阅读:112来源:国知局
云资源的处理方法、装置及电子设备与流程

1.本技术涉及云资源技术领域,尤其涉及一种存储资源的处理方法、装置及电子设备。


背景技术:

2.在私有云为用户交付存储资源时,可能存在跨资源池交付存储资源的情况。例如,在用户的既有云存储资源需要扩容时,如果用户的既有存储磁盘所在的资源池的剩余磁盘容量不足,那么需要在其他存储池中划分存储资源提供给用户。
3.目前,通常由管理员根据经验确定所需要的资源池,为用户提供存储资源的交付。


技术实现要素:

4.有鉴于此,本技术提供一种云资源的处理方法、装置及电子设备,如下:
5.一种云资源的处理方法,包括:
6.获得云上的当前存储资源的扩容请求,所述扩容请求中包含至少一项请求参数;
7.至少根据所述扩容请求中的请求参数,获得目标存储资源,所述目标存储资源的性能与所述当前存储资源的性能相匹配;
8.将所述目标存储资源合并到所述当前存储资源中。
9.上述方法,优选的,至少根据所述扩容请求中的请求参数,获得目标存储资源,包括:
10.在所述当前存储资源所在的资源池与所述扩容请求相匹配的情况下,在所述当前存储资源所在的资源池中划分目标存储资源;
11.在所述当前存储资源所在的资源池与所述扩容请求不匹配的情况下,确定目标资源池,在所述目标资源池中划分目标存储资源,所述目标资源池的性能与所述当前存储资源所在的资源池的性能相匹配。
12.上述方法,优选的,确定目标资源池,包括:
13.获得所述当前存储资源中参照资源的第一性能参数;
14.获得所述云上具有空闲存储空间的资源池的第二性能参数;
15.根据所述第一性能参数和所述第二性能参数,获得所述云上与所述当前存储资源满足第一过滤条件的至少一个第一资源池;
16.在所述第一资源池中,获得与所述扩容请求中的请求参数相匹配的第一资源池,以得到第一目标集合;
17.至少根据所述第一目标集合,获得目标资源池。
18.上述方法,优选的,在至少根据所述第一目标集合,获得目标资源池之前,所述方法还包括:
19.根据所述第一性能参数和所述第二性能参数,获得所述云上与所述当前存储资源满足第二过滤条件的至少一个第二资源池,所述第二过滤条件和所述第一过滤条件中均包
含参数过滤阈值,且所述第二过滤条件中的参数过滤阈值与所述第一过滤条件中的参数过滤阈值不同,以使得所述第二资源池除了包含所述第一资源池还包含其他资源池;
20.在所述第二资源池中删除所述第一资源池;
21.在所述第二资源池中,获得与所述扩容请求中的请求参数相匹配的资源池,以得到第二目标集合;
22.其中,至少根据所述第一目标集合,获得目标资源池,包括:
23.根据所述第一目标集合和所述第二目标集合,获得目标资源池。
24.上述方法,优选的,根据所述第一目标集合和所述第二目标集合,获得目标资源池,包括:
25.至少输出所述第一目标集合的提示信息和所述第二目标集合的提示信息,以接收针对所述第一资源池或所述第二资源池的选择操作;
26.根据所述选择操作,获得目标资源池。
27.上述方法,优选的,获得所述云上具有空闲存储空间的资源池的第二性能参数,包括:
28.获得所述云上具有空闲存储空间的资源池中所包含的交付资源的资源性能参数;
29.根据所述资源性能参数,获得所述云上的每个资源池中满足资源筛选条件的目标交付资源;
30.根据所述目标交付资源,获得所述目标交付资源在所述云上所属的资源池的第二性能参数。
31.上述方法,优选的,如果所述当前存储资源对应于多个既有资源池,所述参照资源包含所述当前存储资源对应的每个所述既有资源池中的任一存储资源;
32.或,
33.所述参照资源为其所在既有资源池中满足资源筛选条件的存储资源。
34.上述方法,优选的,确定目标资源池,包括:
35.在所述云上具有空闲存储空间的资源池中,选择与所述扩容请求相匹配的至少一个第三资源池;
36.获得所述当前存储资源中参照资源的第一性能参数;
37.获得所述第三资源池的第三性能参数;
38.根据所述第一性能参数和所述第三性能参数,获得所述第三资源池中与所述当前存储资源满足第一过滤条件的资源池,以得到第三目标集合;
39.至少根据所述第三目标集合,获得目标资源池。
40.一种云资源的处理装置,包括:
41.请求获得单元,用于获得云上的当前存储资源的扩容请求,所述扩容请求中包含至少一项请求参数;
42.目标获得单元,用于至少根据所述扩容请求中的请求参数,获得目标存储资源,所述目标存储资源的性能与所示当前存储资源的性能相匹配;
43.资源合并单元,用于将所述目标存储资源合并到所述当前存储资源中。
44.一种电子设备,包括:
45.存储器,用于存储应用程序和所述应用程序运行所产生的数据;
46.处理器,用于执行所述应用程序,以实现:获得云上的当前存储资源的扩容请求,所述扩容请求中包含至少一项请求参数;至少根据所述扩容请求中的请求参数,获得目标存储资源,所述目标存储资源的性能与所述当前存储资源的性能相匹配;将所述目标存储资源合并到所述当前存储资源中。
47.从上述技术方案可以看出,本技术公开的一种云资源的处理方法、装置及电子设备中,按照扩容请求中的请求参数,获得性能与云上的当前存储资源相匹配的目标存储资源,再将获得到的目标存储资源合并到当前存储资源中。可见,本技术中无需管理员根据经验确定资源池进行资源扩容,而是根据扩容请求和存储资源的性能,进而为用户交付性能匹配且满足扩容请求的云资源,由此提高资源扩容的效率。
附图说明
48.为了更清楚地说明本技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
49.图1为本技术实施例一提供的一种云资源的处理方法的流程图;
50.图2和图3分别为资源分布的示例图;
51.图4为本技术实施例一提供的一种云资源的处理方法的部分流程图;
52.图5、图6和图7分别为资源划分的示例图;
53.图8-图12为本技术实施例一提供的一种云资源的处理方法的另一部分流程图;
54.图13为本技术实施例二提供的一种云资源的处理装置的结构示意图;
55.图14为本技术实施例三提供的一种电子设备的结构示意图;
56.图15为本技术适用于私有云的存储资源扩容的示例图。
具体实施方式
57.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
58.参考图1所示,为本技术实施例一提供的一种云资源的处理方法的实现流程图,该方法可以适用于云上实现资源管理的电子设备中,如云服务器等。本实施例中的技术方案主要用于提高云资源扩容的效率,为用户提供高效的云资源扩容服务。
59.具体的,本实施例中的方法可以包含如下步骤:
60.步骤101:获得云上的当前存储资源的扩容请求。
61.其中,扩容请求中包含至少一项请求参数。请求参数可以有请求容量的参数、资源类型的参数和资源预算的参数等中的任意一项或任意多项。请求容量的参数是指需要扩容的存储容量,资源类型的参数是指需要扩容的存储资源的性能类型,如高性能类型、普通类型、低性能类型,而资源预算的参数也可以成为资源成本的参数,具体是指用户所能够支付的成本上限。而云上的当前存储资源是指存储资源需要扩容的用户账户在云上对应的存储
资源,具体可以为:为该用户账户所划分的云存储磁盘等资源。
62.需要说明的是,当前存储资源可以对应于一个资源池或对应于多个资源池。例如,如图2中所示,当前存储资源中的存储磁盘1来自于一个资源池a;如图3中所示,当前存储资源中的存储磁盘1和2分别来自于两个资源池a和b。
63.在一种实现方式中,在云资源的扩容操作界面上,用户可以根据需求进行界面操作,例如,在扩容操作界面上输入请求的容量、输入所需要的资源类型以及资源预算的上限,基于此,本实施例中的电子设备可以对用户在扩容操作界面上的输入操作进行解析,从而获得到扩容请求。
64.在另一种实现方式中,用户在当前存储资源中进行数据存储时,本实施例中的电子设备可以根据用户的存储操作,判断该用户对应的当前存储资源的容量等参数是否满足用户当前的数据存储需求,如果不满足,那么根据用户的数据存储操作中的存储量等参数生成扩容请求,而扩容请求中的资源类型和资源预算等参数可以基于用户的当前存储资源的资源类型和资源预算来获得或基于用户的输入操作来获得。
65.在另一种实现方式中,用户在当前存储资源中进行数据存储时,本实施例中的电子设备可以根据用户的存储操作,判断该用户对应的当前存储资源的容量等参数是否满足用户当前的数据存储需求,如果不满足,那么为用户输出扩容操作界面,用户可以根据当前的存储需求进行界面操作,例如,在扩容操作界面上输入请求的容量、输入所需要的资源类型以及资源预算的上限,基于此,本实施例中的电子设备可以对用户在扩容操作界面上的输入操作进行解析,从而获得到扩容请求。
66.步骤102:至少根据扩容请求中的请求参数,获得目标存储资源。
67.其中,目标存储资源是与扩容请求中的请求参数相匹配的。而且,目标存储资源的性能与当前存储资源的性能相匹配,由此避免因为性能不匹配导致在资源合并后使得存储资源的性能下降严重的情况。
68.具体的,本实施例中可以根据扩容请求中的请求参数,在云上的资源池中选择性能匹配且满足扩容请求的资源池,进而在该资源池中划分出满足扩容请求中的请求参数的目标存储资源。而选择的资源池可能是当前存储资源所在的资源池,也可能是云上的其他资源池。
69.步骤103:将目标存储资源合并到当前存储资源中。
70.其中,在将目标存储资源合并到当前存储资源中之后,用户账户对应的存储资源被扩容,被扩容的当前存储资源满足扩容请求,因此,能够满足用户需求,而且被扩容的当前存储资源中存储资源的性能匹配,因此,不会因为性能不匹配导致性能下降的情况。
71.从上述技术方案可以看出,本技术实施例一提供的一种云资源的处理方法中,按照扩容请求中的请求参数,获得性能与云上的当前存储资源相匹配的目标存储资源,再将获得到的目标存储资源合并到当前存储资源中。可见,本实施例中无需管理员根据经验确定资源池进行资源扩容,而是根据扩容请求和存储资源的性能,进而为用户交付性能匹配且满足扩容请求的云资源,由此提高资源扩容的效率。
72.在一种实现方式中,步骤102中在获得目标存储资源时,具体可以通过以下方式实现,如图4中所示:
73.步骤401:判断当前存储资源所在的资源池是否与扩容请求相匹配,在当前存储资
源所在的资源池与扩容请求相匹配的情况下,执行步骤402,在当前存储资源所在的资源池与扩容请求不匹配的情况下,执行步骤403。
74.其中,当前存储资源所在的资源池与扩容请求相匹配,具体为:当前存储资源所在的资源池中的空闲存储空间与扩容请求中的请求容量参数相匹配。
75.需要说明的是,由于当前存储资源所在的资源池的性能肯定是与当前存储资源的性能是一致的,因此,当前存储资源所在的资源池的性能类型与扩容请求中的资源类型参数相匹配,且,当前存储资源所在的资源池的资源成本与扩容请求中的资源预算参数相匹配。
76.基于此,如果当前存储资源所在的资源池中有足够的空闲存储空间满足扩容请求中所要求的存储容量,那么执行步骤402,即当前资源池扩容。如果当前存储资源所在的资源池中没有足够的空闲存储空间满足扩容请求中所要求的存储容量,那么执行步骤403,即跨资源池实现扩容。
77.步骤402:在当前存储资源所在的资源池中划分目标存储资源。
78.其中,本实施例中可以按照扩容请求中的请求容量参数,在当前存储资源所在的资源池中划分存储空间与请求容量参数相匹配的磁盘空间,进而得到目标存储资源。由此,将划分得到的目标存储资源合并到当前存储资源中。例如,如图5中所示,在资源池a中划分磁盘3作为目标存储资源,再将磁盘3合并到包含磁盘1和磁盘2的当前存储资源中。再如,如图6中所示,在资源池a中划分磁盘3并在资源池b中划分磁盘4作为目标存储资源,再将磁盘3和磁盘4合并到包含磁盘1和磁盘2的当前存储资源中。
79.步骤403:确定目标资源池并在目标资源池中划分目标存储资源。
80.其中,目标资源池的性能与当前存储资源所在的资源池的性能相匹配。
81.具体的,本实施例中在云上所有具有空闲存储空间的资源池中选择性能与当前存储资源所在的资源池的性能相匹配的资源池,即目标资源池,进而可以按照扩容请求中的请求容量参数,在目标资源池中划分存储空间与请求容量参数相匹配的磁盘空间,进而得到目标存储资源。由此,将划分得到的目标存储资源合并到当前存储资源中。例如,如图7中所示,在资源池c中划分磁盘5作为目标存储资源,再将磁盘5合并到包含磁盘1和磁盘2的当前存储资源中。
82.基于以上实现方案,目标资源池可以有多种确定的方式,如下:
83.在第一种实现方式中,目标资源池可以通过以下方式确定,如图8中所示:
84.步骤801:获得当前存储资源中参照资源的第一性能参数。
85.其中,参照资源可以为当前存储资源所在资源池中的任一磁盘。例如,逻辑卷管理器lvm(logical volume manager)所管理的同一个卷组的云硬盘,或者,windows磁盘管理器需要扩容的逻辑盘中对应的云硬盘。
86.需要说明的是,如果当前存储资源对应于多个既有资源池,那么在这多个既有资源池中的每个资源池中分别选择一个存储资源作为参照资源,也就是说,参照资源包含当前存储资源对应的每个既有资源池的任一存储资源,或者,参照资源为其所在既有资源池中满足资源筛选条件的存储资源。其中,资源筛选条件可以为根据筛选需求所设置的条件。例如,资源筛选条件可以为:按照百分位算法筛选io延迟从小到大排序在最前的97%的存储资源,由此,参照资源为这97%中的存储资源中的任一存储资源;再如,资源筛选条件可
以为:按照直方图算法,筛选io吞吐最大的95个分割的条形个数(bins)的存储资源,由此,参照资源为这95个分割的条形个数(bins)对应的任一存储资源。
87.例如,如图2中所示,在资源池a中任意选择一个磁盘作为参照资源,或者在资源池a中选择io延迟从小到大排序在前97%的磁盘作为参照资源;如图3中所示,在资源池a和资源池b中分别任意选择一个磁盘作为参照资源,或者在资源池a和资源池b中分别选择io延迟从小到大排序在前97%的磁盘作为参照资源。
88.其中,第一性能参数为参照资源的性能参数,其中可以包含有输入输出io(input output)读延迟、io写延迟、io读带宽、io写带宽、io吞吐量等表征磁盘性能的平均值、最大值和最小值中的任意一项或任意多项。这些性能参数可以通过历史运行数据获得,因此,这些性能参数也可以成为历史性能参数,如io延迟历史极小值等。
89.具体的,云上对应于资源池的管理服务器上可以保存有各个资源池中各个磁盘的磁盘数据,这些磁盘数据包含有磁盘的运行日志数据,基于此,本实施例中的电子设备可以对这些磁盘数据进行读取和解析,进而得到作为参照资源的磁盘的第一性能参数。
90.需要说明的是,本实施例中可以通过重采样计算方式、增量计算方式或全量计算方式,定期获得参照资源的性能参数。
91.步骤802:获得云上具有空闲存储空间的资源池的第二性能参数。
92.其中,具有空闲存储空间的资源池即为可能满足扩容请求且性能匹配的资源池,云上没有空闲存储空间的资源池肯定不能满足扩容请求中的请求容量参数,因此,对于云上没有空闲存储空间的资源池不做考虑。
93.这里的第二性能参数为具有空闲存储空间的资源池的性能参数,其中可以包含有io读延迟、io写延迟、io读带宽、io写带宽、io吞吐量等表征资源池中磁盘性能的平均值、最大值和最小值中的任意一项或任意多项。这些性能参数可以通过历史运行数据获得,因此,这些性能参数也可以成为历史性能参数,如io延迟历史极小值、io带宽均值等。
94.具体的,云上对应于资源池的管理服务器上可以保存有各个资源池的资源池数据,这些资源池数据包含有资源池的运行日志数据,基于此,本实施例中的电子设备可以对这些资源池数据进行读取和解析,进而得到这些资源池的第二性能参数。
95.需要说明的是,本实施例中可以通过重采样计算方式、增量计算方式或全量计算方式,定期获得资源池的性能参数。
96.另外,本实施例中除了获得资源池的第二性能参数,还可以获得资源池的资源池名称、资源池类型、资源池ip(internet protocol address)或通用唯一识别码uuid(universally unique identifier)、空闲存储空间的容量、费用、资源交付约束和成本计算模型等参数。
97.需要说明的是,步骤801和步骤802的执行顺序不受附图中的顺序限制,即也可以先执行步骤802,再执行步骤801,或者同时执行步骤801和步骤802,步骤801和步骤802的执行顺序的不同所形成的不同的技术方案均在本技术的保护范围内。
98.步骤803:根据第一性能参数和第二性能参数,获得云上与当前存储资源满足第一过滤条件的至少一个第一资源池。
99.其中,第一过滤条件可以为对应于性能参数的过滤条件。具体的,第一过滤条件可以包含至少一项参数过滤阈值,各个参数过滤阈值对应于性能参数中的io读延迟、io写延
迟、io读带宽、io写带宽和io吞吐量等中的任意一项。例如,第一过滤条件中可以包含有io读延迟对应的参数过滤阈值、io写延迟对应的参数过滤阈值、io读带宽对应的参数过滤阈值、io写带宽对应的参数过滤阈值和io吞吐量对应的参数过滤阈值。
100.第一过滤条件中的参数过滤阈值的设置可以基于具有空闲存储空间的资源池的性能优于参照资源的性能的规则确定,或者,第一过滤条件中的参数过滤阈值的设置可以具有空闲存储空间的资源池的性能与参照资源的性能一致的规则确定。
101.具体的,第一过滤条件中的参数过滤阈值可以以参照资源的相应性能参数值的参数极值为基准所确定的阈值范围或阈值极值。例如,参照资源的io读延迟为4-6毫秒的范围,那么第一过滤条件中的io读延迟对应的参数过滤阈值为3-5毫秒的范围;再如,参照资源的io写带宽为2mbps,那么第一过滤条件中的io写带宽对应的参数过滤阈值为2或3mbps。
102.也就是说,第一过滤条件中的io读延迟对应的参数过滤阈值中的最大值小于或等于参照资源的io读延迟的最大值;第一过滤条件中的io写延迟对应的参数过滤阈值中的最大值小于或等于参照资源的io写延迟的最大值;第一过滤条件中的io读带宽对应的参数过滤阈值中的均值大于或等于参照资源的io读带宽的均值;第一过滤条件中的io写带宽对应的参数过滤阈值中的均值大于或等于参照资源的io写带宽的均值;第一过滤条件中的io吞吐量对应的参数过滤阈值中的均值大于或等于参照资源的io吞吐量的均值。
103.基于此,本实施例中使用第一过滤条件,对云上具有空闲存储空间的资源池进行一次筛选,筛选出的第一资源池的性能是与参照资源的性能相一致的或者是优于参照资源的性能的。
104.步骤804:在第一资源池中,获得与扩容请求中的请求参数相匹配的资源池,以得到第一目标集合。
105.具体的,本实施例中将请求参数分别与每个第一资源池进行比对,如果第一资源池的空闲存储空间、资源池类型以及资源池费用均与请求参数中的相应参数相匹配,那么将这个第一资源池添加到第一目标集合中;如果第一资源池中的空闲存储空间、资源池类型以及资源池费用中任意一项与请求参数中的相应参数不匹配,那么过滤掉该第一资源池。由此,第一目标集合中的第一资源池为性能匹配且满足扩容请求的资源池。
106.步骤805:至少根据第一目标集合,获得目标资源池。
107.在一种实现方式中,本实施例中可以按照随机算法在第一目标集合中随机挑选一个第一资源池作为目标资源池;
108.在另一种实现方式中,本实施例中可以在第一目标集合中挑选性能参数最优或满足其他条件的第一资源池作为目标资源池;其中,在性能参数有多项的情况下,可以对各项性能参数进行加权处理,从而按照加权值进行资源池挑选;
109.在另一种实现方式中,本实施例中可以先输出第一目标集合的提示信息,该提示信息中可以包含有各个第一资源池的资源池信息,由此提示给用户,例如,将资源池信息输出到电子设备对应的显示屏上,以推荐给用户,用户可以在显示屏上进行资源池选择,由此,本实施例中的电子设备在接收到针对第一资源池的选择操作之后,按照选择操作,获得被选择的目标资源池。
110.另外,本实施例中在输出第一资源池的资源池信息的同时,还可以输出其他被筛选掉的资源池的信息,以提示这些资源池不被推荐的原因。
111.需要说明的是,这里被输出的资源池信息可以包含有资源池的资源池名称、性能参数、资源池类型、资源池ip或uuid、空闲存储空间的容量、费用等参数。
112.基于以上实现,本实施例中可以在步骤805之前,先执行如下步骤,如图9中所示:
113.步骤806:根据第一性能参数和第二性能参数,获得云上与当前存储资源满足第二过滤条件的至少一个第二资源池。
114.其中,第二过滤条件可以为对应于性能参数的过滤条件。具体的,第二过滤条件和第一过滤条件中均包含有参数过滤阈值,但,第二过滤条件中的参数过滤阈值与第一过滤条件中的参数过滤阈值不同,以使得经过第二过滤条件所筛选出来的第二资源池中除了包含第一资源池还包含其他资源池。也就是说,第二过滤条件是对第一过滤条件中的参数过滤阈值进行放宽后的过滤条件。
115.例如,第二过滤条件中的io读延迟对应的参数过滤阈值中的最大值小于或等于参照资源的io读延迟的最大值,但,第二过滤条件中的io读延迟对应的参数过滤阈值中的最大值大于第一过滤条件中的io读延迟对应的参数过滤阈值中的最大值;
116.第二过滤条件中的io写延迟对应的参数过滤阈值中的最大值小于或等于参照资源的io写延迟的最大值,但第二过滤条件中的io写延迟对应的参数过滤阈值中的最大值大于第一过滤条件中的io写延迟对应的参数过滤阈值中的最大值;
117.第二过滤条件中的io读带宽对应的参数过滤阈值中的均值大于或等于参照资源的io读带宽的均值,但,第二过滤条件中的io读带宽对应的参数过滤阈值中的均值小于第一过滤条件中的io读带宽对应的参数过滤阈值中的均值;
118.第二过滤条件中的io写带宽对应的参数过滤阈值中的均值大于或等于参照资源的io写带宽的均值,但,第二过滤条件中的io写带宽对应的参数过滤阈值中的均值小于第一过滤条件中的io写带宽对应的参数过滤阈值中的均值;
119.第二过滤条件中的io吞吐量对应的参数过滤阈值中的均值大于或等于参照资源的io吞吐量的均值,但第二过滤条件中的io吞吐量对应的参数过滤阈值中的均值小于第一过滤条件中的io吞吐量对应的参数过滤阈值中的均值。
120.基于以上规则,对第一过滤条件中的阈值进行调整,如将io延迟增加1毫秒、将io吞吐量增加20gb,等等,由此基于得到的第二过滤条件对云上具有空闲存储空间的资源池再次进行筛选,得到第二资源池。
121.步骤807:在第二资源池中删除第一资源池,并在剩余的第二资源池中获得与扩容请求中的请求参数相匹配的第二资源池,以得到第二目标集合。
122.也就是说,本实施例中将第二资源池中所包含的第一资源池剔除,再将请求参数分别与每个剩余的第二资源池进行比对,如果被比对的第二资源池的空闲存储空间、资源池类型以及资源池费用均与请求参数中的相应参数相匹配,那么将这个第二资源池添加到第二目标集合中;如果第二资源池中的空闲存储空间、资源池类型以及资源池费用中任意一项与请求参数中的相应参数不匹配,那么过滤掉该第二资源池。由此,第二目标集合中的第二资源池为性能匹配且满足扩容请求的资源池。
123.基于此,步骤805中在获得目标资源池时,可以通过以下几种方式实现:
124.在一种实现方式中,本实施例中可以按照随机算法在第一目标集合和第二目标集合中随机挑选一个第一资源池或第二资源池作为目标资源池;
125.在另一种实现方式中,本实施例中可以在第一目标集合中挑选性能参数最优或满足其他条件的第一资源池或在第二目标集合中挑选性能参数最优或满足其他条件的第二资源池作为目标资源池;其中,在性能参数有多项的情况下,可以对各项性能参数进行加权处理,从而按照加权值进行资源池挑选;
126.在另一种实现方式中,本实施例中可以先输出第一目标集合的提示信息和第二目标集合的提示信息,第一目标集合的提示信息中可以包含有各个第一资源池的资源池信息,第二目标集合的提示信息中可以包含有各个第二资源池的资源池信息,由此提示给用户,例如,将资源池信息输出到电子设备对应的显示屏上,以推荐给用户,用户可以在显示屏上进行资源池选择,由此,本实施例中的电子设备在接收到针对第一资源池或第二资源池的选择操作之后,按照选择操作,获得被选择的目标资源池。
127.另外,本实施例中在输出第一资源池和第二资源池的资源池信息的同时,还可以输出其他被筛选掉的资源池的信息,以提示这些资源池不被推荐的原因。
128.需要说明的是,这里被输出的资源池信息可以包含有资源池的资源池名称、性能参数、资源池类型、资源池ip或uuid、空闲存储空间的容量、费用等参数。
129.需要说明的是,本实施例中在输出第一目标集合的提示信息和第二目标集合的提示信息时,可以按照第一目标集合的提示信息在前,第二目标集合的提示信息在后的规则,输出提示信息,由此提示用户:第一目标集合中的第一资源池的性能优于第二目标集合中的第二资源池的性能,以便于用户进行资源池选择。
130.基于以上实现方式,步骤802中在获得云上具有空闲存储空间的资源池的第二性能参数时,可以根据这些资源池中所包含的交付资源的性能参数来获得,例如,对这些交付资源的性能参数取极值或平均值,从而得到资源池的第二性能参数,如io延迟极值或io吞吐量均值等。
131.进一步的,为了提高第二性能参数的准确性,本实施例中可以对交付资源的进行筛选,再使用筛选出来的交付资源的性能参数获得资源池的性能参数,具体如下,如图10中所示:
132.步骤1001:获得云上具有空闲存储空间的资源池中所包含的交付资源的资源性能参数。
133.其中,这里的交付资源是指云上具有空闲存储空间的资源池中能够提供交付的磁盘资源。交付资源的资源性能参数可以在云上的管理服务器所保存的运行日志中获得。
134.步骤1002:根据资源性能参数,获得云上的每个资源池中满足资源筛选条件的目标交付资源。
135.其中,这里的资源筛选条件可以为根据筛选需求所设置的条件,如剔除性能最差的交付资源的条件。例如,资源筛选条件可以为:按照百分位算法筛选io延迟从小到大排序在最前的97%的交付资源,由此,按照资源筛选条件剔除资源池中io延迟从大到小排序在最前的3%的交付资源;再如,资源筛选条件可以为:按照直方图算法,筛选io吞吐最大的95个分割的条形个数(bins)的交付资源,由此,按照资源筛选条件剔除资源池中io吞吐最小的5个分割的条形个数(bins)的交付资源。由此,所得到的目标交付资源为过滤掉性能极端情况的交付资源。
136.步骤1003:根据目标交付资源,获得目标交付资源在云上所属的资源池的第二性
能参数。
137.也就是说,对资源池中存在性能极端情况的交付资源进行剔除,再基于所筛选出来的目标交付资源的性能参数获得到该资源池的第二性能参数。
138.综上,在第一种实现方式中,本实施例中先在云上筛选性能匹配的资源池,再按照扩容请求筛选满足请求参数的目标资源池。
139.在第二种实现方式中,目标资源池可以通过以下方式确定,如图11中所示:
140.步骤1101:在云上具有空闲存储空间的资源池中,选择与扩容请求相匹配的至少一个第三资源池。
141.具体的,本实施例中将请求参数分别与云上具有空闲存储空间的每个资源池进行比对,如果资源池的空闲存储空间、资源池类型以及资源池费用均与请求参数中的相应参数相匹配,那么将这个资源池确定为第三资源池;如果资源池中的空闲存储空间、资源池类型以及资源池费用中任意一项与请求参数中的相应参数不匹配,那么过滤掉该资源池。由此,第三资源池为满足扩容请求的资源池。
142.步骤1102:获得当前存储资源中参照资源的第一性能参数和第三资源池的第三性能参数。
143.其中,第一性能参数的获得方式可以参考步骤801中获得第一性能参数的实现方式。第三性能参数的获得方式可以参考步骤802中获得第二性能参数的实现方式。
144.步骤1103:根据第一性能参数和第三性能参数,获得第三资源池中与当前存储资源满足第一过滤条件的资源池,以得到第三目标集合。
145.其中,第三目标集合的获得方式,可以参考步骤803中获得第一资源池的实现方式。第三目标集合中包含有至少一个资源池。
146.步骤1104:至少根据第三目标集合,获得目标资源池。
147.在一种实现方式中,本实施例中可以按照随机算法在第三目标集合中随机挑选一个资源池作为目标资源池;
148.在另一种实现方式中,本实施例中可以在第三目标集合中挑选性能参数最优或满足其他条件的源池作为目标资源池;其中,在性能参数有多项的情况下,可以对各项性能参数进行加权处理,从而按照加权值进行资源池挑选;
149.在另一种实现方式中,本实施例中可以先输出第三目标集合的提示信息,该提示信息中可以包含有各个资源池的资源池信息,由此提示给用户,例如,将资源池信息输出到电子设备对应的显示屏上,以推荐给用户,用户可以在显示屏上进行资源池选择,由此,本实施例中的电子设备在接收到针对第三目标集合中的资源池的选择操作之后,按照选择操作,获得被选择的目标资源池。
150.另外,本实施例中在输出第三目标集合中资源池的资源池信息的同时,还可以输出其他被筛选掉的资源池的信息,以提示这些资源池不被推荐的原因。
151.另外,在步骤1104之前,还可以包含如下步骤,如图12中所示:
152.步骤1105:根据第一性能参数和第二性能参数,获得第三资源池中与当前存储资源满足第二过滤条件的资源池,以得到第四目标集合。
153.其中,步骤1105中获得第四目标集合的方式,可以参考步骤806中获得第二资源池的实现方式。由此,第四目标集合中包含第三目标集合所包含的资源池外,还包含其他资源
池。
154.步骤1106:在第四目标集合中删除第三目标集合所包含的资源池。
155.基于此,步骤1104中在获得目标资源池时,根据第三目标集合和第四目标集合获得目标资源池。
156.例如,在一种实现方式中,本实施例中可以按照随机算法在第三目标集合和第四目标集合中随机挑选一个资源池作为目标资源池;
157.在另一种实现方式中,本实施例中可以在第三目标集合中挑选性能参数最优或满足其他条件的资源池或在第四目标集合中挑选性能参数最优或满足其他条件的资源池作为目标资源池;其中,在性能参数有多项的情况下,可以对各项性能参数进行加权处理,从而按照加权值进行资源池挑选;
158.在另一种实现方式中,本实施例中可以先输出第三目标集合的提示信息和第四目标集合的提示信息,第三目标集合的提示信息中可以包含有各个资源池的资源池信息,第四目标集合的提示信息中可以包含有各个资源池的资源池信息,由此提示给用户,例如,将资源池信息输出到电子设备对应的显示屏上,以推荐给用户,用户可以在显示屏上进行资源池选择,由此,本实施例中的电子设备在接收到针对第三目标集合或第四目标集合中的资源池的选择操作之后,按照选择操作,获得被选择的目标资源池。
159.另外,本实施例中在输出资源池的资源池信息的同时,还可以输出其他被筛选掉的资源池的信息,以提示这些资源池不被推荐的原因。
160.需要说明的是,本实施例中在输出第三目标集合的提示信息和第四目标集合的提示信息时,可以按照第三目标集合的提示信息在前,第四目标集合的提示信息在后的规则,输出提示信息,由此提示用户:第三目标集合中的资源池的性能优于第四目标集合中的资源池的性能,以便于用户进行资源池选择。
161.综上,在第二种实现方式中,本实施例中先在云上筛选满足扩容请求中的请求参数的资源池,再筛选性能匹配的目标资源池。
162.参考图13,为本技术实施例二提供的一种云资源的处理装置的结构示意图,该装置可以适用于云上实现资源管理的电子设备中,如云服务器等。本实施例中的技术方案主要用于提高云资源扩容的效率,为用户提供高效的云资源扩容服务。
163.具体的,本实施例中的装置可以包含如下单元:
164.请求获得单元1301,用于获得云上的当前存储资源的扩容请求,所述扩容请求中包含至少一项请求参数;
165.目标获得单元1302,用于至少根据所述扩容请求中的请求参数,获得目标存储资源,所述目标存储资源的性能与所示当前存储资源的性能相匹配;
166.资源合并单元1302,用于将所述目标存储资源合并到所述当前存储资源中。
167.从上述技术方案可以看出,本技术实施例二提供的一种云资源的处理装置中,按照扩容请求中的请求参数,获得性能与云上的当前存储资源相匹配的目标存储资源,再将获得到的目标存储资源合并到当前存储资源中。可见,本实施例中无需管理员根据经验确定资源池进行资源扩容,而是根据扩容请求和存储资源的性能,进而为用户交付性能匹配且满足扩容请求的云资源,由此提高资源扩容的效率。
168.在一种实现方式中,目标获得单元1302具体用于:在所述当前存储资源所在的资
源池与所述扩容请求相匹配的情况下,在所述当前存储资源所在的资源池中划分目标存储资源;在所述当前存储资源所在的资源池与所述扩容请求不匹配的情况下,确定目标资源池,在所述目标资源池中划分目标存储资源,所述目标资源池的性能与所述当前存储资源所在的资源池的性能相匹配。
169.其中,目标获得单元1302确定目标资源池时,可以通过以下方式实现:得所述当前存储资源中参照资源的第一性能参数;获得所述云上具有空闲存储空间的资源池的第二性能参数;根据所述第一性能参数和所述第二性能参数,获得所述云上与所述当前存储资源满足第一过滤条件的至少一个第一资源池;在所述第一资源池中,获得与所述扩容请求中的请求参数相匹配的第一资源池,以得到第一目标集合;至少根据所述第一目标集合,获得目标资源池。
170.进一步的,目标获得单元1302在至少根据所述第一目标集合,获得目标资源池之前,还用于:根据所述第一性能参数和所述第二性能参数,获得所述云上与所述当前存储资源满足第二过滤条件的至少一个第二资源池,所述第二过滤条件和所述第一过滤条件中均包含参数过滤阈值,且所述第二过滤条件中的参数过滤阈值与所述第一过滤条件中的参数过滤阈值不同,以使得所述第二资源池除了包含所述第一资源池还包含其他资源池;在所述第二资源池中删除所述第一资源池;在所述第二资源池中,获得与所述扩容请求中的请求参数相匹配的资源池,以得到第二目标集合;
171.基于此,目标获得单元1302至少根据所述第一目标集合,获得目标资源池时,具体用于:根据所述第一目标集合和所述第二目标集合,获得目标资源池。例如,至少输出所述第一目标集合的提示信息和所述第二目标集合的提示信息,以接收针对所述第一资源池或所述第二资源池的选择操作;根据所述选择操作,获得目标资源池。
172.其中,目标获得单元1302获得所述云上具有空闲存储空间的资源池的第二性能参数时,具体用于:获得所述云上具有空闲存储空间的资源池中所包含的交付资源的资源性能参数;根据所述资源性能参数,获得所述云上的每个资源池中满足资源筛选条件的目标交付资源;根据所述目标交付资源,获得所述目标交付资源在所述云上所属的资源池的第二性能参数。
173.可选的,如果所述当前存储资源对应于多个既有资源池,所述参照资源包含所述当前存储资源对应的每个所述既有资源池中的任一存储资源;或,参照资源为其所在既有资源池中满足资源筛选条件的存储资源。
174.或者,目标获得单元1302确定目标资源池时,也可以通过以下方式实现:所述云上具有空闲存储空间的资源池中,选择与所述扩容请求相匹配的至少一个第三资源池;获得所述当前存储资源中参照资源的第一性能参数;获得所述第三资源池的第三性能参数;根据所述第一性能参数和所述第三性能参数,获得所述第三资源池中与所述当前存储资源满足第一过滤条件的资源池,以得到第三目标集合;至少根据所述第三目标集合,获得目标资源池。
175.需要说明的是,本实施例中各单元的具体实现可以参考前文中的相应内容,此处不再详述。
176.参考图14,为本技术实施例三提供的一种电子设备的结构示意图,该电子设备可以为云上实现资源管理的电子设备,如云服务器等。本实施例中的技术方案主要用于提高
云资源扩容的效率,为用户提供高效的云资源扩容服务。
177.具体的,本实施例中的电子设备可以包含如下结构:
178.存储器1401,用于存储应用程序和所述应用程序运行所产生的数据;
179.处理器1402,用于执行所述应用程序,以实现:获得云上的当前存储资源的扩容请求,所述扩容请求中包含至少一项请求参数;至少根据所述扩容请求中的请求参数,获得目标存储资源,所述目标存储资源的性能与所述当前存储资源的性能相匹配;将所述目标存储资源合并到所述当前存储资源中。
180.从上述技术方案可以看出,本技术实施例三提供的一种电子设备中,按照扩容请求中的请求参数,获得性能与云上的当前存储资源相匹配的目标存储资源,再将获得到的目标存储资源合并到当前存储资源中。可见,本实施例中无需管理员根据经验确定资源池进行资源扩容,而是根据扩容请求和存储资源的性能,进而为用户交付性能匹配且满足扩容请求的云资源,由此提高资源扩容的效率。
181.以电子设备为私有云的交付服务器为例,以下对本技术的技术方案进行详细说明:
182.如图15中所示,本实施例中的交付服务器针对云上的计算资源和存储资源分别建立相应的性能基线,性能基线可以理解为前文中的性能参数,如:建立虚拟机关键资源与指标性能基站和云平台资源池关键资源与指标性能基站,由此分别得到虚拟机性能基站和资源池与交付资源性能基站。在云平台上为用户或运维工程师提供存储资源的扩容服务时,先选择服务器执行资源扩容,例如,挂在新的云硬盘。具体的,可以获得参照的资源对象,即前文中的参考资源,例如,lvm中同一卷组的云硬盘,基于此,通过获得参照资源历史性能数据与基线以及参照资源所在资源池历史性能数据、基线与成本模型,来建立可选的资源池范围,从而依据预置排序规则输出可选资源池范围,以供用户或运维工程师选择。
183.具体的,建立性能基线的方式如下所示:
184.1、定时程序或人工建立虚拟机的性能基线。
185.1.1以虚拟机存储资源为例,典型的存储性能指标包括:磁盘写延迟、磁盘读延迟、磁盘写带宽、磁盘读带宽等。以虚拟机视角观察下的磁盘指标可能是逻辑卷,也可能是逻辑卷所挂载云硬盘。如果使用linux lvm或windows磁盘管理器等工具管理,需要能够获得不同的磁盘io性能。
186.1.2对于虚拟机使用分布式文件系统或集中存储,例如,san、nas、ceph等,还需要能够获得该存储所使用的资源池信息。典型的资源池信息包括:资源池名称、ip或uuid、资源池类型、可用于分配的剩余容量、费用等。
187.2、定时程序对云平台各个资源池建立管理指标基线。
188.具体方式与1中特别是1.2类似。对于1.2中所得到的数据可以与2中所得到的信息合并。而只建立资源池和所交付资源映射关系,便可以在获得2中数据的时候,同时获得1.2的数据。
189.需要指出的是,这里所获得的数据包括资源池以及资源池所交付的各个单独资源的性能数据。例如,存储资源池被用于交付300块云硬盘,则各个云硬盘的相关性能指标数据与该资源池的性能指标数据都需要获得,并建立不同的性能基线。同样性能基线的数据中有记录资源池和所交付资源如云硬盘的映射关系,以便后续查询和分析所用。
190.其中,以上所获得到的基线可以通过建立采样周期来获得,而采样方式可以根据需求策略来确定,如采用重采样计算方式、增量或全量计算方式等。
191.基于以上定期获得到的性能基线,为用户或运维工程师提供扩容服务时,首先选择服务器执行资源扩容,例如,增加云硬盘并通过linux lvm磁盘管理工具实现挂载点容量的扩容。在这个实现方式中,如果解析出lvm的云硬盘对应的资源池(当前存储资源所在的资源池)有足够的空闲存储空间可以提供交付服务,那么自动选择交付类型为已经交付的资源池,而如果lvm所使用云硬盘对应资源池不能继续交付资源,而需要跨资源池交付资源,可以通过如下方式确定资源池:
192.1、解析计划交付云硬盘对照的参考资源:例如,lvm所管理同一个卷组的云硬盘或者windows磁盘管理器需要扩容的逻辑盘中对应的云硬盘。如果不同云硬盘所使用的资源池不同,则需要对于不同资源池对应的磁盘各选择一块作为参照资源,因为不同资源池的性能可能是不同的。
193.2、建立不同参照资源(例如,参照云硬盘)的历史性能数据的参照基线,例如,平均或最大或最小io读/写延迟、io读/写带宽等。同时,获得云上有空闲存储空间的资源池的历史性能数据和参照基线。此外,还获得这些不同资源池的资源交付约束和成本计算模型。
194.3、按照一定预定规则,使用参照资源的历史数据与对应资源池参照数据,对参照资源和资源池进行极端情况的筛选,如下:
195.3.1基于步骤2中获得的数据,获得参照资源的历史极值、均值与中值等基线,例如,io延迟历史极小值。
196.3.2基于步骤2获得的数据,获得云上具有空闲存储空间的资源池中各个交付资源(例如,云硬盘)的比较基线数据,由此得到各个资源池的基线数据。例如,io延迟历史极小值、io带宽均值等。
197.3.3对于3.1和3.2所得到的数据,使用异常检测技术如直方图算法或百分位算法等,过滤性能数据中表现最差的极端情况。例如,剔除百分位算法中io延迟最大的3%数据,又或者,剔除直方图算法中io吞吐最小的5个分割的条形个数(bins)数据等。基于剔除极端情况的交付资源的基线数据,重新获得所属的各个资源池的基线数据,即性能参数。
198.4、获得资源范围与排序:
199.4.1如果参照资源来自若干个资源池,则基于3.3所获得的经过过滤之后的参照资源的数据和资源池的数据,对不同资源池各个指标极值所构成的区间进行过滤,选择合适的资源池作为备选组合c1。
200.4.2对4.1中过滤使用的区间过滤条件进行放宽,既对预定策略添加一个差值,例如,io延迟的区间阈值增加1ms,io吞吐的均值阈值增加20gb作为新的过滤条件,由此选择出资源池作为备选组合c2。c1会被包含在c2中,故而c2中要将c1排除掉。
201.4.3可选的,如果资源扩容存在成本、容量等约束条件,即按照扩容请求中的资源类型的参数和资源成本的参数,使用该过滤条件从c1和c2中过滤并按照约束条件过滤,将不符合约束条件的资源池从c1和c2中移除掉,以获得c1的过滤结果c1-1和c2的过滤结果c2-1。
202.进一步可选的,约束过来也可以在4.1和4.2之前对所有资源池执行。执行位置不影响最终所得到的资源池的范围。
203.5、按照c1-1与c2-1的顺序生成不同的资源池集合,同时提供不建议的资源池集合以及不建议的原因,将结果合并输出以供管理员或者后续应用程序选择。在有资源池被选择后,在被选择的资源池中划分出存储资源并合并到当前存储资源即lvm所管理的云硬盘上,实现存储资源扩容。
204.本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
205.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
206.结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
207.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1