法律状态公告日
法律状态信息
法律状态
2023-08-25
实质审查的生效 IPC(主分类):G06F 9/48 专利申请号:2023104682920 申请日:20230427
实质审查的生效
2023-08-08
公开
发明专利申请公布
技术领域
本发明主要涉及到云计算领域,特别是涉及到一种异构云环境下基于容器的微服务工作流安全调度方法。
背景技术
近年来,云计算技术的发展,在医疗卫生、远程办公、在线教育等领域得到了广泛应用和重视,同时也为各行各业提供了更高效、灵活、安全和可靠的计算服务和支持。为了满足不同业务的需求,人们对虚拟资源的异构性要求越来越高,异构云包含来自不同供应商的不同级别的组件,可以很好的提供异构云资源。随着互联网产业的快速发展,越来越多企业的业务已经变得庞大而复杂,微服务架构松散耦合的特性使得其被广泛的应用于软件设计中,包括云中的科学工作流处理。随着容器技术的发展,其快速启动和低开销也让它成为微服务的首选部署技术。
为了实现异构云环境下对微服务工作流的安全高效调度,利用容器技术来封装微服务任务,并把容器部署在虚拟机上实例化运行。针对微服务中的数据安全问题,为每一个任务设置了一个安全级别,对应的云资源池中也包含不同安全级的异构云资源,需要将任务调度到安全级更高的虚拟机上才能确保任务的敏感数据不被泄露。系统通过对微服务工作流进行合理地调度以提高调度的安全性和性能。
综上所述,对于云端用户提交的新型微服务工作流,在满足预算有限和低延迟需求的条件下,为了确保数据的安全以及提高云资源的利用率,需要通过容器技术来封装微服务任务并将其放置在安全级高于自身的虚拟机上运行。针对异构云环境下微服务工作流的安全调度问题,调度器采用合理的调度决策方案,使异构云环境中计算资源的利用率提高,从而使调度的完成时间最小化。
发明内容
本发明提出了一种异构云环境下基于容器的微服务工作流安全调度方法,主要应用于云计算方面,主要优点是在使异构云环境下可保护用户隐私的微服务工作流调度决策方案最优化,从而能够在防止用户隐私数据泄露的同时,最小化异构云环境下微服务工作流调度的完成时间。本发明的方案具体如下:
1.调度器可以通过一种基于深度强化学习的安全调度算法来得到调度分配方案:
步骤1、基于微服务的应用程序建模为有向无环图(DAG)G=(T,E),任务的集合用T={ 步骤2、为调度任务构建异构云资源池,资源池中存在3种不同类型的云资源,分别是公共云资源V 步骤3、采用一种基于深度强化学习的安全调度算法求解步骤2中的微服务工作流安全调度问题,依次对工作流中的每一个任务t 2.进一步,在微服务任务分配容器的基础上,调度器考虑异构云服务器资源限制、用户的预算限制和微服务任务的安全性需求,采用基于深度强化学习的安全调度算法将封装微服务任务的容器调度到符合算法决策的虚拟机上执行。 3.进一步,调度器按照满足工作流偏序关系的顺序依次对任务t 4.进一步,该安全调度算法至少包括如下步骤: 1)将安全调度问题转化为马尔可夫决策过程η=(S,A,P,R,γ),其中S代表所有的状态集合,包含了各个阶段各个虚拟机的使用时间、分配的任务列表和剩余的资源量,A表示所有的动作集合,这里把动作空间看成是当前可调度的任务集与可分配的虚拟机之间的映射关系,P表示状态转移矩阵,R表示奖励函数, 2)计算出口任务t 3)初始化可容纳N条数据的经验池D,最小批量数k,步长σ,利用随机权值θ来初始化动作价值函数Q,令θ 4)把优先顺序复制到S 5)从S 6)按照策略 7)执行动作a 8)从经验池中随机选取k个样本,根据 9)定期的将目标网络 10)重复执行步骤5)到9),直到S 11)重复执行M次步骤4)到10),经过M次调度过程的训练,Agent可以找到每个状态下的最优策略; 12)按照优先调度顺序依次对任务进行调度,利用训练好的Agent去贪婪的选择最优的动作,将封装任务的容器调度到对应的虚拟机上执行,得到最终的决策遍历集合X={x 与现有技术相比,本方法的优点在于: 提出了异构云环境下基于容器的微服务工作流安全调度方法,适用于不同规模的异构云资源,在异构云服务器资源、用户的预算和微服务任务的安全性需求限制下,考虑使异构云中微服务工作流调度方案最优化,把任务调度到最合适的虚拟机上,从而能够在保护用户隐私的前提下最小化异构云环境下微服务工作流调度的完成时间。 附图说明 图1是本发明的流程框图; 图2是本发明的微服务工作流调度的流程图; 具体实施方式 下面对本发明作进一步的详细描述。 假设以5G背景下的Uber打车微服务工作流应用为例。 步骤一、接收到用户提交的Uber打车微服务应用程序,对微服务工作流和容器集群进行建模,并为每一个微服务任务分配容器,根据微服务任务的资源需求来配置容器; 步骤二、设置异构云资源池,构建微服务任务的安全调度问题; 步骤三、采用一种基于深度强化学习的安全调度算法求解步骤2中的微服务工作流安全调度问题,依次对工作流中的每一个任务t a)将安全调度问题转化为马尔可夫决策过程η=(S,A,P,R,γ),S代表所有的状态集合,状态空间包含了各个阶段各个虚拟机的使用情况,具体包括各个虚拟机的使用时间,用于评估奖励值和调度工作流的完成时间,当前状态下各个虚拟机分配的任务列表,用于下一阶段选择虚拟机时考虑任务之间的传输时间,各个虚拟机在不同时间段的剩余资源量(cpu、ram、storage),用于下一阶段选取虚拟机时考虑任务的资源需求和任务的完成时间,A表示所有的动作集合,把动作空间看成是当前可调度的任务集与可分配的处理器之间的映射关系,在状态s b)计算出口任务t c)初始化可容纳N条数据的经验池D,最小批量数k,步长σ,利用随机权值θ来初始化动作价值函数Q,令θ d)把优先顺序复制到S e)从S f)按照策略 g)执行动作a h)从经验池中随机选取K个样本,根据 i)定期的将目标网络的权值替换为Q网络的权值; j)重复执行步骤e)到i),直到S k)重复执行M次步骤d)到j),经过M次调度过程的训练,Agent可以找到每个状态下的最优策略; l)按照优先调度顺序依次对任务进行调度,利用训练好的Agent去贪婪的选择最优的动作,获得调度过程的最大奖励值,并将封装任务的容器调度到对应的虚拟机上执行,得到最终的决策遍历集合X={x
机译: 云环境下基于HADOOP分布式文件系统的HDFS DOCKER容器安全日志分析方法及系统
机译: 云环境下基于HDFS的DOCKER容器安全日志分析方法及系统
机译: 云环境下基于容器的移动代码卸载支持系统及其卸载方法