CN115086324B - 服务链分配方法和系统、计算机设备和存储介质 - Google Patents

服务链分配方法和系统、计算机设备和存储介质 Download PDF

Info

Publication number
CN115086324B
CN115086324B CN202210734335.0A CN202210734335A CN115086324B CN 115086324 B CN115086324 B CN 115086324B CN 202210734335 A CN202210734335 A CN 202210734335A CN 115086324 B CN115086324 B CN 115086324B
Authority
CN
China
Prior art keywords
resource
service
resources
resource pool
score
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210734335.0A
Other languages
English (en)
Other versions
CN115086324A (zh
Inventor
谭宇剀
全硕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp Ltd
Filing date
Publication date
Application filed by China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN202210734335.0A priority Critical patent/CN115086324B/zh
Publication of CN115086324A publication Critical patent/CN115086324A/zh
Priority to PCT/CN2023/099848 priority patent/WO2024001755A1/zh
Application granted granted Critical
Publication of CN115086324B publication Critical patent/CN115086324B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本公开涉及一种服务链分配方法和系统、计算机设备和存储介质。该服务链分配方法包括:创建一个时延敏感型业务服务链部署任务;根据时延敏感型业务服务链,计算部署时延敏感型业务需要的资源总数;判断所述资源总数是否大于当前资源池剩余资源;若所述资源总数大于当前资源池剩余资源,则计算当前资源池中所有服务链对所有可用资源池的得分,根据当前资源池中所有服务链对所有可用资源池的得分,将当前资源池中所有服务链进行重新分配和部署。本公开可以在云边协同场景下当边缘资源池资源不足时,为池内服务链重新分配资源池。

Description

服务链分配方法和系统、计算机设备和存储介质
技术领域
本公开涉及云计算与安全领域,特别涉及一种服务链分配方法和系统、计算机设备和存储介质。
背景技术
相关技术安全业务服务链为满足安全诉求,一个数据流通常需要通过多个安全网络服务设备。在网络云化的大背景下,云资源池中的传统专用硬件设备虚拟化成为了主流。这为服务链的灵活部署提供了前提。在相关技术边缘云计算和安全业务场景中,为满足低时延、节省带宽等诉求,有些安全业务服务链会部署在边缘云资源池中,遵循典型的云边一体化架构。
发明内容
发明人通过研究发现:在相关技术安全业务场景和现有的云边协同架构下,中心云负责管理以及为需要大计算量的应用提供资源。然而安全业务服务链是时延敏感型业务,使得这类服务一般会部署在边缘侧。同时边缘资源池中的资源又是有限的。在这样的背景下,服务链能否部署在离用户接入地理位置近的边缘资源池中就成为了影响服务质量和决定用户体验的关键因素。
鉴于以上技术问题中的至少一项,本公开提供了一种服务链分配方法和系统、计算机设备和存储介质,可以在云边协同场景下当边缘资源池资源不足时,为池内服务链重新分配资源池。
根据本公开的一个方面,提供一种服务链分配方法,包括:
创建一个时延敏感型业务服务链部署任务;
根据时延敏感型业务服务链,计算部署时延敏感型业务需要的资源总数;
判断所述资源总数是否大于当前资源池剩余资源;
若所述资源总数大于当前资源池剩余资源,则计算当前资源池中所有服务链对所有可用资源池的得分,根据当前资源池中所有服务链对所有可用资源池的得分,将当前资源池中所有服务链进行重新分配和部署。
在本公开的一些实施例中,所述计算当前资源池中所有服务链对所有可用资源池的得分,根据当前资源池中所有服务链对所有可用资源池的得分,将当前资源池中所有服务链进行重新分配和部署包括:
计算当前资源池中所有服务链对所有可用资源池的得分;
将所有服务链对所有可用资源池的得分进行排序;
将得分最高的服务链迁移或部署到对应的资源池;
判断所有服务链是否均完成部署;
若所有服务链没有均完成部署,则从所有服务链中删除该得分最高的服务链,之后重复执行计算当前资源池中所有服务链对所有可用资源池的得分、将所有服务链对所有可用资源池的得分进行排序、将得分最高的服务链迁移或部署到对应的资源池以及判断所有服务链是否均完成部署的步骤。
在本公开的一些实施例中,所述服务链分配方法还包括:
若所述资源总数不大于当前资源池剩余资源,则正常部署该时延敏感型业务。
在本公开的一些实施例中,所述计算当前资源池中所有服务链对所有可用资源池的得分包括:
判断服务链是否为时延敏感型业务服务链;
对于非时延敏感型业务服务链,确定非时延敏感型业务服务链对所有可用资源池的得分为固定值;
对于时延敏感型业务服务链,根据时延敏感等级、当前资源池到部署地域的距离、需求资源量、资源池可用资源量和资源平衡度中的至少一项确定时延敏感型业务服务链对所有可用资源池的得分。
在本公开的一些实施例中,所述根据时延敏感等级、当前资源池到部署地域的距离、需求资源量、资源池可用资源量和资源平滑度中的至少一项确定时延敏感型业务服务链对所有可用资源池的得分包括:
根据时延敏感等级和当前资源池到部署地域的距离确定距离得分;
根据需求资源量和资源池可用资源量确定需求资源得分;
根据资源平衡度确定资源平衡得分;
根据距离得分、需求资源得分和资源平衡得分,确定时延敏感型业务服务链对所有可用资源池的得分。
在本公开的一些实施例中,所述根据需求资源量和资源池可用资源量确定需求资源得分包括:
在需求的资源有多种的情况下,对于每种资源,根据需求资源量和资源池可用资源量确定每种资源的需求资源得分;
将每种资源的需求资源得分求平均值,作为需求资源得分。
在本公开的一些实施例中,所述根据资源平衡度确定资源平衡得分包括:
在需求的资源有多种的情况下,对于每种资源,根据需求资源量和资源池可用资源量确定每种资源的需求资源占比;
对于多种资源中的每两种资源,根据这两种资源的需求资源占比的差值,确定该两种资源的资源平衡度;
将每种资源的资源平衡度求平均值,作为资源平衡得分。
根据本公开的另一方面,提供一种服务链分配装置,包括:
任务创建模块,被配置为创建一个时延敏感型业务服务链部署任务;
资源总数确定模块,被配置为根据时延敏感型业务服务链,计算部署时延敏感型业务需要的资源总数;
判断模块,被配置为判断所述资源总数是否大于当前资源池剩余资源;
分配模块,被配置为若所述资源总数大于当前资源池剩余资源,则计算当前资源池中所有服务链对所有可用资源池的得分,根据当前资源池中所有服务链对所有可用资源池的得分,将当前资源池中所有服务链进行重新分配和部署。
在本公开的一些实施例中,所述分配模块包括:
分数计算单元,被配置为计算当前资源池中所有服务链对所有可用资源池的得分;
排序单元,被配置为将所有服务链对所有可用资源池的得分进行排序;
部署单元,被配置为将得分最高的服务链迁移或部署到对应的资源池;
判断单元,被配置为判断所有服务链是否均完成部署;
删除单元,被配置为若所有服务链没有均完成部署,则从所有服务链中删除该得分最高的服务链,之后指示分数计算单元、排序单元、部署单元和判断单元重复执行计算当前资源池中所有服务链对所有可用资源池的得分、将所有服务链对所有可用资源池的得分进行排序、将得分最高的服务链迁移或部署到对应的资源池以及判断所有服务链是否均完成部署的操作。
在本公开的一些实施例中,所述服务链分配装置还包括:
部署模块,被配置为若所述资源总数不大于当前资源池剩余资源,则正常部署该时延敏感型业务。
在本公开的一些实施例中,所述分数计算单元,被配置为判断服务链是否为时延敏感型业务服务链;对于非时延敏感型业务服务链,确定非时延敏感型业务服务链对所有可用资源池的得分为固定值;对于时延敏感型业务服务链,根据时延敏感等级、当前资源池到部署地域的距离、需求资源量、资源池可用资源量和资源平衡度中的至少一项确定时延敏感型业务服务链对所有可用资源池的得分。
在本公开的一些实施例中,所述分数计算单元,被配置为在根据时延敏感等级、当前资源池到部署地域的距离、需求资源量、资源池可用资源量和资源平滑度中的至少一项确定时延敏感型业务服务链对所有可用资源池的得分的情况下,根据时延敏感等级和当前资源池到部署地域的距离确定距离得分;根据需求资源量和资源池可用资源量确定需求资源得分;根据资源平衡度确定资源平衡得分;根据距离得分、需求资源得分和资源平衡得分,确定时延敏感型业务服务链对所有可用资源池的得分。
在本公开的一些实施例中,所述分数计算单元,被配置为在根据需求资源量和资源池可用资源量确定需求资源得分的情况下,若需求的资源有多种,则对于每种资源,根据需求资源量和资源池可用资源量确定每种资源的需求资源得分;将每种资源的需求资源得分求平均值,作为需求资源得分。
在本公开的一些实施例中,所述分数计算单元,被配置为在根据资源平衡度确定资源平衡得分的情况下,若需求的资源有多种,则对于每种资源,根据需求资源量和资源池可用资源量确定每种资源的需求资源占比;对于多种资源中的每两种资源,根据这两种资源的需求资源占比的差值,确定该两种资源的资源平衡度;将每种资源的资源平衡度求平均值,作为资源平衡得分。
根据本公开的另一方面,提供一种计算机设备,包括:
存储器,用于存储指令;
处理器,用于执行所述指令,使得所述计算机设备执行实现如上述任一实施例所述的服务链分配方法的操作。
根据本公开的另一方面,提供一种计算机可读存储介质,其中,所述性计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如上述任一实施例所述的服务链分配方法。
本公开可以在云边协同场景下当边缘资源池资源不足时,为池内服务链重新分配资源池。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为相关技术云边一体化架构一些实施例的示意图。
图2为相关技术一些实施例中云边协同场景下安全服务链的部署流程示意图。
图3为本公开服务链分配方法一些实施例的示意图。
图4为本公开服务链分配方法另一些实施例的示意图。
图5为本公开一些实施例中创建服务链业务部署任务的示意图。
图6为本公开服务链分配装置一些实施例的示意图。
图7为本公开分配模块一些实施例的示意图。
图8为本公开计算机设备一些实施例的结构示意图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
对于相关领域普通技术人员已知的技术、网络接入方法和设备可能不作详细讨论,但在适当情况下,所述技术、网络接入方法和设备应当被视为授权说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
图1为相关技术云边一体化架构一些实施例的示意图。如图1所示,相关技术中,有些安全业务服务链会部署在边缘云资源池中,遵循典型的云边一体化架构。如图1所示,中心云和中心资源池下包括边缘资源池1、边缘资源池2和边缘资源池3,其中,边缘资源池1为用户1、用户2和用户3服务,边缘资源池2为用户4和用户5服务,边缘资源池3为用户6和用户7服务。
发明人通过研究发现相关技术存在的问题在于:在安全业务场景和现有的云边协同架构下,中心云负责管理以及为需要大计算量的应用提供资源。然而安全业务服务链是时延敏感型业务,使得这类服务一般会部署在边缘侧。同时边缘资源池中的资源又是有限的。在这样的背景下,服务链能否部署在离用户接入地理位置近的边缘资源池中就成为了影响服务质量和决定用户体验的关键因素。
图2为相关技术一些实施例中云边协同场景下安全服务链的部署流程示意图。如图2所示,相关技术中需要人工介入部署服务链,若因资源问题部署失败。则需要根据其它资源池地理位置和可利用资源情况综合考虑再次部署。或人工迁移本资源池内的其它服务链,为新服务链部署腾出资源。若想优化此问题需要两步:1、解决需要人工介入寻找合适的资源池部署服务链的问题。2、解决如何才能让所有服务链都合理的部署在资源池中。
鉴于以上技术问题中的至少一项,本公开提供了一种服务链分配方法和系统、计算机设备和存储介质,下面通过具体实施例对本公开进行说明。
图3为本公开服务链分配方法一些实施例的示意图。优选的,本实施例可由本公开服务链分配装置或本公开计算机设备执行。该服务链分配方法可以包括步骤31-步骤34中的至少一个步骤,其中:
步骤31,创建一个时延敏感型业务服务链部署任务。
步骤32,根据时延敏感型业务服务链,计算部署时延敏感型业务需要的资源总数。
步骤33,判断所述资源总数是否大于当前资源池剩余资源。
步骤34,若所述资源总数大于当前资源池剩余资源,则计算当前资源池中所有服务链对所有可用资源池的得分,根据当前资源池中所有服务链对所有可用资源池的得分,将当前资源池中所有服务链进行重新分配和部署。
在本公开的一些实施例中,步骤34中,所述根据当前资源池中所有服务链对所有可用资源池的得分,将当前资源池中所有服务链进行重新分配和部署的步骤可以包括:优先将得分高的服务链部署或迁移至该资源池。直至所有服务链完成部署。
在本公开的一些实施例中,所述服务链分配方法还可以包括:步骤35,若所述资源总数不大于当前资源池剩余资源,则正常部署该时延敏感型业务。
图4为本公开服务链分配方法另一些实施例的示意图。优选的,本实施例可由本公开服务链分配装置或本公开计算机设备执行。图3实施例的步骤31-步骤33分别于图4实施例的步骤41-步骤43相同或类似。如图4所示,该服务链分配方法可以包括步骤41-步骤47中的至少一个步骤,其中:
步骤41,创建一个时延敏感型业务服务链部署任务。
在本公开的一些实施例中,所述时延敏感型业务服务链可以为安全业务服务链。
在本公开的一些实施例中,步骤41可以包括:新增“TSTask”API(ApplicationProgramming Interface,应用程序接口),使中心云可以声明一个时延敏感型业务(安全业务服务链)部署。
图5为本公开一些实施例中创建服务链业务部署任务的示意图。如图5所示,该时延敏感型业务TSTask的任务名称为task1;任务种类为服务链(SFC);任务需要创建的设备列表(service list)包括FW(基本防火墙),IPS(入侵防御系统)、WAF(WEB应用防火墙);部署的地域为绍兴;实验敏感等级为高(TSlvel=high)。
步骤42,根据时延敏感型业务服务链,计算部署时延敏感型业务需要的资源总数。
在本公开的一些实施例中,步骤42可以包括:根据任务需要创建的设备列表ServiceList计算部署业务需要的资源总数。
步骤43,判断时延敏感型业务服务链是否能部署。若时延敏感型业务服务链能部署,则正常部署该时延敏感型业务;之后结束,不再执行本申请的其它步骤。若时延敏感型业务服务链不能部署,则执行步骤44。
在本公开的一些实施例中,步骤43可以包括:判断所述资源总数是否大于当前资源池剩余资源(即当前资源池剩余资源不充足)。若所述资源总数大于当前资源池剩余资源,则判定时延敏感型业务服务链不能部署;若所述资源总数不大于当前资源池剩余资源(即当前资源池剩余资源充足),则判定时延敏感型业务服务链能部署。
在本公开的一些实施例中,当前资源池可以为部署的地域(城市)所在的资源池。
步骤44,计算当前资源池中所有服务链对所有可用资源池的得分。即,计算当前资源池中每个服务链对所有可用资源池的得分。
在本公开的一些实施例中,步骤44可以包括:针对要部署或迁移的服务链为每一个可迁移的资源池打分。此步骤的要点是根据打分机制为每个服务链部署选择最适合的资源池。
在本公开的一些实施例中,步骤44可以包括:在默认的情况下启动如下四个策略:步骤200,Rule(规则);步骤310,距离优先(DistancePriority)规则;步骤320,最少需求资源量优先(LeastRequestedPriority)规则;步骤330,资源平衡配置(BalanceResourceAllocation)规则。
在本公开的一些实施例中,步骤44可以包括步骤100-步骤300中的至少一个步骤,其中:
步骤100,判断服务链是否为时延敏感型业务服务链。
步骤200,对于非时延敏感型业务服务链,确定非时延敏感型业务服务链对所有可用资源池的得分为固定值。
在本公开的一些实施例中,步骤200可以包括:按照Rule(规则),对于非时延敏感型服务链,设定其分值为固定值。
在本公开的一些实施例中,所述固定值可以为100分或10分。
步骤300,对于时延敏感型业务服务链,根据时延敏感等级(TsLevel)、当前资源池到部署地域的距离(Distance)、需求资源量(Requested)、资源池可用资源量(capacity)和资源平衡度(Balance Resource)中的至少一项确定时延敏感型业务服务链对所有可用资源池的得分。
在本公开的一些实施例中,步骤300可以包括步骤310-步骤340中的至少一个步骤,其中:
步骤310,根据时延敏感等级和当前资源池到部署地域的距离确定距离得分。
在本公开的一些实施例中,步骤310可以包括:根据距离优先(DistancePriority)规则,确定距离得分。
在本公开的一些实施例中,步骤310可以包括:根据时延敏感等级确定对应的时延敏感等级分数(TsLevelscore);根据时延敏感等级分数(TsLevelscore)和当前资源池到部署地域的距离(Distance)确定距离得分。
在本公开的一些实施例中,步骤310可以包括:根据公式(1)确定距离得分。
score=(10-(distance/50)-5)*TsLevelscore (1)
其中,TsLevel为high时,TsLevelscore=3;TsLevel为medium时,TsLevelscore=2;TsLevel为low时,TsLevelscore=0.5。
例如:一个服务链的TsLevel为high,此资源池离部署地域100km,则此评价规则在对此资源池的分数为(10-(100/50)-5)*3=9分。则此评价规则在对此资源池的分数9分。
步骤320,根据需求资源量和资源池可用资源量确定需求资源得分。
在本公开的一些实施例中,步骤320可以包括:根据最少需求资源量优先(LeastRequestedPriority)规则,确定需求资源得分。
在本公开的一些实施例中,步骤320可以包括步骤321-步骤322中的至少一个步骤,其中:
步骤321,在需求的资源有多种的情况下,对于每种资源,根据需求资源量和资源池可用资源量,确定每种资源的需求资源得分。
在本公开的一些实施例中,需求的多种资源可以包括CPU、内存和存储空间。
在本公开的一些实施例中,步骤321可以包括:在需求的资源有多种的情况下,对于每种资源,根据资源池可用资源量和需求资源量的差值,确定每种资源的需求资源得分。
步骤322,将每种资源的需求资源得分求平均值,作为需求资源得分。
在本公开的一些实施例中,步骤320可以包括:根据下面的公式确定需求资源得分。
score=cpu((capacity-sum(requested))*10/capacity)+memory((capacity-sum(requested))*10/capacity)+storage((capacity-sum(requested))*10/capacity)/3
例如:CPU的可用资源为100,运行容器申请的资源为15,则cpu分值为8.5分,内存可用资源为100,运行容器申请资源为20,则内存分支为8分。储存空间可用资源为100,运行容器申请资源为20,则内存分支为8分。则此评价规则对此资源池的分数为(8.5+8+8)/3=8.17分。
步骤330,根据资源平衡度确定资源平衡得分。
在本公开的一些实施例中,步骤330可以包括:根据资源平衡配置(BalanceResourceAllocation)规则确定资源平衡得分。
在本公开的一些实施例中,步骤330可以包括步骤331-步骤332中的至少一个步骤,其中:
步骤331,在需求的资源有多种的情况下,对于每种资源,根据需求资源量和资源池可用资源量确定每种资源的需求资源占比。
在本公开的一些实施例中,步骤331可以包括:在需求的资源有多种的情况下,对于每种资源,根据需求资源量和资源池可用资源量的比值,确定每种资源的需求资源占比。
例如:对于CPU而言,cpuFraction=requested/capacity,
对于储存空间而言,storageFraction=requested/capacity,
对于内存而言,memoryFraction=requested/capacity。
步骤332,对于多种资源中的每两种资源,根据这两种资源的需求资源占比的差值,确定该两种资源的资源平衡度。
在本公开的一些实施例中,步骤332可以包括:对于多种资源中的每两种资源,根据这两种资源的需求资源占比的差值的绝对值,确定该两种资源的资源平衡度。
步骤333,将每种资源的资源平衡度求平均值,作为资源平衡得分。
在本公开的一些实施例中,步骤330可以包括:根据下面的公式确定资源平衡得分。
score=((10-abs(cpuFraction-storageFraction)*10)+(10-abs(cpuFraction-memoryFraction)*10)+(10-abs(storageFraction-memoryFraction))/3
本公开上述实施例的该调度策略是出于平衡度的考虑,避免出不同资源池资源消耗不均匀的事情。
例如某资源池cpu的剩余资源还比较充裕,假如为100,申请10,则cpuFraction为0.1,而内存剩余资源不多,假如为20,申请10,则memoryFraction为0.5,这样由于CPU和内存使用不均衡,此项得分为10-abs(0.1-0.5)*10=6分。假如CPU和内存资源比较均衡,例如两者都为0.5,那么代入公式,则得分为10分。这样算出三种资源之间的得分加起来再除以三就能算出本资源池的资源平均度分数。
步骤340,根据距离得分、需求资源得分和资源平衡得分,确定时延敏感型业务服务链对所有可用资源池的得分。
在本公开的一些实施例中,步骤340可以包括:根据距离得分、需求资源得分和资源平衡得分的和,确定时延敏感型业务服务链对所有可用资源池的得分。
步骤45,将所有服务链对所有可用资源池的得分进行排序。
步骤46,将得分最高的服务链迁移或部署到对应的资源池。
在本公开的一些实施例中,步骤46可以包括:将得分最高的服务链迁移或部署到对应的资源池,并移除该项分数纪录。
步骤47,判断所有服务链是否均完成部署。若所有服务链均完成部署;则结束,不再执行本申请的其它步骤。若所有服务链没有均完成部署,则从所有服务链中删除该得分最高的服务链,之后重复执行步骤44-步骤46,即,重复执行计算当前资源池中所有服务链对所有可用资源池的得分、将所有服务链对所有可用资源池的得分进行排序、将得分最高的服务链迁移或部署到对应的资源池以及判断所有服务链是否均完成部署的步骤。
本公开上述实施例通过步骤44、步骤310-步骤340的评判标准,使用积分制评价出各个资源池对于某个的得分值,按照得分多少,将业务运行在最佳节点上。
本公开上述实施例提供了一种在云边协同与安全场景下对于边缘资源池中服务链重新分配的方法,该方案1)新增“TSTask”API,使中心云可以声明一个时延敏感型业务(安全业务服务链)部署;2)设计了对于时延敏感型业务(安全业务服务链)部署资源池打分方法和分配调度机制。使得再分配的服务链能分配到合理的资源池中部署。本公开上述实施例通过1)2)的实现,最终实现了安全业务服务链的合理部署与调度。
本公开上述实施例针对要部署或迁移的服务链为每一个可迁移的资源池打分。本公开上述实施例可以根据打分机制为每个服务链部署选择最适合的资源池。
本公开上述实施例的优点和效果在于:
第一、本公开上述实施例可自动化的调度并部署服务链业务。本公开上述实施例可在资源池pod部署过程中及时发现并终止无限重启的pod。
第二、本公开上述实施例在打分机制的加持下,根据分数高低进行服务链业务的再分配调度,相比人工干预的方式决策错误率低。
本公开上述实施例打分公式的目的是对资源池评分,分数用来对比,以此判断哪个资源池更适合做迁移。所以打分公式的分值是否为正数或负数本身是没有意义的,分数只是用来比大小的。如果资源池A的评分为10,资源池B的评分为-5,这只能说明资源池A比B更适合迁移。资源池打分为负数的情况是合理的,并且并不影响打分策略的有效性。
本公开上述实施例中,当用户声明一个TSTask时,就说明这个任务是对时延敏感的。在这种情况下,将对时延不敏感或者不那么敏感的业务迁移到其它资源池试一个可行的解决方案。这种trade off的思想体现在计算机领域中的方方面面,比如各种算法的核心思想都是以空间换时间。
图6为本公开服务链分配装置一些实施例的示意图。如图6所示,该服务链分配装置可以包括任务创建模块61、资源总数确定模块62、判断模块63和分配模块64中的至少一个,其中:
任务创建模块61,被配置为创建一个时延敏感型业务服务链部署任务。
资源总数确定模块62,被配置为根据时延敏感型业务服务链,计算部署时延敏感型业务需要的资源总数。
判断模块63,被配置为判断所述资源总数是否大于当前资源池剩余资源。
分配模块64,被配置为若所述资源总数大于当前资源池剩余资源,则计算当前资源池中所有服务链对所有可用资源池的得分,根据当前资源池中所有服务链对所有可用资源池的得分,将当前资源池中所有服务链进行重新分配和部署。
在本公开的一些实施例中,如图6所示,所述服务链分配装置还可以包括部署模块65,其中:
部署模块65,被配置为若所述资源总数不大于当前资源池剩余资源,则正常部署该时延敏感型业务。
图7为本公开分配模块一些实施例的示意图。如图7所示,该分配模块(例如图6实施例的分配模块64)可以包括分数计算单元641、排序单元642、部署单元643、判断单元644和删除单元645中的至少一个,其中:
分数计算单元641,被配置为计算当前资源池中所有服务链对所有可用资源池的得分。
在本公开的一些实施例中,所述分数计算单元641,可以被配置为判断服务链是否为时延敏感型业务服务链;对于非时延敏感型业务服务链,确定非时延敏感型业务服务链对所有可用资源池的得分为固定值;对于时延敏感型业务服务链,根据时延敏感等级、当前资源池到部署地域的距离、需求资源量、资源池可用资源量和资源平衡度中的至少一项确定时延敏感型业务服务链对所有可用资源池的得分。
在本公开的一些实施例中,所述分数计算单元641,可以被配置为在根据时延敏感等级、当前资源池到部署地域的距离、需求资源量、资源池可用资源量和资源平滑度中的至少一项确定时延敏感型业务服务链对所有可用资源池的得分的情况下,根据时延敏感等级和当前资源池到部署地域的距离确定距离得分;根据需求资源量和资源池可用资源量确定需求资源得分;根据资源平衡度确定资源平衡得分;根据距离得分、需求资源得分和资源平衡得分,确定时延敏感型业务服务链对所有可用资源池的得分。
在本公开的一些实施例中,所述分数计算单元641,可以被配置为在根据需求资源量和资源池可用资源量确定需求资源得分的情况下,若需求的资源有多种,则对于每种资源,根据需求资源量和资源池可用资源量确定每种资源的需求资源得分;将每种资源的需求资源得分求平均值,作为需求资源得分。
在本公开的一些实施例中,所述分数计算单元641,可以被配置为在根据资源平衡度确定资源平衡得分的情况下,若需求的资源有多种,则对于每种资源,根据需求资源量和资源池可用资源量确定每种资源的需求资源占比;对于多种资源中的每两种资源,根据这两种资源的需求资源占比的差值,确定该两种资源的资源平衡度;将每种资源的资源平衡度求平均值,作为资源平衡得分。
排序单元642,被配置为将所有服务链对所有可用资源池的得分进行排序。
部署单元643,被配置为将得分最高的服务链迁移或部署到对应的资源池。
判断单元644,被配置为判断所有服务链是否均完成部署。
删除单元645,被配置为若所有服务链没有均完成部署,则从所有服务链中删除该得分最高的服务链,之后指示分数计算单元641、排序单元642、部署单元643和判断单元644重复执行计算当前资源池中所有服务链对所有可用资源池的得分、将所有服务链对所有可用资源池的得分进行排序、将得分最高的服务链迁移或部署到对应的资源池以及判断所有服务链是否均完成部署的操作。
在云边协同的安全资源池内,经常存在部署服务链,但边缘资源池缺乏资源部署的矛盾。使用本公开上述实施例所保护的方法和机制可以自动化的、资源利用高效的、准确的将所需部署的服务链部署到合适的资源池中。
本专利适用于在边缘安全资源池场景下,时延敏感型服务链部署。
本公开上述实施例可以应用于云服务部署场景:任何用k8s部署的云服务。
本公开上述实施例可以减少服务链时延;提高网络的质量、可靠性和稳定性。
图8为本公开计算机设备一些实施例的结构示意图。如图8所示,计算机设备包括存储器81和处理器82。
存储器81用于存储指令,处理器82耦合到存储器81,处理器82被配置为基于存储器存储的指令执行实现上述实施例涉及的服务链分配方法。
如图8所示,该计算机设备还包括通信接口83,用于与其它设备进行信息交互。同时,该计算机设备还包括总线84,处理器82、通信接口83、以及存储器81通过总线84完成相互间的通信。
存储器81可以包含高速RAM存储器,也可还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。存储器81也可以是存储器阵列。存储器81还可能被分块,并且块可按一定的规则组合成虚拟卷。
此外,处理器82可以是一个中央处理器CPU,或者可以是专用集成电路ASIC,或是被配置成实施本公开实施例的一个或多个集成电路。
本公开上述实施例可以减少自动化部署时人工介入查错的次数,增加部署自动化程度。
本公开上述实施例可以降低云服务部署的故障率,提高容错率和成功率。
根据本公开的另一方面,提供一种计算机可读存储介质,其中,所述性计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如上述任一实施例(例如图3-图5任一实施例)所述的服务链分配方法。
在本公开的一些实施例中,所述计算机可读存储介质可以为非瞬时性计算机可读存储介质。
本公开上述实施例设计了服务链迁移时资源池的打分机制,从多个维度衡量一个资源池对与某个特定业务是否合适,打出分值。
本公开上述实施例相比人工干预部署的方式,打分机制下的自动部署错误率低。
本领域内的技术人员应明白,本公开的实施例可提供为方法、装置、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本公开实施例的网络接入方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在上面所描述的计算机设备、分数计算单元、排序单元、部署单元、判断单元、删除单元、部署模块、任务创建模块、资源总数确定模块、判断模块和分配模块等功能单元可以实现为用于执行本申请所描述功能的通用处理器、可编程逻辑控制器(PLC)、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件或者其任意适当组合。
至此,已经详细描述了本公开。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指示相关的硬件完成,所述的程序可以存储于一种非瞬时性计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本公开的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本公开限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本公开的原理和实际应用,并且使本领域的普通技术人员能够理解本公开从而设计适于特定用途的带有各种修改的各种实施例。

Claims (16)

1.一种服务链分配方法,包括:
创建一个时延敏感型业务服务链部署任务;
根据时延敏感型业务服务链,计算部署时延敏感型业务需要的资源总数;
判断所述资源总数是否大于当前资源池剩余资源;
若所述资源总数大于当前资源池剩余资源,则计算当前资源池中所有服务链对所有可用资源池的得分,根据当前资源池中所有服务链对所有可用资源池的得分,将当前资源池中所有服务链进行重新分配和部署;
其中,所述计算当前资源池中所有服务链对所有可用资源池的得分包括:
判断服务链是否为时延敏感型业务服务链;
对于时延敏感型业务服务链,根据时延敏感等级、当前资源池到部署地域的距离、需求资源量、资源池可用资源量和资源平衡度中的至少一项确定时延敏感型业务服务链对所有可用资源池的得分。
2.根据权利要求1所述的服务链分配方法,其中,所述计算当前资源池中所有服务链对所有可用资源池的得分,根据当前资源池中所有服务链对所有可用资源池的得分,将当前资源池中所有服务链进行重新分配和部署包括:
计算当前资源池中所有服务链对所有可用资源池的得分;
将所有服务链对所有可用资源池的得分进行排序;
将得分最高的服务链迁移或部署到对应的资源池;
判断所有服务链是否均完成部署;
若所有服务链没有均完成部署,则从所有服务链中删除该得分最高的服务链,之后重复执行计算当前资源池中所有服务链对所有可用资源池的得分、将所有服务链对所有可用资源池的得分进行排序、将得分最高的服务链迁移或部署到对应的资源池以及判断所有服务链是否均完成部署的步骤。
3.根据权利要求1或2所述的服务链分配方法,还包括:
若所述资源总数不大于当前资源池剩余资源,则正常部署该时延敏感型业务。
4.根据权利要求1或2所述的服务链分配方法,所述计算当前资源池中所有服务链对所有可用资源池的得分还包括:
对于非时延敏感型业务服务链,确定非时延敏感型业务服务链对所有可用资源池的得分为固定值。
5.根据权利要求4所述的服务链分配方法,所述根据时延敏感等级、当前资源池到部署地域的距离、需求资源量、资源池可用资源量和资源平滑度中的至少一项确定时延敏感型业务服务链对所有可用资源池的得分包括:
根据时延敏感等级和当前资源池到部署地域的距离确定距离得分;
根据需求资源量和资源池可用资源量确定需求资源得分;
根据资源平衡度确定资源平衡得分;
根据距离得分、需求资源得分和资源平衡得分,确定时延敏感型业务服务链对所有可用资源池的得分。
6.根据权利要求5所述的服务链分配方法,所述根据需求资源量和资源池可用资源量确定需求资源得分包括:
在需求的资源有多种的情况下,对于每种资源,根据需求资源量和资源池可用资源量确定每种资源的需求资源得分;
将每种资源的需求资源得分求平均值,作为需求资源得分。
7.根据权利要求5所述的服务链分配方法,所述根据资源平衡度确定资源平衡得分包括:
在需求的资源有多种的情况下,对于每种资源,根据需求资源量和资源池可用资源量确定每种资源的需求资源占比;
对于多种资源中的每两种资源,根据这两种资源的需求资源占比的差值,确定该两种资源的资源平衡度;
将每种资源的资源平衡度求平均值,作为资源平衡得分。
8.一种服务链分配装置,包括:
任务创建模块,被配置为创建一个时延敏感型业务服务链部署任务;
资源总数确定模块,被配置为根据时延敏感型业务服务链,计算部署时延敏感型业务需要的资源总数;
判断模块,被配置为判断所述资源总数是否大于当前资源池剩余资源;
分配模块,被配置为若所述资源总数大于当前资源池剩余资源,则计算当前资源池中所有服务链对所有可用资源池的得分,根据当前资源池中所有服务链对所有可用资源池的得分,将当前资源池中所有服务链进行重新分配和部署;
其中,所述分配模块包括:
分数计算单元,被配置为判断服务链是否为时延敏感型业务服务链;对于时延敏感型业务服务链,根据时延敏感等级、当前资源池到部署地域的距离、需求资源量、资源池可用资源量和资源平衡度中的至少一项确定时延敏感型业务服务链对所有可用资源池的得分。
9.根据权利要求8所述的服务链分配装置,其中:
分数计算单元,还被配置为计算当前资源池中所有服务链对所有可用资源池的得分;
其中,所述分配模块还包括:
排序单元,被配置为将所有服务链对所有可用资源池的得分进行排序;
部署单元,被配置为将得分最高的服务链迁移或部署到对应的资源池;
判断单元,被配置为判断所有服务链是否均完成部署;
删除单元,被配置为若所有服务链没有均完成部署,则从所有服务链中删除该得分最高的服务链,之后指示分数计算单元、排序单元、部署单元和判断单元重复执行计算当前资源池中所有服务链对所有可用资源池的得分、将所有服务链对所有可用资源池的得分进行排序、将得分最高的服务链迁移或部署到对应的资源池以及判断所有服务链是否均完成部署的操作。
10.根据权利要求8或9所述的服务链分配装置,还包括:
部署模块,被配置为若所述资源总数不大于当前资源池剩余资源,则正常部署该时延敏感型业务。
11.根据权利要求8或9所述的服务链分配装置,其中:
所述分数计算单元,还被配置为对于非时延敏感型业务服务链,确定非时延敏感型业务服务链对所有可用资源池的得分为固定值。
12.根据权利要求11所述的服务链分配装置,其中:
所述分数计算单元,被配置为在根据时延敏感等级、当前资源池到部署地域的距离、需求资源量、资源池可用资源量和资源平滑度中的至少一项确定时延敏感型业务服务链对所有可用资源池的得分的情况下,根据时延敏感等级和当前资源池到部署地域的距离确定距离得分;根据需求资源量和资源池可用资源量确定需求资源得分;根据资源平衡度确定资源平衡得分;根据距离得分、需求资源得分和资源平衡得分,确定时延敏感型业务服务链对所有可用资源池的得分。
13.根据权利要求12所述的服务链分配装置,其中:
所述分数计算单元,被配置为在根据需求资源量和资源池可用资源量确定需求资源得分的情况下,若需求的资源有多种,则对于每种资源,根据需求资源量和资源池可用资源量确定每种资源的需求资源得分;将每种资源的需求资源得分求平均值,作为需求资源得分。
14.根据权利要求12所述的服务链分配装置,其中:
所述分数计算单元,被配置为在根据资源平衡度确定资源平衡得分的情况下,若需求的资源有多种,则对于每种资源,根据需求资源量和资源池可用资源量确定每种资源的需求资源占比;对于多种资源中的每两种资源,根据这两种资源的需求资源占比的差值,确定该两种资源的资源平衡度;将每种资源的资源平衡度求平均值,作为资源平衡得分。
15.一种计算机设备,包括:
存储器,用于存储指令;
处理器,用于执行所述指令,使得所述计算机设备执行实现如权利要求1-7中任一项所述的服务链分配方法的操作。
16.一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如权利要求1-7中任一项所述的服务链分配方法。
CN202210734335.0A 2022-06-27 2022-06-27 服务链分配方法和系统、计算机设备和存储介质 Active CN115086324B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210734335.0A CN115086324B (zh) 2022-06-27 服务链分配方法和系统、计算机设备和存储介质
PCT/CN2023/099848 WO2024001755A1 (zh) 2022-06-27 2023-06-13 服务链分配方法和系统、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210734335.0A CN115086324B (zh) 2022-06-27 服务链分配方法和系统、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN115086324A CN115086324A (zh) 2022-09-20
CN115086324B true CN115086324B (zh) 2024-07-09

