CN111897629A - 一种基于强化学习的智能化虚拟机整合系统 - Google Patents
一种基于强化学习的智能化虚拟机整合系统 Download PDFInfo
- Publication number
- CN111897629A CN111897629A CN202010828429.5A CN202010828429A CN111897629A CN 111897629 A CN111897629 A CN 111897629A CN 202010828429 A CN202010828429 A CN 202010828429A CN 111897629 A CN111897629 A CN 111897629A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- algorithm
- module
- intelligent
- agent
- 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.)
- Granted
Links
- 230000010354 integration Effects 0.000 title claims abstract description 22
- 230000002787 reinforcement Effects 0.000 title claims abstract description 22
- 230000006870 function Effects 0.000 claims abstract description 13
- 238000013480 data collection Methods 0.000 claims abstract description 9
- 230000002085 persistent effect Effects 0.000 claims abstract description 7
- 238000001514 detection method Methods 0.000 claims description 34
- 238000013508 migration Methods 0.000 claims description 12
- 230000005012 migration Effects 0.000 claims description 12
- 230000009471 action Effects 0.000 claims description 10
- 230000007704 transition Effects 0.000 claims description 4
- 238000004140 cleaning Methods 0.000 claims description 3
- 238000000034 method Methods 0.000 abstract description 12
- 238000013461 design Methods 0.000 abstract description 6
- 238000012986 modification Methods 0.000 abstract description 6
- 230000004048 modification Effects 0.000 abstract description 6
- 230000008569 process Effects 0.000 abstract description 5
- 230000000694 effects Effects 0.000 abstract description 2
- 230000006399 behavior Effects 0.000 description 6
- YHXISWVBGDMDLQ-UHFFFAOYSA-N moclobemide Chemical compound C1=CC(Cl)=CC=C1C(=O)NCCN1CCOCC1 YHXISWVBGDMDLQ-UHFFFAOYSA-N 0.000 description 6
- 238000010586 diagram Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 2
- 230000004622 sleep time Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种基于强化学习的智能化虚拟机整合系统,涉及虚拟机整合技术领域,针对现有技术中缺少通用的动态虚拟机资源调度平台,以应对具有不同实时特征的物理机集群的问题,包括本地管理模块、全局管理模块、中心数据库和数据收集模块;还包括智能调度模块和框架管理模块,本发明为I‑NEAT框架设计了服务管理功能,用户可以在控制节点上直接对所有计算节点中运行的I‑NEAT服务进行控制;本发明为系统实现了实时的配置项管理功能,用户不仅可以将配置项持久化存储在中心数据库中,还可以在系统运行过程中根据系统状态对配置项进行实时修改,这些修改在下一轮迭代中就会生效。
Description
技术领域
本发明涉及虚拟机整合技术领域,具体为一种基于强化学习的智能化虚拟机整合系统。
背景技术
随着虚拟化技术与云计算技术的飞速发展,云计算数据中心已经从根本上改变了IT设施满足消费者IT需求的方式,然而其能源开销逐渐成为了一个令人担忧的问题。可以有效解决这个严峻问题的方法之一是虚拟机整合技术,其核心思想是将云数据中心中的虚拟机放置在尽可能少的物理节点上,同时,将没有虚拟机运行的物理节点切换至低功耗模式,从而减少云数据中心能源开销。最通用的策略是将虚拟机整合过程分解成四个子问题:(1)判断物理机是否欠载;(2)判断物理机是否过载;(3)选择要迁移的虚拟机;(4)放置要迁移的虚拟机。
虽然已经有大量的研究分别针对这四个子问题,但不同的算法或模型适用于不同的领域,有些适用于CPU密集型工作负载的应用,有些的适用于网络应用,有些适用于视频流应用等等。不同的模型在面对具有不同特征的资源用量时,它们的性能表现差异很大。这些问题说明了根据以往的研究工作都无法实现一个通用的动态虚拟机资源调度平台,以应对具有不同实时特征的物理机集群。
发明内容
本发明的目的是:针对现有技术中缺少通用的动态虚拟机资源调度平台,以应对具有不同实时特征的物理机集群的问题,提出一种基于强化学习的智能化虚拟机整合系统。
本发明为了解决上述技术问题采取的技术方案是:
一种基于强化学习的智能化虚拟机整合系统,包括本地管理模块、全局管理模块、中心数据库和数据收集模块;
所述本地管理模块用于检测计算节点的资源用量情况,然后利用负载检测算法判断计算节点的负载状态,并向全局管理模块发送欠载或过载请求,并为过载的计算节点进行迁移虚拟机的选择;
所述全局管理模块用于接收本地管理模块的欠载与过载请求,并产生迁移虚拟机放置策略,根据放置策略进行虚拟机的迁移,并向中心数据库提交迁移记录;
所述数据收集模块用于周期性地收集并记录计算节点的资源用量情况,同时将资源用量情况提交至中心数据库;
所述中心数据库用于存储迁移记录及资源用量情况;
还包括智能调度模块和框架管理模块,所述智能调度模块用于为本地管理模块选择合适的负载检测算法;
所述框架管理模块包括算法库管理单元、服务管理单元与配置项管理单元,
所述算法库管理单元用于自定义虚拟机整合算法并将其应用到系统中,
所述服务管理单元用于启动、停止系统中的服务,及查看服务的当前运行状态,
所述配置项管理单元用于初始化、持久化、更新系统运行时各模块所需的配置项。
进一步的,所述智能调度模块包括一个智能体与一个MDP模型,所述智能体根据上一次行为a、该行为产生的状态转移s→s’与从环境中获得的奖赏r来更新选择策略π,然后根据当前环境状态s’与选择策略π进行当前的负载检测算法的选择。
进一步的,所述智能体包括QLearning智能体、Sarsa智能体和DQN智能体,
当智能调度模块为有限状态空间时,使用离线策略的QLearning智能体或在线策略的Sarsa智能体作为智能体,
当智能调度模块为无限状态空间时,使用DQN智能体作为可用智能体。
进一步的,所述奖赏r的奖赏函数R表示为:
其中,u是执行一个行为且等待一个周期后CPU资源用量百分比的数值部分,O是判断主机过载的阈值,同样是百分比的数值部分。
进一步的,所述框架管理模块基于Linux系统的命令行工具。
进一步的,所述算法库管理单元包括欠载检测算法库、过载检测算法库、虚拟机选择算法库与虚拟机放置算法库。
进一步的,所述算法库管理单元针对算法库中的每个算法能进行上传自定义算法、删除算法、更新算法、查看算法信息、下载算法源码和下载算法模板操作。
进一步的,所述系统中的服务包括本地管理、全局管理、数据收集与数据清理。
进一步的,所述配置项管理单元通过数据库进行添加配置项、删除配置项、修改配置项、上传配置文件、查看配置项和下载配置文件。
本发明的有益效果是:
本发明提供了一种通用的动态虚拟机资源调度平台,以应对具有不同实时特征的物理机集群,本发明设计并实现了一个使用强化学习方法的智能调度模块,该模块通过持续进行无监督的在线学习,可以从在负载状态检测算法库中自适应地选择适合当前云数据中心物理机实时状态的负载检测算法,让每一个计算节点的CPU资源用量百分比在不超过过载阈值的情况下尽可能接近阈值,提高了数据中心能源利用率的同时降低了SLA冲突,并在数据中心应用负载特征产生明显变化时能及时自我调整调度策略,迅速适应新的计算节点实时特征;
本发明为虚拟机整合子问题设计了算法库与开放模板,并对每个子问题都为用户提供了更多的算法选择,通过框架管理模块增强了系统的可扩展性与可用性、方便了用户对算法库的管理;
本发明为I-NEAT框架设计了服务管理功能,用户可以在控制节点上直接对所有计算节点中运行的I-NEAT服务进行控制;
本发明为系统实现了实时的配置项管理功能,用户不仅可以将配置项持久化存储在中心数据库中,还可以在系统运行过程中根据系统状态对配置项进行实时修改,这些修改在下一轮迭代中就会生效。
附图说明
图1为本发明的框图;
图2为OpenStack NEAT框架的体系结构图;
图3为本发明的I-NEAT框架的体系结构图;
图4为本发明中不使用强化学习的智能调度模块工作流程图;
图5为本发明中使用强化学习的智能调度模块工作流程图。
具体实施方式
具体实施方式一:参照图1具体说明本实施方式,OpenStack NEAT是一个面向OpenStack的成熟且相对完善的动态虚拟机资源调度框架。该框架由三个组件和数据存储组成,如图1所示。其中主机欠载与过载检测预测了短期未来内的主机负载状态;如果主机被检测为过载,则会调用虚拟机选择算法选择迁移哪些虚拟机;而虚拟机放置算法则会为这些需要迁移的虚拟机选择新的主机位置。
Local manager部署在每一个计算节点上,负责执行一个周期任务。在每次周期任务开始时,管理器首先从local storage读取宿主机与虚拟机的历史资源用量数据,然后利用这些数据进行本地决策,包括判断主机是否欠载或过载与过载时选择哪些虚拟机进行迁移。Data collector会周期性地收集与更新宿主机与虚拟机的相关资源用量数据,同时它还会向中心数据库提交一份这些数据的拷贝。Global manager部署在每个控制节点上,负责处理虚拟机放置问题并初始化虚拟机的迁移工作。它会向所有控制节点暴露一个RESTful设计风格的API来接收控制节点的欠载或过载请求。
本发明所实现的I-NEAT框架是基于已有的OpenStack NEAT框架的优化版本。OpenStack NEAT框架如图2所示,基于已有的系统结构,I-NEAT框架又额外增加了两个的模块,分别用于支持智能的负载检测算法选择与框架管理功能,如附图3所示。这两个新增模块的功能如图1所示:
1.智能调度模块:作为本地管理模块的辅助模块,被部署在每一个计算节点上,它为本地管理模块执行的每一轮迭代提供了欠载检测算法与过载检测算法的函数与相应的参数。
2.框架管理模块:作为一个命令行工具被部署在控制节点上,它提供了管理框架的解决方案,包括三方面的管理:算法库管理、服务管理与配置管理。
强化学习[24]是一种无监督的机器学习范式。在强化学习中,一个智能体通过理解周围不断变化的环境从而做出最佳决策。强化学习通常被建模为马尔可夫决策过程(MDP)。MDP假设下一个决策或行为的产生只需要参考系统当前状态,而从环境获得的“状态-行为”对奖赏值则带有系统的相关历史信息。智能体会尝试确定一个策略或决策时序来最大化累计奖赏值。
智能调度模块的目的是根据计算节点的实时特征为本地管理模块选择合适的负载检测算法。智能调度模块的模型由一个智能体与一个MDP模型组成,图1描述了智能调度模块的算法原理。智能体首先会根据上一次行为a、该行为产生的状态转移s→s’与从环境中获得的奖赏r来更新选择策略π,然后根据当前环境状态s’与选择策略π进行当前的负载检测算法的选择。
首先讨论智能调度模块的状态空间S。该模块被部署在每一个计算节点上,每一个计算节点在不同时间内都有不同的实时特征,所有的实时特征组成了整个状态空间S。本发明考虑两个影响负载检测算法选择的主要因素:
主机上活跃虚拟机的数量。对于朴素贝叶斯与决策树等决策产生类算法,具有不同虚拟机数量的计算节点负载状态可能相同,但当虚拟机资源用量由于服务请求变化而变化时,虚拟机的数量更多的计算节点更容易变为过载状态,因此主机上活跃虚拟机的数量对计算节点下一个负载状态有很大的影响;
主机在一段历史时间内的资源用量。由于计算节点上虚拟机中运行的服务类型与用途不同,因此计算节点CPU资源用量的数值与持续时间是无法通过建模或拟合来进行分析的。另外,不同的状态决策算法适合具有不同特征的CPU用量情况,比如ARIMA模型适用于具有很强季节性与趋势的CPU用量时序,朴素贝叶斯与三阶马尔可夫方法由于其模型假设而适用于相关性较弱的CPU用量时序,线性方法适用于存在突发情况的CPU用量情况。因此,计算节点的历史资源用量也可以指导负载检测算法的选择。
根据上述的分析,状态空间S中的每一个状态都是计算节点上虚拟机数量与一段时间内主机CPU资源用量时序的组合,因此状态空间是主机上可能的虚拟机数量集合与任一实例I中计算节点一段时间内的工作负载,在某一确定实例中,I是具有k个元素的数组,表示计算节点的最近k个CPU资源用量数据。值得注意的是,I的每一个元素值都是连续且随机的,因此状态空间S是无限的,而状态转移函数T也是不确定的。行为空间A对应算法库中主机状态决策算法的集合,每一个主机状态决策算法与指定的算法参数的组合是一个行为,智能体在使用一个主机状态决策算法且等待一个周期后,会根据下一个状态s获得相应的奖赏r。为了提升能源效率,本发明期望任何活跃计算节点的CPU用量都低于过载阈值,且尽可能接近过载阈值。因此,奖赏函数R的定义如下:
其中,u是执行一个行为且等待一个周期后CPU资源用量百分比的数值部分,O是判断主机过载的阈值,同样是百分比的数值部分。主机下一个周期时的CPU资源用量越接近过载阈值,智能体所获得的奖赏越高;当CPU资源用量超过过载阈值时,智能体会获得一个负的奖赏,即惩罚。智能体从这些奖赏与惩罚中学习在同样的状态时要避免惩罚而争取奖赏。
框架管理模块的目的是帮助使用者更方便地操作I-NEAT框架,主要包括三方面的管理:算法库管理、服务管理与配置项管理。为进一步方便用户操作,本发明将框架管理模块设计为Linux系统的命令行工具。
算法库管理增强了框架的可扩展性,可扩展性是指用户实现自定义虚拟机整合算法并将其应用到框架中,且不进行过多源码修改的能力。I-NEAT框架设计了四个算法库:欠载检测算法库、过载检测算法库、虚拟机选择算法库与虚拟机放置算法库,并为算法库设计了开放模板。针对每一个算法库,本发明都实现了六个功能:
上传自定义算法:用户可以将自定义的算法文件上传到I-NEAT框架指定的算法库下,同时数据库会将算法的工厂模式名与算法名存储到中心数据库;
删除算法:用户可以删除某一个算法库中的算法,执行算法删除操作后,该子模块会删除中心数据库中的记录与算法库中的算法文件;
更新算法:用户可以用新的算法文件替换已有的算法文件来更新已有的算法,同时中心数据库中的算法信息也会进行更新;
查看算法信息:用户可以查看指定算法的信息,包括工厂模式名、算法名、算法参数等;
下载算法源码:用户可以将算法库中的算法文件下载至指定文件路径下,若不指定下载路径则会下载到当前文件路径下;
下载算法模板:算法库管理子模块会为每一个子问题对应的算法设计一个模板,以便用户实现自定义算法,用户可以将模板下载到指定文件路径下,若不指定下载路径则则会下载到当前文件路径下。
服务管理用于启动、停止I-NEAT框架中的服务,或查看这些服务的当前运行状态。框架中共有四项服务:本地管理、全局管理、数据收集与数据清理。若对本地管理或数据收集服务进行操作,可指定启动、停止或查看哪些计算节点上的该服务。
配置项管理负责初始化、持久化、更新系统运行时各模块所需的配置项。该管理通过使用数据库实现了六个功能:
添加配置项:向持久化配置项存储中添加新的配置项键值对;
删除配置项:从持久化配置项存储中删除一项配置项键值对;
修改配置项:修改指定配置项的值,可以在系统运行中进行修改,系统运行状态会随着配置项的实时修改而改变;
上传配置文件:使用配置文件刷新数据库中的配置项记录;
查看配置项:查看配置项指定键的值,也可以查看所有配置项的键值对;
下载配置文件:为配置项生成配置文件并下载至指定文件目录下,若不指定下载目录则会保存到当前文件夹下。
实施方案1
见图3与图4,本实例不使用强化学习方法进行负载检测算法的智能调度,在本地管理模块进行初始化时用配置文件中的静态负载检测算法初始化智能调度器,在每一次迭代中,本地管理模块首先从本地数据模块中获取计算节点hypervisor与所有其上运行虚拟机的历史CPU资源用量与RAM用量数据,接下来直接从智能调度器中获取欠载与过载检测算法,并使用这两个算法进行计算节点的负载状态检测。若检测主机既不欠载也不过载,则本地管理模块进入休眠状态等待下一轮执行;若检测主机欠载,则向控制节点发送欠载请求;若检测主机过载,则调用虚拟机选择算法选择需要迁移的虚拟机,并向控制节点发送过载请求。
实施方案2
见图3与图5,本实例使用强化学习方法进行负载检测算法的智能调度,在本地管理模块进行初始化时会同时利用智能调度模块根据配置文件创建一个智能调度器实例,在每一次迭代中,本地管理模块首先从本地数据模块中获取计算节点hypervisor与所有其上运行虚拟机的历史CPU资源用量与RAM用量数据,接下来向只能调度器申请欠载与过载检测算法。在申请时,本地管理模块会将当前计算节点的实时特征作为参数传递给智能调度模块,实时特征包括计算节点上当前的虚拟机数量与当前的CPU与RAM资源用量情况。智能调度模块首先将计算节点的实时特征解析为当前环境状态s’与上一步操作的奖赏值r,接下来智能体根据上一轮迭代的状态s与行为a、当前的环境状态s’以及奖赏值r进行在线学习,并选择当前的行为a’,接下来智能调度器用当前的状态s’与行为a’更新s与a的值,最后将行为a’解析为欠载与过载检测算法,将它们作为返回值传递给本地管理模块。
本地管理模块会根据智能调度模块返回的欠载与过载检测算法进行计算节点负载状态的检测,若检测主机既不欠载也不过载,则本地管理模块进入休眠状态等待下一轮执行;若检测主机欠载,则向控制节点发送欠载请求;若检测主机过载,则调用虚拟机选择算法选择需要迁移的虚拟机,并向控制节点发送过载请求。
实施方案3
本实例使用框架管理模块添加过载检测算法ARIMA,I-NEAT框架在子问题的解决方案上继承了NEAT框架的工厂模式,其工厂名为arima_factory,算法实例为arima。通过在控制节点终端中执行’neat overload add arima_factory arima’命令进行该算法的添加。框架管理模块首先判断数据库中是否已经存在该工厂,若不存在则直接将工厂相关信息记录在数据库中,然后尝试将工厂代码文件添加到过载检测算法库中,若添加成功则返回成果信息,否则从数据库中移除刚添加的工厂记录并返回失败信息。
实施方案4
本实例使用框架管理模块启动多个计算节点上的local-manager服务。通过在控制节点控制台中执行’neat local-manger start compute1 compute3 192.168.1.113’命令可以启动compute1、compute3与ip地址为192.168.1.113这三个计算节点上的local-manager服务。框架管理模块首先解析’start’后面的主机参数,然后依次启动这些主机上的local-manger服务,对于每一个计算节点,若启动成功则显示成功信息,否则显示失败信息。
实施方案5
本实例使用框架管理模块在I-NEAT框架运行中修改本地管理模块的休眠时间。在框架运行过程中发现虚拟机迁移频率过高,在控制节点控制台执行’neat config updatelocal_manager_interval=600’命令将所有计算节点上本地管理模块的休眠时间延长到600s。框架管理模块首先解析’update’后的键值对参数,解析结果是键为local_manager_interval、值为600,接下来判断数据库中是否有该键的配置项,若有则更新它的值,否则返回键不存在的错误信息。再本地控制模块下一轮执行中,它会从数据库获取到更新后的配置项local_manager_interval=600。
需要注意的是,具体实施方式仅仅是对本发明技术方案的解释和说明,不能以此限定权利保护范围。凡根据本发明权利要求书和说明书所做的仅仅是局部改变的,仍应落入本发明的保护范围内。
Claims (9)
1.一种基于强化学习的智能化虚拟机整合系统,包括本地管理模块、全局管理模块、中心数据库和数据收集模块;
所述本地管理模块用于检测计算节点的资源用量情况,然后利用负载检测算法判断计算节点的负载状态,并向全局管理模块发送欠载或过载请求,并为过载的计算节点进行迁移虚拟机的选择;
所述全局管理模块用于接收本地管理模块的欠载与过载请求,并产生迁移虚拟机放置策略,根据放置策略进行虚拟机的迁移,并向中心数据库提交迁移记录;
所述数据收集模块用于周期性地收集并记录计算节点的资源用量情况,同时将资源用量情况提交至中心数据库;
所述中心数据库用于存储迁移记录及资源用量情况;
其特征在于还包括智能调度模块和框架管理模块,所述智能调度模块用于为本地管理模块选择合适的负载检测算法;
所述框架管理模块包括算法库管理单元、服务管理单元与配置项管理单元,
所述算法库管理单元用于自定义虚拟机整合算法并将其应用到系统中,
所述服务管理单元用于启动、停止系统中的服务,及查看服务的当前运行状态,
所述配置项管理单元用于初始化、持久化、更新系统运行时各模块所需的配置项。
2.根据权利要求1所述的一种基于强化学习的智能化虚拟机整合系统,其特征在于所述智能调度模块包括一个智能体与一个MDP模型,所述智能体根据上一次行为a、该行为产生的状态转移s→s’与从环境中获得的奖赏r来更新选择策略π,然后根据当前环境状态s’与选择策略π进行当前的负载检测算法的选择。
3.根据权利要求2所述的一种基于强化学习的智能化虚拟机整合系统,其特征在于所述智能体包括QLearning智能体、Sarsa智能体和DQN智能体,
当智能调度模块为有限状态空间时,使用离线策略的QLearning智能体或在线策略的Sarsa智能体作为智能体,
当智能调度模块为无限状态空间时,使用DQN智能体作为可用智能体。
5.根据权利要求1所述的一种基于强化学习的智能化虚拟机整合系统,其特征在于所述框架管理模块基于Linux系统的命令行工具。
6.根据权利要求1所述的一种基于强化学习的智能化虚拟机整合系统,其特征在于所述算法库管理单元包括欠载检测算法库、过载检测算法库、虚拟机选择算法库与虚拟机放置算法库。
7.根据权利要求6所述的一种基于强化学习的智能化虚拟机整合系统,其特征在于所述算法库管理单元针对算法库中的每个算法能进行上传自定义算法、删除算法、更新算法、查看算法信息、下载算法源码和下载算法模板操作。
8.根据权利要求1所述的一种基于强化学习的智能化虚拟机整合系统,其特征在于所述系统中的服务包括本地管理、全局管理、数据收集与数据清理。
9.根据权利要求1所述的一种基于强化学习的智能化虚拟机整合系统,其特征在于所述配置项管理单元通过数据库进行添加配置项、删除配置项、修改配置项、上传配置文件、查看配置项和下载配置文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010828429.5A CN111897629B (zh) | 2020-08-17 | 2020-08-17 | 一种基于强化学习的智能化虚拟机整合系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010828429.5A CN111897629B (zh) | 2020-08-17 | 2020-08-17 | 一种基于强化学习的智能化虚拟机整合系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111897629A true CN111897629A (zh) | 2020-11-06 |
CN111897629B CN111897629B (zh) | 2024-05-03 |
Family
ID=73230170
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010828429.5A Active CN111897629B (zh) | 2020-08-17 | 2020-08-17 | 一种基于强化学习的智能化虚拟机整合系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111897629B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200065704A1 (en) * | 2018-08-27 | 2020-02-27 | Vmware, Inc. | Simulator-training for automated reinforcement-learning-based application-managers |
CN111290831A (zh) * | 2020-01-18 | 2020-06-16 | 重庆邮电大学 | 一种云计算基于强化学习的虚拟机迁移方法 |
-
2020
- 2020-08-17 CN CN202010828429.5A patent/CN111897629B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200065704A1 (en) * | 2018-08-27 | 2020-02-27 | Vmware, Inc. | Simulator-training for automated reinforcement-learning-based application-managers |
CN111290831A (zh) * | 2020-01-18 | 2020-06-16 | 重庆邮电大学 | 一种云计算基于强化学习的虚拟机迁移方法 |
Non-Patent Citations (1)
Title |
---|
张晓兵;朱仲马;: "基于虚拟机迁移的云计算资源动态调度策略", 软件导刊, no. 11, 15 November 2018 (2018-11-15) * |
Also Published As
Publication number | Publication date |
---|---|
CN111897629B (zh) | 2024-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11392843B2 (en) | Utilizing a machine learning model to predict a quantity of cloud resources to allocate to a customer | |
Hernández et al. | Using machine learning to optimize parallelism in big data applications | |
Ahmad et al. | A survey on virtual machine migration and server consolidation frameworks for cloud data centers | |
US10970649B2 (en) | Automated reinforcement-learning-based application manager that uses local agents | |
US11137926B1 (en) | Systems and methods for automatic storage tiering | |
Li | An adaptive overload threshold selection process using Markov decision processes of virtual machine in cloud data center | |
US10983873B1 (en) | Prioritizing electronic backup | |
Bermbach et al. | On the future of cloud engineering | |
Costa et al. | Towards automating the configuration of a distributed storage system | |
CN116368458A (zh) | 数据路径虚拟化 | |
CN111782147A (zh) | 用于集群扩缩容的方法和装置 | |
CN100462956C (zh) | 用于在计算系统上加载程序的方法和系统 | |
Rolik et al. | Dynamie management of data center resources using reinforcement learning | |
Gadiraju et al. | Recovery in the mobile wireless environment using mobile agents | |
Cunha et al. | Context-aware execution migration tool for data science Jupyter Notebooks on hybrid clouds | |
Funika et al. | Automated cloud resources provisioning with the use of the proximal policy optimization | |
Naranjo et al. | A serverless gateway for event‐driven machine learning inference in multiple clouds | |
Wu et al. | Heterogeneous virtual machine consolidation using an improved grouping genetic algorithm | |
KR20220158547A (ko) | 컨테이너 기반 클라우드 환경에서의 gpu 자원 회수 장치 및 방법 | |
CN111897629B (zh) | 一种基于强化学习的智能化虚拟机整合系统 | |
Liu et al. | I-Neat: An intelligent framework for adaptive virtual machine consolidation | |
Delande et al. | Horizontal scaling in cloud using contextual bandits | |
CN116795524A (zh) | 任务处理方法、装置、计算机设备、存储介质及程序产品 | |
Funika et al. | Automatic management of cloud applications with use of proximal policy optimization | |
US9417928B2 (en) | Energy efficient supercomputer job allocation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |