【技术实现步骤摘要】
一种基于容器云平台的微服务工作流弹性调度方法、系统及设备
[0001]本专利技术属于云计算数据处理
,尤其涉及一种基于容器云平台的微服务工作流弹性调度方法、系统及设备。
技术介绍
[0002]目前,微服务作为物联网平台服务提供的核心技术,支撑多样化的物联网应用。应用服务提供商(ASP)通过微服务架构将大型工作流应用划分成大量细粒度、低耦合的微服务任务,因此根据用户需求的不同而快速、独立的调度和部署,从而提高了工作流应用的灵活性和敏捷性。任务调度和弹性伸缩是容器云中工作流调度的关键技术,将具有数据依赖约束的工作流调度到相关容器上进行处理,并根据实时需求进行弹性伸缩以满足服务质量。考虑微服务工作流的截止时间约束下最小化云资源租用费用,如何在容器云平台上任务调度和弹性伸缩是云中基于微服务架构的物联网应用程序需要解决的关键问题。
[0003]针对常见的物联网应用如智慧园区、智慧医院等系统主要包含两类微服务工作流,即延迟敏感型的流式工作流(DSSW)和数据密集型批处理工作流(RIBW)。现有大部分的工作流调度算法要么只关注DSSW调度,要么只关注RIBW动态调度,没有相应的联合调度策略,导致无法充分利用容器的空闲实例时间,造成资源浪费。针对微服务工作流的动态特性,即任务到达时间以及执行时间具有不确定的特性,现有方法常常忽略这些不确定性,导致超出工作流的截止时间导致增加执行成本。针对云中微服务的弹性伸缩,现有大多数的工作流调度算法仅适用于单层架构(VM或容器),无法同时在容器层和虚拟机层同时进行任务调度和弹性伸缩, ...
【技术保护点】
【技术特征摘要】
1.一种基于容器云平台的微服务工作流调度弹性方法,其特征在于,所述基于容器云平台的微服务工作流弹性调度方法包括:首先,根据微服务工作流元信息将工作流划分为延迟敏感型的流式工作流DSSW和资源密集型批处理工作流RIBW;并计算工作流中每个任务的子截止日期,并添加到相应的任务池中;其次,对于DSSW和RIBW工作流任务池中的就绪任务添加到就绪队列中并进行排序;采用不同的分配策略对DSSW和RIBW工作流分配或创建容器,得到任务调度方案;最后,采用多目标优化的新容器实例部署算法确定容器到VM的映射关系,得到部署方案。2.如权利要求1所述基于容器云平台的微服务工作流弹性调度方法,其特征在于,所述基于容器云平台的微服务工作流弹性调度方法包括以下步骤:步骤一,将用户请求解析为微服务工作流,根据用户提交的截止日期将工作流分类为延迟敏感型的流式工作流DSSW和数据密集型批处理工作流RIBW;将两类工作流集合中的任务分别添加到相应的任务池,其中就绪任务添加到就绪队列;将工作流中的任务分配子截止时间;步骤二,对于DSSW中的任务以调度紧迫度进行非降序排序;对于RIBW中的任务根据任务的最早开始时间进行非降序排序;步骤三,为DSSW分配或创建一个令任务处理成本最小化的实例,为RIBW计算所有容器执行的成本,以最小的成本和空闲时间为任务选择一个合适的容器实例;步骤四,在任务执行完成后及时更新就绪队列中任务的状态,当任务池中任务就绪后添加到就绪队列中,对就绪队列中的任务再次执行步骤S103,直至任务池和就绪队列为空;步骤五,确定容器到VM的映射关系,将需要创建的新容器部署到虚拟机上。3.如权利要求2所述基于容器云平台的微服务工作流弹性调度方法,其特征在于,所述对DSSW工作流和RIBW工作流任务池中的任务进行排序包括:对于DSSW工作流:根据任务池中当前任务到退出任务的关键路径上未分配任务的数量和所述任务预期完成时间计算任务池中每个就绪任务的调度紧迫度,根据所述调度紧迫度进行任务的排序;对于RIBW工作流:根据任务池中当前任务的最早开始时间进行排序。4.如权利要求2所述基于容器云平台的微服务工作流弹性调度方法,其特征在于,所述为DSSW分配或创建一个令任务处理成本最小化的实例,为RIBW计算所有容器执行的成本,以最小的成本和空闲时间为任务选择一个合适的容器实例包括:对DSSW:按以下三种策略对服务实例进行选择。1)在空闲的容器集合中如果存在能够按时完成任务的实例,则选择成本最低的实例。2)如果需要一个新实例,计算满足需求的新容器实例的最小速度minSpeed,此时比较minSpeed是否大于最高排名VM的速度或为负,若是,则将任务分配到现有或创建一个具有最高配置的实例,将任务分配给具有较小的最早结束时间EFT的实例。若否,则创建一个速度比minSpeed稍大的实例,通常实例的配置为离散单位的整数倍,如CPU为500m,内存为512Mi,并将任务分配到该实例。3)如果在某个虚拟机中创建新实例需要镜像,则首先拉取镜像并启动容器执行任务;对RIBW:计算VM上每个运行的容器上执行任务的成本...
【专利技术属性】
技术研发人员:王建东,李泽玉,李光夏,李云豆,张志为,严煜昆,刘磊,李烨城,彭勇毅,宋子健,
申请(专利权)人:西安电子科技大学青岛计算技术研究院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。