Family

ID=

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111538587A (zh) * 2020-03-06 2020-08-14 重庆邮电大学 一种基于负载均衡的服务功能链重配置方法
CN112995682A (zh) * 2021-04-21 2021-06-18 军事科学院系统工程研究院网络信息研究所 一种对视频云服务进行部署迁移的方法和装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111538587A (zh) * 2020-03-06 2020-08-14 重庆邮电大学 一种基于负载均衡的服务功能链重配置方法
CN112995682A (zh) * 2021-04-21 2021-06-18 军事科学院系统工程研究院网络信息研究所 一种对视频云服务进行部署迁移的方法和装置

Similar Documents

Publication Publication Date Title
US20210216355A1 (en) Minimizing impact of migrating virtual services
CN103729248B (zh) 一种基于缓存感知的确定待迁移任务的方法和装置
CN111078363A (zh) 一种虚拟机的numa节点调度方法、装置、设备及介质
JP6161312B2 (ja) データセンタにおけるQoS認識バランシング
CN108123980B (zh) 一种资源调度方法及系统
CN112269641A (zh) 一种调度方法、装置、电子设备及存储介质
US20210211391A1 (en) Automated local scaling of compute instances
CN105893113A (zh) 虚拟机的管理系统及管理方法
CN110865881A (zh) 一种资源调度的方法及装置
CN110928638A (zh) 一种虚拟机部署的宿主机的选择方法和装置
US9882973B2 (en) Breadth-first resource allocation system and methods
CN113110914A (zh) 一种基于微服务架构的物联网平台构建方法
CN107885579A (zh) 虚拟机的负载均衡方法和计算机可读存储介质
US20230037293A1 (en) Systems and methods of hybrid centralized distributive scheduling on shared physical hosts
CN110661828A (zh) 一种资源分配方法、装置、服务器及可读存储介质
KR20120019330A (ko) 멀티코어 시스템의 스케쥴링 장치 및 방법
CN105635285B (zh) 一种基于状态感知的vm迁移调度方法
CN113918278A (zh) 一种虚拟机亲和组的管理方法
CN112231053B (zh) 一种负载均衡服务分配方法及装置
CN115086324B (zh) 服务链分配方法和系统、计算机设备和存储介质
CN110958192B (zh) 一种基于虚拟交换机的虚拟数据中心资源分配系统及方法
CN110120978B (zh) 一种弹性用户云计算资源的安全保护方法
CN112631766A (zh) 项目环境资源的动态调整方法及装置
CN108429704B (zh) 一种节点资源分配方法及装置
CN115086324A (zh) 服务链分配方法和系统、计算机设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant