弹性伸缩组内的动态扩缩容方法及装置与流程

文档序号:29043510发布日期:2022-02-25 21:22阅读:139来源:国知局
弹性伸缩组内的动态扩缩容方法及装置与流程

1.本发明涉及数据处理技术领域,具体涉及一种弹性伸缩组内的动态扩缩容方法及装置。


背景技术:

2.基于vbras(virtual broadband remote access server,虚拟化宽带远程接入服务器)的转发与控制分离系统通过将转发平面与控制平面完全解耦,解决了传统bras(broadband remote access server,宽带远程接入服务器)中存在的控制平面与转发平面能力不匹配、无法共享资源以及新业务部署不及时等问题。
3.请参阅图1,在vbras的虚拟用户平面(virtual user plane,vup)中,可以包括虚拟主控板和虚拟业务板。通常而言,一个虚拟主控板和一个或者多个虚拟业务板可以构成一个弹性伸缩组。虚拟主控板可以根据虚拟业务板的负载指标,动态地对弹性伸缩组内的虚拟业务板进行扩缩容,从而提供更加稳定的服务。
4.在现有技术中,弹性伸缩组内的虚拟主控板可以采集虚拟业务板的负载指标,并通过求取平均值或者取最大值的方式,确定出弹性伸缩组内的负载参考值,后续可以根据该负载参考值进行虚拟业务板的扩缩容。但是,这种扩缩容的方式,很可能会随着某一次负载指标的突变,而频繁地进行扩缩容,这样会造成虚拟业务板的资源浪费,同时频繁地扩缩容也会占用系统有限的资源。


技术实现要素:

5.有鉴于此,本发明实施方式提供了一种弹性伸缩组内的动态扩缩容方法及装置,能够提高扩缩容的稳定性,进而节省系统的资源消耗。
6.本发明一方面提供了一种弹性伸缩组内的动态扩缩容方法,所述方法应用于所述弹性伸缩组内的虚拟主控板,所述弹性伸缩组内还包括一个或者多个虚拟业务板;所述方法包括:采集各个所述虚拟业务板的实时负载信息,并确定所述实时负载信息对应的多阶平滑指数;根据所述多阶平滑指数,生成所述实时负载信息对应的预测负载信息;识别所述弹性伸缩组内当前的实际负载变化趋势,并根据所述预测负载信息确定预测负载变化趋势;对比所述实际负载变化趋势和所述预测负载变化趋势,并根据对比结果判断是否对所述弹性伸缩组内的虚拟业务板进行扩缩容。
7.在一个实施方式中,确定所述实时负载信息对应的多阶平滑指数包括:
8.计算各个所述虚拟业务板的实时负载信息的负载平均值,并按照以下方式生成所述负载平均值对应的多阶平滑指数:
9.s
t
(1)=a*x
t
+(1-a)s
t-1
(1)
10.s
t
(2)=a*s
t
(1)+(1-a)s
t-1
(2)
11.其中,下标t-1表示时刻t的上一个时刻,a表示预设平滑系数,x
t
表示所述负载平均值,s
t
(1)表示时刻t的一阶平滑指数,s
t
(2)表示时刻t的二阶平滑指数。
12.在一个实施方式中,所述多阶平滑指数包括一阶平滑指数和二阶平滑指数;根据所述多阶平滑指数,生成所述实时负载信息对应的预测负载信息包括:根据所述一阶平滑指数和所述二阶平滑指数,按照以下方式生成第一预测值a
t

13.a
t
=2*s
t
(1)-s
t
(2)
14.根据所述一阶平滑指数、所述二阶平滑指数以及预设平滑系数,按照以下方式生成第二预测值b
t

15.b
t
=(a/(1-a))(s
t
(1)-s
t
(2))
16.其中,a表示预设平滑系数,s
t
(1)表示时刻t的一阶平滑指数,s
t
(2)表示时刻t的二阶平滑指数;
17.将所述第一预测值与所述第二预测值的和作为所述实时负载信息对应的预测负载信息。
18.在一个实施方式中,根据对比结果判断是否对所述弹性伸缩组内的虚拟业务板进行扩缩容包括:若所述对比结果表征所述预测负载变化趋势与所述实际负载变化趋势保持一致,判定在当前时刻对所述弹性伸缩组内的虚拟业务板进行扩缩容;若所述对比结果表征所述预测负载变化趋势与所述实际负载变化趋势不一致,判定在当前时刻不对所述弹性伸缩组内的虚拟业务板进行扩缩容。
19.在一个实施方式中,根据对比结果判断是否对所述弹性伸缩组内的虚拟业务板进行扩缩容包括:若所述实际负载变化趋势表征负载增加,而所述预测负载变化趋势表征负载减小,判定在当前时刻不对所述弹性伸缩组内的虚拟业务板进行扩容;若所述实际负载变化趋势表征负载增加,并且所述预测负载变化趋势也表征负载增加,判定在当前时刻对所述弹性伸缩组内的虚拟业务板进行扩容;若所述实际负载变化趋势表征负载减小,而所述预测负载变化趋势表征负载增加,判定在当前时刻不对所述弹性伸缩组内的虚拟业务板进行缩容;若所述实际负载变化趋势表征负载减小,并且所述预测负载变化趋势也表征负载减小,判定在当前时刻对所述弹性伸缩组内的虚拟业务板进行缩容。
20.本发明另一方面还提供了一种弹性伸缩组内的动态扩缩容方法,所述方法应用于所述弹性伸缩组内的虚拟主控板,所述弹性伸缩组内还包括一个或者多个虚拟业务板;所述方法包括:采集各个所述虚拟业务板的实时负载信息,并确定所述实时负载信息对应的多阶平滑指数;根据所述多阶平滑指数,生成所述实时负载信息对应的预测负载信息;将所述预测负载信息与负载门限值进行对比,并根据对比结果更新延迟系数;通过所述延迟系数,判断是否对所述弹性伸缩组内的虚拟业务板进行扩缩容。
21.在一个实施方式中,所述负载门限值包括负载上限值和负载下限值,所述延迟系数包括扩容延迟系数和缩容延迟系数;所述根据对比结果更新延迟系数,具体包括:若所述预测负载信息大于所述负载上限值,将所述缩容延迟系数清零,并将所述扩容延迟系数加1;若所述预测负载信息小于所述负载下限值,将所述扩容延迟系数清零,并将所述缩容延迟系数加1;若所述预测负载信息大于或者等于所述负载下限值,并且小于或者等于所述负载上限值,将所述扩容延迟系数和所述缩容延迟系数均清零。
22.在一个实施方式中,所述通过所述延迟系数,判断是否对所述弹性伸缩组内的虚拟业务板进行扩缩容,具体包括:若扩容延迟系数的数值达到指定扩容阈值,在当前时刻对所述弹性伸缩组内的虚拟业务板进行扩容,并将所述扩容延迟系数清零;若缩容延迟系数
的数值达到指定缩容阈值,在当前时刻对所述弹性伸缩组内的虚拟业务板进行缩容,并将所述缩容延迟系数清零。
23.在一个实施方式中,所述方法还包括:若对所述弹性伸缩组内的虚拟业务板连续进行指定次数的扩容后,将所述指定扩容阈值翻倍,以延长扩容周期;若对所述弹性伸缩组内的虚拟业务板连续进行指定次数的缩容后,将所述指定缩容阈值翻倍,以延长缩容周期。
24.本发明另一方面还提供了一种弹性伸缩组内的动态扩缩容装置,所述装置包括:指数确定单元,用于采集各个虚拟业务板的实时负载信息,并确定所述实时负载信息对应的多阶平滑指数;预测单元,用于根据所述多阶平滑指数,生成所述实时负载信息对应的预测负载信息;变化趋势确定单元,用于识别所述弹性伸缩组内当前的实际负载变化趋势,并根据所述预测负载信息确定预测负载变化趋势;判断单元,用于对比所述实际负载变化趋势和所述预测负载变化趋势,并根据对比结果判断是否对所述弹性伸缩组内的虚拟业务板进行扩缩容。
25.在一个实施方式中,所述指数确定单元包括:
26.计算模块,用于计算各个所述虚拟业务板的实时负载信息的负载平均值,并按照以下方式生成所述负载平均值对应的多阶平滑指数:
27.s
t
(1)=a*x
t
+(1-a)s
t-1
(1)
28.s
t
(2)=a*s
t
(1)+(1-a)s
t-1
(2)
29.其中,下标t-1表示时刻t的上一个时刻,a表示预设平滑系数,x
t
表示所述负载平均值,s
t
(1)表示时刻t的一阶平滑指数,s
t
(2)表示时刻t的二阶平滑指数。
30.在一个实施方式中,所述多阶平滑指数包括一阶平滑指数和二阶平滑指数;所述预测单元包括:第一预测值计算模块,用于根据所述一阶平滑指数和所述二阶平滑指数,按照以下方式生成第一预测值a
t

31.a
t
=2*s
t
(1)-s
t
(2)
32.第二预测值计算模块,用于根据所述一阶平滑指数、所述二阶平滑指数以及预设平滑系数,按照以下方式生成第二预测值b
t

33.b
t
=(a/(1-a))(s
t
(1)-s
t
(2))
34.其中,a表示预设平滑系数,s
t
(1)表示时刻t的一阶平滑指数,s
t
(2)表示时刻t的二阶平滑指数;
35.预测负载信息确定模块,用于将所述第一预测值与所述第二预测值的和作为所述实时负载信息对应的预测负载信息。
36.在一个实施方式中,所述判断单元包括:第一判断模块,用于若所述对比结果表征所述预测负载变化趋势与所述实际负载变化趋势保持一致,判定在当前时刻对所述弹性伸缩组内的虚拟业务板进行扩缩容;第二判断模块,用于若所述对比结果表征所述预测负载变化趋势与所述实际负载变化趋势不一致,判定在当前时刻不对所述弹性伸缩组内的虚拟业务板进行扩缩容。
37.在一个实施方式中,所述判断单元包括:第一扩容判定模块,用于若所述实际负载变化趋势表征负载增加,而所述预测负载变化趋势表征负载减小,判定在当前时刻不对所述弹性伸缩组内的虚拟业务板进行扩容;第二扩容判定模块,用于若所述实际负载变化趋势表征负载增加,并且所述预测负载变化趋势也表征负载增加,判定在当前时刻对所述弹
性伸缩组内的虚拟业务板进行扩容;第一缩容判定模块,用于若所述实际负载变化趋势表征负载减小,而所述预测负载变化趋势表征负载增加,判定在当前时刻不对所述弹性伸缩组内的虚拟业务板进行缩容;第二缩容判定模块,用于若所述实际负载变化趋势表征负载减小,并且所述预测负载变化趋势也表征负载减小,判定在当前时刻对所述弹性伸缩组内的虚拟业务板进行缩容。
38.本发明另一方面还提供了一种弹性伸缩组内的动态扩缩容装置,所述装置包括:指数确定单元,用于采集各个所述虚拟业务板的实时负载信息,并确定所述实时负载信息对应的多阶平滑指数;预测单元,用于根据所述多阶平滑指数,生成所述实时负载信息对应的预测负载信息;系数更新单元,用于将所述预测负载信息与负载门限值进行对比,并根据对比结果更新延迟系数,以通过所述延迟系数判断是否对所述弹性伸缩组内的虚拟业务板进行扩缩容。
39.在一个实施方式中,所述负载门限值包括负载上限值和负载下限值,所述延迟系数包括扩容延迟系数和缩容延迟系数;所述系数更新单元包括:第一增加模块,用于若所述预测负载信息大于所述负载上限值,将所述缩容延迟系数清零,并将所述扩容延迟系数加1;第二增加模块,用于若所述预测负载信息小于所述负载下限值,将所述扩容延迟系数清零,并将所述缩容延迟系数加1;清零模块,用于若所述预测负载信息大于或者等于所述负载下限值,并且小于或者等于所述负载上限值,将所述扩容延迟系数和所述缩容延迟系数均清零。
40.在一个实施方式中,所述系数更新单元包括:扩容模块,用于若扩容延迟系数的数值达到指定扩容阈值,在当前时刻对所述弹性伸缩组内的虚拟业务板进行扩容,并将所述扩容延迟系数清零;缩容模块,用于若缩容延迟系数的数值达到指定缩容阈值,在当前时刻对所述弹性伸缩组内的虚拟业务板进行缩容,并将所述缩容延迟系数清零。
41.在一个实施方式中,所述装置还包括:第一延长模块,用于若对所述弹性伸缩组内的虚拟业务板连续进行指定次数的扩容后,将所述指定扩容阈值翻倍,以延长扩容周期;第二延长模块,用于若对所述弹性伸缩组内的虚拟业务板连续进行指定次数的缩容后,将所述指定缩容阈值翻倍,以延长缩容周期。
42.本发明另一方面还提供了一种计算机存储介质,所述计算机存储介质用于存储计算机程序,所述计算机程序被处理器执行时,实现上述的方法。
43.本技术提供的技术方案,可以采用多阶平滑指数的方式,确定出弹性伸缩组内虚拟业务板的预测负载信息,该预测负载信息可以表征下一时刻弹性伸缩组内的负载情况。通过将实际负载变化趋势与该预测负载信息表征的预测负载变化趋势进行对比,可以预测弹性伸缩组内的负载信息是否会继续保持增长或者衰减。这样,即使在某个时刻出现了负载突变,预测负载信息依然会预示负载的平稳变化,在这种情况下,不会立刻执行扩缩容的处理,从而避免了因为负载突变而导致的频繁扩缩容现象。
44.此外,本技术提供的技术方案,可以将预测负载信息与负载门限值进行对比,并根据对比结果更新延迟系数。该延迟系数的作用可以是对弹性伸缩组进行延迟扩缩容。只有当延迟系数积累到一定数值时,才会执行扩缩容的处理。这样,同样可以避免因为负载突变而导致的频繁扩缩容现象。
45.可见,本技术以上各个实施方式提供的技术方案,能够提高扩缩容的稳定性,进而
节省系统的资源消耗。
附图说明
46.通过参考附图会更加清楚的理解本发明的特征和优点,附图是示意性的而不应理解为对本发明进行任何限制,在附图中:
47.图1示出了现有技术中虚拟用户平面的示意图;
48.图2示出了本发明一个实施方式中弹性伸缩组内的动态扩缩容方法步骤图;
49.图3示出了本发明一个实施方式中动态扩缩容的流程图;
50.图4示出了本发明一个实施方式中弹性伸缩组内的动态扩缩容系统的功能模块示意图;
51.图5示出了本发明另一个实施方式中弹性伸缩组内的动态扩缩容方法步骤图;
52.图6示出了本发明一个实施方式中带宽利用率的预测变化曲线图;
53.图7示出了本发明另一个实施方式中带宽利用率的预测变化曲线图;
54.图8示出了本发明另一个实施方式中弹性伸缩组内的动态扩缩容系统的功能模块示意图。
具体实施方式
55.为使本发明实施方式的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
56.本技术一个实施方式提供的弹性伸缩组内的动态扩缩容方法,可以应用于弹性伸缩组内的虚拟主控板中。在该弹性伸缩组内,可以包括一个或者多个虚拟业务板,这些虚拟业务板可以独立提供服务,或者可以协同提供服务。在提供服务的过程中,这些虚拟业务板都会具备一定的负载信息。
57.在本实施方式中,虚拟业务板的负载信息可以包括带宽利用率、cpu利用率、上线用户数等各项指标。根据不同的应用场景,可以有选择地对其中的一个或者多个指标进行分析。在以下的实施方式中,以带宽利用率为例,阐述本技术的技术方案。需要说明的是,虽然是以带宽利用率为例进行阐述,并不表示本技术的技术方案仅适用于带宽利用率,只要是虚拟业务板的负载信息,都能够采用本技术的技术方案进行分析,从而实现动态扩缩容的过程。
58.请参阅图2和图3,在一个实施方式中,弹性伸缩组内的动态扩缩容方法可以包括以下多个步骤。
59.s11:采集各个所述虚拟业务板的实时负载信息,并确定所述实时负载信息对应的多阶平滑指数。
60.在本实施方式中,当弹性伸缩组被创建后,虚拟主控板可以启动采样定时器,并按照采样定时器限定的时间周期采集弹性伸缩组中各个虚拟业务板的实时负载信息。在每一轮的采集过程中,虚拟主控板都会获取弹性伸缩组各个虚拟业务板的实时负载信息。当然,
若弹性伸缩组中的某个虚拟业务板出现故障或者工作在异常状态,可以不采集该虚拟业务板的实时负载信息。
61.在采集到各个虚拟业务板的实时负载信息后,虚拟主控板可以采用多阶平滑指数的算法,计算出该实时负载信息对应的预测负载信息。该预测负载信息可以表征下一时刻弹性伸缩组内的负载情况。
62.在计算预测负载信息之前,虚拟主控板可以先确定实时负载信息对应的多阶平滑指数。其中,以二次平滑指数算法(second exponential smoothing method)为例,实时负载信息对应的多阶平滑指数可以包括一阶平滑指数和二阶平滑指数。
63.在一个实施方式中,在生成实时负载信息的多阶平滑指数时,可以先计算各个虚拟业务板的实时负载信息的负载平均值,后续可以生成该负载平均值对应的多阶平滑指数。
64.在一个具体应用示例中,弹性伸缩组内包含三个虚拟业务板,虚拟主控板在某个时刻采集到的实时负载信息为这三个虚拟业务板的带宽利用率。三个虚拟业务板的带宽利用率可以分别为28%、32%以及30%,那么计算得到的带宽利用率的平均值就是30%。
65.在二次平滑指数算法中,时刻t的一阶平滑指数s
t
(1)和二阶平滑指数s
t
(2)可以分别表示为:
66.s
t
(1)=a*x
t
+(1-a)s
t-1
(1)
67.s
t
(2)=a*s
t
(1)+(1-a)s
t-1
(2)
68.其中,下标t-1表示时刻t的上一个时刻,a表示预设平滑系数,x
t
表示负载平均值。
69.s13:根据所述多阶平滑指数,生成所述实时负载信息对应的预测负载信息。
70.在本实施方式中,在生成了实时负载信息对应的多阶平滑指数后,可以进一步地生成实时负载信息对应的多个预测值,然后根据生成的多个预测值,计算出最终的预测负载信息。
71.在一个实施方式中,第一预测值可以根据上述的一阶平滑指数和二阶平滑指数生成。具体地,第一预测值可以是一阶平滑指数和二阶平滑指数通过加权求和得到。在一个具体应用示例中,时刻t的第一预测值a
t
可以表示为:
72.a
t
=2*s
t
(1)-s
t
(2)
73.第二预测值可以据上述的一阶平滑指数、二阶平滑指数以及预设平滑系数生成。具体地,第二预测值与一阶平滑指数和二阶平滑指数的差值相关,通过预设平滑系数对该差值进行比例运算,可以得到第二预测值。
74.在一个具体应用示例中,时刻t的第二预测值可以表示为:
75.b
t
=(a/(1-a))(s
t
(1)-s
t
(2))
76.最终,可以将第一预测值和第二预测值的和作为实时负载信息对应的预测负载信息。
77.需要说明的是,上述的预设平滑系数a,可以是大于0并且小于1的有理数。该预设平滑系数可以根据实时负载信息产生的时刻和场景灵活设置。通常而言,如果预设平滑系数a较小,则表明历史的负载信息对预测负载信息的影响会比当前时刻的负载信息大一些。相反,如果预设平滑系数a较大,则表明当前时刻的负载信息对预测负载信息的影响会比历史的负载信息大一些。
78.举例来说,在一个具体应用示例中,实时负载信息在一定时段内(例如早上7点至10点)相对稳定,那么此时可以将a配置为0.4,表明当前时刻的实时负载信息对最终的预测负载信息的影响较小。在另一个具体应用示例中,如果实时负载信息在一定时段内(例如晚上7点到12点)变化较大,那么此时可以将a配置为0.7,表明当前时刻的实时负载信息对最终的预测负载信息的影响较大。
79.以下列出了四种不同情况下的预测负载信息表。
80.表1第一个预测负载信息表
[0081][0082][0083]
表2第二个预测负载信息表
[0084][0085]
表3第三个预测负载信息表
[0086][0087]
表4第四个预测负载信息表
[0088][0089]
s15:识别所述弹性伸缩组内当前的实际负载变化趋势,并根据所述预测负载信息确定预测负载变化趋势。
[0090]
在本实施方式中,通过步骤s11和s13的方式,针对不同时刻的实时负载信息,均可以生成对应的预测负载信息。
[0091]
通过识别各个不同时刻的实时负载信息,可以确定出弹性伸缩组内当前的实际负载变化趋势。例如表1的前6组实时负载信息以及表2的实时负载信息表征的是负载增加的趋势,而表3的前5组实时负载信息以及表4的实时负载信息表征的是负载减小的趋势。
[0092]
此外,结合实时负载信息和预测负载信息,可以确定出预测负载变化趋势。例如,在表1中,第7组数据的预测负载变化趋势是负载减小(从60减小至55.792),在表2中,第5组数据的预测负载变化趋势是负载增加(从80增加至94.54),在表3中,第5组数据的预测负载变化趋势是负载增加(从20增加至23.72),在表4中,第5组数据的预测负载变化趋势是负载减小(从20增加至11.08)。
[0093]
需要说明的是,上述的实际负载变化趋势和预测负载变化趋势,均可以通过计算曲率梳、方差、标准差、四分位间距等方式来实现,本技术对此并不做限定。
[0094]
s17:对比所述实际负载变化趋势和所述预测负载变化趋势,并根据对比结果判断
是否对所述弹性伸缩组内的虚拟业务板进行扩缩容。
[0095]
在本实施方式中,如果实时负载信息超出了正常的负载范围,或者实时负载信息发生了突变,可以对该实时负载信息对应的实际负载变化趋势和预测负载变化趋势进行对比,以判断在该实时负载信息对应的时刻,是否需要对弹性伸缩组内的虚拟主控板进行扩缩容。
[0096]
具体地,正常的负载范围通常可以由负载上限值和负载下限值来限定。以带宽利用率为例,上限值可以是70%,下限值可以是30%,在30%至70%的范围内,都可以视为正常的带宽利用率。那么在表2中,第5组的带宽利用率为80%,高于上限值70%,此时就可以对该组对应的实际负载变化趋势和预测负载变化趋势进行对比。
[0097]
又例如,在表1中,第6组的带宽利用率相较于第5组的带宽利用率发生了突变,那么也可以对该组对应的实际负载变化趋势和预测负载变化趋势进行对比。
[0098]
在本实施方式中,如果对比结果表征预测负载变化趋势与实际负载变化趋势保持一致,那么表明在下一时刻,弹性伸缩组内的负载会按照现有的趋势进行变化,而由于当前时刻已经发生了负载突变或者负载超范围,那么下一时刻的负载很可能会继续增大或者减小,此时可以直接判定在当前时刻对弹性伸缩组内的虚拟主控板进行扩缩容。
[0099]
而如果对比结果表征所述预测负载变化趋势与实际负载变化趋势不一致,则表明当前时刻出现的负载突变或者负载超范围,在下一时刻或者后续时候会逐渐纠正,那么可以判定在当前时刻不对弹性伸缩组内的虚拟主控板进行扩缩容。
[0100]
具体地,以表1中的第6组数据为例,实际负载变化趋势表征负载增加,而预测负载变化趋势表征负载减小,那么可以判定在当前时刻不对弹性伸缩组内的虚拟业务板进行扩容。实际上,后续的负载确实重新回归了正常范围,表明在第6组的时刻,不需要对虚拟业务板进行扩容。
[0101]
以表2中的第5组数据为例,实际负载变化趋势表征负载增加,并且预测负载变化趋势也表征负载增加,此时预测负载变化趋势表明后续可能会出现负载的持续上升,那么可以判定在当前时刻对弹性伸缩组内的虚拟业务板进行扩容。
[0102]
以表3中的第5组数据为例,实际负载变化趋势表征负载减小,而预测负载变化趋势表征负载增加,表明负载会在后续的时段内重新上升,可以判定在当前时刻不对弹性伸缩组内的虚拟业务板进行缩容。
[0103]
以表4中的第5组数据为例,实际负载变化趋势表征负载减小,并且预测负载变化趋势也表征负载减小,说明后续的负载会持续减小,可以判定在当前时刻对弹性伸缩组内的虚拟业务板进行缩容。
[0104]
可见,通过将实际负载变化趋势与预测负载信息表征的预测负载变化趋势进行对比,可以预测弹性伸缩组内的负载信息是否会继续保持增长或者衰减。这样,即使在某个时刻出现了负载突变,预测负载信息依然会预示负载的平稳变化,在这种情况下,不会立刻执行扩缩容的处理。此外,在负载超出正常的范围时,预测负载信息也可能预示负载会重新回归正常值,从而也不会立刻执行扩缩容处理。这样,避免了因为负载突变或者负载临时超出正常范围而导致的频繁扩缩容现象。
[0105]
请参阅图4,本技术还提供一种弹性伸缩组内的动态扩缩容装置,该装置包括:
[0106]
指数确定单元,用于采集各个虚拟业务板的实时负载信息,并确定所述实时负载
信息对应的多阶平滑指数;
[0107]
预测单元,用于根据所述多阶平滑指数,生成所述实时负载信息对应的预测负载信息;
[0108]
变化趋势确定单元,用于识别所述弹性伸缩组内当前的实际负载变化趋势,并根据所述预测负载信息确定预测负载变化趋势;
[0109]
判断单元,用于对比所述实际负载变化趋势和所述预测负载变化趋势,并根据对比结果判断是否对所述弹性伸缩组内的虚拟业务板进行扩缩容。
[0110]
在一个实施方式中,本技术还提供一种弹性伸缩组内的动态扩缩容方法,该方法同样可以应用于虚拟主控板中。请参阅图5,该方法可以包括以下多个步骤。
[0111]
s21:采集各个所述虚拟业务板的实时负载信息,并确定所述实时负载信息对应的多阶平滑指数。
[0112]
s23:根据所述多阶平滑指数,生成所述实时负载信息对应的预测负载信息。
[0113]
在本实施方式中,可以采用与步骤s11和s13类似的方式,生成实时负载信息对应的预测负载信息,这里就不再赘述。
[0114]
s25:将所述预测负载信息与负载门限值进行对比,并根据对比结果更新延迟系数,以通过所述延迟系数判断是否对所述弹性伸缩组内的虚拟业务板进行扩缩容。
[0115]
在本实施方式中,可以将预测负载信息与负载门限值进行对比,以判断预测负载信息是否处于正常的负载范围内。同时,可以设置延迟系数,该延迟系数可以用于推迟对弹性伸缩组内的虚拟业务板进行扩缩容。其中,若预测负载信息处于正常的负载范围之外,可以更新该延迟系数,当延迟系数达到一定的数值后,才会执行扩缩容的动作。这样可以避免在短时间内,由于负载突变或者动荡而引起的频繁扩缩容现象。
[0116]
具体地,负载门限值可以包括负载上限值和负载下限值,负载上限值和负载下限值可以共同决定正常的负载范围。此外,延迟系数也可以分为缩容延迟系数和扩容延迟系数,这两个系数可以分别进行更新。
[0117]
在一个具体应用示例中,若预测负载信息大于负载上限值,可以将缩容延迟系数清零,并增加扩容延迟系数。缩容延迟系数和扩容延迟系数在初始化时,初始值都可以是0,每次需要增加时,可以在当前的数值基础上加1。当延迟系数达到指定扩容阈值或者指定缩容阈值(例如均为3)时,可以触发对应的扩缩容动作。
[0118]
若预测负载信息小于负载下限值,可以将扩容延迟系数清零,并增加缩容延迟系数。
[0119]
若预测负载信息大于或者等于负载下限值,并且小于或者等于负载上限值,表明预测负载信息处于正常的负载范围内,此时可以将扩容延迟系数和缩容延迟系数均清零。
[0120]
以图6所示的带宽利用率的预测变化曲线为例,带宽利用率上限值为70%,下限值为30%,在20秒时,带宽利用率超过了上限值,可以将缩容延迟系数清零,同时将扩容延迟系数加1;而在30秒时,带宽利用率回归正常值,那么可以将两个延迟系数都清零。在40秒时,带宽利用率高于上限值,可以将缩容延迟系数清零,并将扩容延迟系数加1;而在50秒时,带宽利用率低于下限值,可以将扩容延迟系数清零,并将缩容延迟系数加1。此役类推,在最终的60秒时,扩容延迟系数和缩容延迟系数都被清零,因此在这60秒内,尽管预测负载信息在不停地动荡,但弹性伸缩组内没有执行扩缩容动作。只有在连续多次均触发扩容或
者缩容的需求时,才会最终执行扩容或者缩容的动作。
[0121]
在一个实施方式中,若扩容延迟系数的数值达到指定扩容阈值,表明已经连续触发了足够次数的扩容需求,此时可以在当前时刻对弹性伸缩组内的虚拟业务板进行扩容,并在扩容后将扩容延迟系数清零。同样地,若缩容延迟系数的数值达到指定缩容阈值,可以在当前时刻对弹性伸缩组内的虚拟业务板进行缩容,并将缩容延迟系数清零。
[0122]
请参阅图3,在进行扩容时,可以启动新的虚拟业务板,然后针对新启动的虚拟业务板下发配置文件,在虚拟业务板根据配置文件完成初始化后,扩容就完成了。在进行缩容时,可以先删除虚拟业务板的配置文件,然后再将虚拟业务板删除,从而完成缩容的过程。
[0123]
在一个实施方式中,考虑到在执行扩缩容的动作后,实际上并没有成功地进行扩缩容,在这种情况下,后续还会持续地触发扩缩容的需求。为了避免频繁地执行扩缩容的动作,在本实施方式中,如果在短时间内频繁地执行了扩缩容动作,可以适当地增加上述的指定扩容阈值和指定缩容阈值,以延长扩容周期和缩容周期。
[0124]
请参阅图7,可以配置规避系数,该规避系数可以用于记录连续扩容或者连续缩容的次数。如图7所示,在第20秒、30秒以及40秒时,预测负载信息均高于负载上限值,因此这三个时间节点处均触发了扩容需求,对应的扩容延迟系数中的数值也在不断更新,在40秒时扩容延迟系数达到了指定扩容阈值(也就是3),因此会执行扩容动作,并将扩容延迟系数清零。但在实际应用中,本次的扩容动作可能并没有产生实际的扩容效果,也就是扩容失败了,那么在后续的多个时间节点处,依然会触发扩容需求,并且会在70秒和100秒时,由于扩容延迟系数再次达到了指定扩容阈值,因此会均执行扩容动作。但实际上,在当前的时段内,扩容动作并不会产生实际的扩容效果,因此这样频繁地进行扩容是没有意义的。在这种情况下,可以通过规避系数记录连续扩容的次数,并且如果对弹性伸缩组内的虚拟业务板连续进行指定次数的扩容后,可以增加上述的指定扩容阈值,以延长扩容周期。具体地,在40秒、70秒以及100秒时,规避系数均会进行更新,在100秒时达到了指定次数(也就是3),此时可以将指定扩容阈值翻倍(从3变成6),那么延迟系数在更新了6次之后,才会执行扩容动作。例如在图7中,在100秒时将指定扩容阈值进行翻倍,从而在160秒时才再次执行了扩容动作。在实际应用中,在增加了指定扩容阈值之后,规避次数也会清零,并重新开始记录连续扩容的次数。
[0125]
同理,规避次数还可以记录连续缩容的次数,若对弹性伸缩组内的虚拟业务板连续进行指定次数的缩容后,可以增加上述的指定缩容阈值,以延长缩容周期。
[0126]
本技术提供的技术方案,可以将预测负载信息与负载门限值进行对比,并根据对比结果更新延迟系数。该延迟系数的作用可以是对弹性伸缩组进行延迟扩缩容。只有当延迟系数积累到一定数值时,才会执行扩缩容的处理。这样,同样可以避免因为负载突变而导致的频繁扩缩容现象。
[0127]
此外,通过规避系数来统计连续扩容或者连续缩容的次数,可以适当地增加指定扩容阈值或者指定缩容阈值,从而延长扩容周期或者缩容周期,以避免在扩缩容失败后,依然会频繁地执行扩缩容的动作。
[0128]
可见,本技术以上各个实施方式提供的技术方案,能够提高扩缩容的稳定性,进而节省系统的资源消耗。
[0129]
请参阅图8,本技术还提供一种弹性伸缩组内的动态扩缩容装置,所述装置包括:
[0130]
指数确定单元,用于采集各个所述虚拟业务板的实时负载信息,并确定所述实时负载信息对应的多阶平滑指数;
[0131]
预测单元,用于根据所述多阶平滑指数,生成所述实时负载信息对应的预测负载信息;
[0132]
系数更新单元,用于将所述预测负载信息与负载门限值进行对比,并根据对比结果更新延迟系数,以通过所述延迟系数判断是否对所述弹性伸缩组内的虚拟业务板进行扩缩容。
[0133]
本技术一个实施方式还提供一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序被处理器执行时,实现上述的弹性伸缩组内的动态扩缩容方法。
[0134]
其中,处理器可以为中央处理器(central processing unit,cpu)。处理器还可以为其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
[0135]
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施方式中的方法对应的程序指令/模块。处理器通过运行存储在存储器中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施方式中的方法。
[0136]
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0137]
本领域技术人员可以理解,实现上述实施方式方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施方式的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)、随机存储记忆体(random access memory,ram)、快闪存储器(flash memory)、硬盘(hard disk drive,缩写:hdd)或固态硬盘(solid-state drive,ssd)等;所述存储介质还可以包括上述种类的存储器的组合。
[0138]
虽然结合附图描述了本发明的实施方式,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1