CN108073457A - 一种超融合基础架构的分层资源管理方法、装置及系统 - Google Patents
一种超融合基础架构的分层资源管理方法、装置及系统 Download PDFInfo
- Publication number
- CN108073457A CN108073457A CN201711472551.8A CN201711472551A CN108073457A CN 108073457 A CN108073457 A CN 108073457A CN 201711472551 A CN201711472551 A CN 201711472551A CN 108073457 A CN108073457 A CN 108073457A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- machine image
- rate curve
- resource
- miss rate
- 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
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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- 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/45587—Isolation or security of virtual machine instances
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
本发明公开了一种超融合基础架构的分层资源管理方法、装置、系统及计算机可读存储介质。本发明通过实时获取超融合基础架构中每一个虚拟机镜像的输入输出数据,然后根据所述输入输出数据分别计算各虚拟机镜像的未命中率曲线,所述未命中率曲线能够表征所述虚拟机镜像对所述分层资源的使用效率;再根据实时生成的目标函数以及每个虚拟机镜像的未命中率曲线生成合适的资源分配比例;最后根据所述资源分配比例对各虚拟机镜像进行资源管理,进而能够智能地为不同虚拟机镜像分配合适的分层资源,达到资源隔离和最大化存储性能的目的,能够在不显著增加内存、计算开销的条件下,提高存储性能和服务质量。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种超融合基础架构的分层资源管理方法、装置、系统及计算机可读存储介质。
背景技术
超融合基础架构是一种将计算、网络和存储等资源作为基础设施进行整合,可以根据具体业务系统需求进行选择组合和自定义,方便快捷地进行数据中心搭建和业务系统部署的一种技术架构。具体实现方式上一般是在单元节点(x86服务器)中融入软件虚拟化技术(包括计算、网络、存储、安全等虚拟化),而每一个单元节点可以通过网络聚合起来,实现模块化的无缝横向扩展(scale-out),构建统的资源池。
在超融合基础架构中,优选使用分层存储的方式,分层存储为一种固态盘和机械盘的混合存储架构,固态盘作为性能层,机械盘作为容量层,应用频繁访问的数据放在快速的固态盘,较少访问的数据放在慢速的机械盘。固态盘的吞吐率和延迟比机械盘具有巨大的优势,同时单位容量价格也比机械盘贵10倍。因此,融合固态盘和机械盘的分层存储架构非常流行。分层存储架构使用固态盘作为性能层,机械盘作为容量层,通过算法识别热数据并存储在固态盘,将冷数据存储在机械盘,最终在价格和性能之间取得平衡
在超融合基础架构中,分层资源属于关键的共享资源,运行不同业务的虚拟机以共享的方式使用分层资源。传统的分层资源管理机制可以分为自由竞争和静态划分两种。自由竞争指的是各个虚拟机之间自由争抢缓存资源,典型的例子是运行全局最久未被访问算法(LRU)或自适应替换算法(ARC)等,由于每个虚拟机的分层资源都不稳定,虚拟机的性能常常剧烈抖动,用户体验不佳;静态划分是指为每个虚拟机预先分配固定数量的分层资源,由于资源是独占,每个虚拟机的性能都很稳定,但由于资源无法在虚拟机之间动态调度,空闲或分层不友好的虚拟机可能占据大量分层资源,导致全局资源利用率很低。
发明内容
本发明提出一种超融合基础架构的分层资源管理方法、装置、系统及计算机可读存储介质,旨在解决现有超融合基础架构存在的性能抖动和的资源利用率低的问题,以提高超融合基础架构的分层存储的服务质量。
为实现上述目的,本发明提供一种超融合基础架构的分层资源管理方法,所述方法包括以下步骤:
实时获取超融合基础架构中各虚拟机镜像的输入输出数据,所述输入输出数据为各虚拟机镜像的已分配分层资源;
根据所述输入输出数据分别计算各虚拟机镜像的未命中率曲线,所述未命中率曲线表征为所述虚拟机镜像对所述分层资源的使用效率;
根据目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例;
根据所述资源分配比例对各虚拟机镜像进行资源管理。
优选地,所述输入输出数据包括输入输出数据流、数据并发程度和数据延迟信息;
相应地,所述根据所述输入输出数据分别计算各虚拟机镜像的未命中率曲线,具体包括;
根据所述输入输出数据流分别计算各虚拟机镜像的未命中率曲线;
相应地,所述根据目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例之前,所述方法还包括:
根据所述数据并发程度和所述数据延迟信息生成目标函数。
优选地,所述根据目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例之前,所述方法还包括:
接收用户输入的目标函数;
相应地,所述根据目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例,具体包括:
根据所述用户输入的目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例。
优选地,所述根据目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例,具体包括:
根据所述数据并发程度、所述数据延迟信息及各虚拟机镜像的未命中率曲线生成各虚拟机镜像的吞吐率曲线;
根据各虚拟机镜像的吞吐率曲线生成资源分配比例。
优选地,所述根据所述资源分配比例对各虚拟机镜像进行资源管理,具体包括:
根据所述资源分配比例确定各虚拟机镜像的预估吞吐率;
根据所述虚拟机镜像的预估吞吐率确定所述虚拟机镜像的待分配分层资源;
获取所述虚拟机镜像的历史吞吐率,将所述预估吞吐率与所述历史吞吐率进行比较,根据比较结果对所述虚拟机镜像进行资源管理。
此外,为实现上述目的,本发明还提出一种超融合基础架构的分层资源管理装置,所述装置包括:
监控模块,用于实时获取超融合基础架构中各虚拟机镜像的输入输出数据,所述输入输出数据为各虚拟机镜像的已分配分层资源被分配到各虚拟机镜像的数据;
分析模块,用于根据所述输入输出数据分别计算各虚拟机镜像的未命中率曲线,所述未命中率曲线表征为所述虚拟机镜像对所述分层资源的使用效率;
优化模块,用于根据所述目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例;
分配模块,用于根据所述资源分配比例对各虚拟机镜像进行资源管理。
优选地,所述输入输出数据包括输入输出数据流、数据并发程度和数据延迟信息;
相应地,所述分析模块,具体包括;
计算单元,用于根据所述输入输出数据流分别计算各虚拟机镜像的未命中率曲线;
相应地,所述装置还包括:
函数生成模块,用于根据所述数据并发程度和所述数据延迟信息生成目标函数。
优选地,所述装置还包括:
函数接收模块,用于接收用户输入的目标函数;
相应地,所述优化模块,具体包括:
曲线生成单元,用于根据所述用户输入的目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例。
此外,为实现上述目的,本发明还提出一种基于超融合基础架构的系统,所述系统包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的超融合基础架构的分层资源管理程序,所述超融合基础架构的分层资源管理程序配置为实现如上所述的超融合基础架构的分层资源管理方法的步骤。
此外,为实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有超融合基础架构的分层资源管理程序,所述超融合基础架构的分层资源管理程序被处理器执行时实现如上所述的超融合基础架构的分层资源管理方法的步骤。
本发明通过实时获取超融合基础架构中每一个虚拟机镜像的输入输出数据,然后根据所述输入输出数据分别计算各虚拟机镜像的未命中率曲线,所述未命中率曲线能够表征所述虚拟机镜像对所述分层资源的使用效率;再根据实时生成的目标函数以及每个虚拟机镜像的未命中率曲线生成合适的资源分配比例;最后根据所述资源分配比例对各虚拟机镜像进行资源管理,进而能够智能地为不同虚拟机镜像分配合适的分层资源,达到资源隔离和最大化存储性能的目的,能够在不显著增加内存、计算开销的条件下,提高存储性能和服务质量。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的一种基于超融合基础架构的系统结构示意图;
图2为本发明一种超融合基础架构的分层资源管理装置第一实施例的结构框图;
图3为本发明一种超融合基础架构的分层资源管理方法第一实施例的流程示意图;
图4为本发明一种超融合基础架构的分层资源管理方法第二实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的基于超融合基础架构的系统结构示意图。
如图1所示,所述系统可以包括:处理器1001,例如CPU,通信总线1002、用户接口1003,网络接口1004,存储器1005,硬盘接口1006。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard)。网络接口1004用于实现各X86服务器之间的通信。硬盘接口1006用于连接固态硬盘和机械硬盘,即对应超融合基础架构的分层存储的方式,固态硬盘作为性能层,机械硬盘作为容量层。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory)。本领域技术人员可以理解,图1中示出的系统结构并不构成对其的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图2所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、硬盘接口模块、用户接口模块、以及超融合基础架构的分层资源管理程序。超融合基础架构就是把传统架构中的网络,存储部分通过软件的方式和x86服务器融合到一起。并且通过虚拟化技术将这些服务器进行统一的管理。原先的存储设备的操作系统中的功能通过软件的方式来实现。存储器1005的各个接口模块(当然各个模块接口也可以是一个集成的接口)可以管理服务器,网络,存储。所述系统可以为在一个2U的Chassis中有四台x86服务器,配置固态硬盘(性能)和机械硬盘(容量),以及存储由虚拟机(比如VMware)来控制并将分散的存储资源形成统一的存储池,而后再提供给管理程序Hypervisor用于创建应用虚拟机。存储作为一个或者多个存储池来管理和使用。所述系统会通过处理器1001调用存储器1005中存储的超融合基础架构的分层资源管理程序,并执行以下操作:
实时获取超融合基础架构中各虚拟机镜像的输入输出数据,所述输入输出数据为各虚拟机镜像的已分配分层资源;
根据所述输入输出数据分别计算各虚拟机镜像的未命中率曲线,所述未命中率曲线表征为所述虚拟机镜像对所述分层资源的使用效率;
根据目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例;
根据所述资源分配比例对各虚拟机镜像进行资源管理。
进一步地,处理器1001可以调用存储器1005中存储的超融合基础架构的分层资源管理程序,还执行以下操作:
根据所述输入输出数据流分别计算各虚拟机镜像的未命中率曲线;
相应地,所述根据目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例之前,所述方法还包括:
根据所述数据并发程度和所述数据延迟信息生成目标函数。
进一步地,处理器1001可以调用存储器1005中存储的超融合基础架构的分层资源管理程序,还执行以下操作:
接收用户输入的目标函数;
根据所述用户输入的目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例。
进一步地,处理器1001可以调用存储器1005中存储的超融合基础架构的分层资源管理程序,还执行以下操作:
根据所述数据并发程度、所述数据延迟信息及各虚拟机镜像的未命中率曲线生成各虚拟机镜像的吞吐率曲线;
根据各虚拟机镜像的吞吐率曲线生成资源分配比例。
进一步地,处理器1001可以调用存储器1005中存储的超融合基础架构的分层资源管理程序,还执行以下操作:
根据所述资源分配比例确定各虚拟机镜像的预估吞吐率;
根据所述虚拟机镜像的预估吞吐率确定所述虚拟机镜像的待分配分层资源;
获取所述虚拟机镜像的历史吞吐率,将所述预估吞吐率与所述历史吞吐率进行比较,根据比较结果对所述虚拟机镜像进行资源管理。
本实施例通过实时获取超融合基础架构中每一个虚拟机镜像的输入输出数据,然后根据所述输入输出数据分别计算各虚拟机镜像的未命中率曲线,所述未命中率曲线能够表征所述虚拟机镜像对所述分层资源的使用效率;再根据实时生成的目标函数以及每个虚拟机镜像的未命中率曲线生成合适的资源分配比例;最后根据所述资源分配比例对各虚拟机镜像进行资源管理,进而能够智能地为不同虚拟机镜像分配合适的分层资源,达到资源隔离和最大化存储性能的目的,能够在不显著增加内存、计算开销的条件下,提高存储性能和服务质量。
基于上述基于超融合基础架构的系统结构,提出本发明一种超融合基础架构的分层资源管理装置的实施例,图2为本发明一种超融合基础架构的分层资源管理装置第一实施例的结构框图;
本实施例中,所述装置包括:
监控模块10:用于实时获取超融合基础架构中各虚拟机镜像的输入输出数据,所述输入输出数据为各虚拟机镜像的已分配分层资源;
可理解的是,在所述基于超融合基础架构的系统运行过程中,会有一个分层存储模块负责接收分层资源,负责数据块管理,为每个虚拟机镜像在各自的分层资源内运行独立的淘汰算法。每个虚拟机镜像都有两个实时状态,当前使用的分层资源R和预分配的分层资源P,其中P是由本实施例的超融合基础架构的分层资源管理方法决定的。当R>P时,说明虚拟机镜像过多地占用了分层资源,该虚拟机镜像的数据块会被优先淘汰,具体的淘汰数据块由淘汰算法决定;当R<P时,说明虚拟机镜像使用的分层资源较少,该虚拟机镜像的数据块不会被淘汰。通过这种淘汰的方式,分层存储模块可以将资源分配比例调整到合适的资源分配比例。
具体地,所述监控模块会实时地获取超融合基础架构中每个虚拟机镜像的输入输出数据(以下简称I/O数据),并将所述I/O数据以日志的形式进行存储,所述输入输出数据为各虚拟机镜像的已分配的分层资源。其中,I/O数据具体包括输入输出数据流(以下简称I/O流)、数据并发程度(以下简称I/O深度)和I/O数据延迟信息;
在具体实现中,监控模块会实时地从所述分层存储模块中监控每个虚拟机镜像的输入输出数据流(以下简称I/O流),I/O流只包含元数据信息,例如偏移和长度等信息,占用的内存较少;此外,监控模块还会收集每个虚拟机镜像的I/O深度和延迟信息,其中I/O深度反应了这个虚拟机镜像的I/O并发程度,I/O深度高的虚拟机镜像对存储资源的利用率更高;延迟信息包括分层存储模块的命中延迟lh和未命中延迟lm,命中延迟指的是I/O请求的数据位于分层时的响应延迟,未命中延迟指的是I/O请求的数据不在分层时的响应延迟,未命中延迟一般比命中延迟要高很多。
分析模块20:用于根据所述输入输出数据分别计算各虚拟机镜像的未命中率曲线,所述未命中率曲线表征为所述虚拟机镜像对所述分层资源的使用效率;
在具体实现中,分析模块20包括计算单元,用于根据所述输入输出数据流分别计算各虚拟机镜像的未命中率曲线;其中,“未命中率”可理解为不能被所述分层存储模块响应的I/O请求数量占应用总I/O请求数量的比例,未命中率越低说明分层存储的性能越好;相应地,所述未命率曲线可理解为一个虚拟机的未命中率随分层容量的变化趋势,例如在一个二维坐标系中,x轴为分层容量,y轴为未命中率;一般情况下,分层容量越大,未命中率越低。在未命率曲线随分层存储模块的分层资源增加而降低的速度越快时,意味着虚拟机镜像对分层资源的使用效率越高。
需要说明的是,所述分析模块20是由定时器和事件驱动的,定时器每隔一段时间就触发一次分析模块20,例如每5分钟;事件驱动则会监控虚拟机开机、关机等事件,每次发生虚拟机开机、关机等事件就触发所述分析模块20。
优化模块30:用于根据目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例;
需要说明的是,所述目标函数是实时生成的,例如,所述装置还包括函数生成模块,用于根据所述数据并发程度和所述数据延迟信息生成目标函数,即所述目标函数是根据所述数据并发程度(即I/O深度)和所述数据延迟信息生成;
相应地,目标函数也可以是由用户自定义输入的目标函数,例如,所述装置还包括函数接收模块,用于接收用户输入的目标函数;相应地,所述优化模块,具体包括:曲线生成单元,用于根据所述用户输入的目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例;
本实施例以目标函数由所述数据并发程度和所述数据延迟信息生成为例进行说明。
例如系统默认设置的是最大化存储吞吐率函数的目标函数,在具体实现中,系统根据所述数据并发程度、所述数据延迟信息及各虚拟机镜像的未命中率曲线生成各虚拟机镜像的吞吐率曲线,所述吞吐率曲线表征为吞吐率T与未命中率M的关系曲线,如下:
其中,d是为监控模块提供的I/O深度,lm和lh是监控模块提供的延迟信息的未命中时延和命中时延,M为步骤分析模块中通过计算得到的未命中率曲线,进一步地,系统会根据各虚拟机镜像的吞吐率曲线生成资源分配比例,即可以进一步构造吞吐率T与分层容量x的关系曲线,如下:
通过为每个虚拟机镜像xi构造函数T(xi)后,就可以将目标函数构造为寻找一种资源分配比例,使得全局的存储吞吐率∑T(x)最大,即:
(x1,x2,...,xn)=argmax(T(x1)+T(x2)+...+T(xn))
具体地,可以使用动态规划、贪心法等算法寻找最优或近似最优解。
分配模块40:根据所述资源分配比例对各虚拟机镜像进行资源管理。
在具体实现中,分配模块会根据优化模块30中新生成资源分配比例,通过将每个虚拟机镜像的当前状态Pi(即上一次的预分配的分层资源)调整为xi,重新分配所述分层存储模块的分层资源(即分层资源)到各个虚拟机镜像中(即获取待分配分层资源)。由于重新分配资源存在代价,分配模块可以选择是否应用本次计算结果。例如可根据所述资源分配比例确定所述待分配分层资源的预估吞吐率,如果本次重新分配的预估吞吐率T并不显著高于上次分配的历史吞吐率(例如,提升未达到10%),则认为收益太低而拒绝重新分配。如果本次重新分配的缓存资源太多,则认为代价太高而拒绝重新分配。分层存储模块器会根据上述已指定的Pi,通过淘汰算法将超额的虚拟机镜像的数据块淘汰出所述分层存储模块,其中典型的淘汰算法包括全局最久未被访问算法(LRU)、自适应替换算法(ARC)以及缓存替换算法(LIRS)等。
本实施例通过监控模块实时获取超融合基础架构中每一个虚拟机镜像的输入输出数据,然后分析模块根据所述输入输出数据分别计算各虚拟机镜像的未命中率曲线,所述未命中率曲线能够表征所述虚拟机镜像对所述分层资源的使用效率;优化模块再根据实时生成的目标函数以及每个虚拟机镜像的未命中率曲线生成合适的资源分配比例;最后分配模块根据所述资源分配比例对各虚拟机镜像进行资源管理,进而能够智能地为不同虚拟机镜像分配合适的分层资源,达到资源隔离和最大化存储性能的目的,能够在不显著增加内存、计算开销的条件下,提高存储性能和服务质量。
基于上述基于超融合基础架构的系统结构,提出本发明超融合基础架构的分层资源管理方法实施例。
参照图3,图3为本发明超融合基础架构的分层资源管理方法第一实施例的流程示意图。
在第一实施例中,所述方法包括以下步骤:
步骤S10:实时获取超融合基础架构中各虚拟机镜像的输入输出数据,所述输入输出数据为各虚拟机镜像的已分配分层资源;
需要说明的是,本实施例的执行主体为上述基于超融合基础架构的系统的处理器。
可理解的是,在所述基于超融合基础架构的系统运行过程中,会有一个分层存储模块负责接收分层资源,负责数据块管理,为每个虚拟机镜像在各自的分层资源内运行独立的淘汰算法。每个虚拟机镜像都有两个实时状态,当前使用的分层资源R和预分配的分层资源P,其中P是由本实施例的超融合基础架构的分层资源管理方法决定的。当R>P时,说明虚拟机镜像过多地占用了分层资源,该虚拟机镜像的数据块会被优先淘汰,具体的淘汰数据块由淘汰算法决定;当R<P时,说明虚拟机镜像使用的分层资源较少,该虚拟机镜像的数据块不会被淘汰。通过这种淘汰的方式,处理器可以将资源分配比例调整到合适的资源分配比例。
具体地,所述基于超融合基础架构的系统的处理器会实时地获取超融合基础架构中每个虚拟机镜像的输入输出数据(以下简称I/O数据),并将所述I/O数据以日志的形式进行存储,所述输入输出数据为各虚拟机镜像的已分配的分层资源。其中,I/O数据具体包括输入输出数据流(以下简称I/O流)、数据并发程度(以下简称I/O深度)和I/O数据延迟信息;
在具体实现中,处理器会实时地从所述分层存储模块中监控每个虚拟机镜像的输入输出数据流(以下简称I/O流),I/O流只包含元数据信息,例如偏移和长度等信息,占用的内存较少;此外,处理器还会收集每个虚拟机镜像的I/O深度和延迟信息,其中I/O深度反应了这个虚拟机镜像的I/O并发程度,I/O深度高的虚拟机镜像对存储资源的利用率更高;延迟信息包括分层存储模块的命中延迟lh和未命中延迟lm,命中延迟指的是I/O请求的数据位于分层时的响应延迟,未命中延迟指的是I/O请求的数据不在分层时的响应延迟,未命中延迟一般比命中延迟要高很多。
步骤S20:根据所述输入输出数据分别计算各虚拟机镜像的未命中率曲线,所述未命中率曲线表征为所述虚拟机镜像对所述分层资源的使用效率;
在具体实现中,系统会根据所述输入输出数据流分别计算各虚拟机镜像的未命中率曲线;其中,“未命中率”可理解为不能被所述分层存储模块响应的I/O请求数量占应用总I/O请求数量的比例,未命中率越低说明分层存储的性能越好;相应地,所述未命率曲线可理解为一个虚拟机的未命中率随分层容量的变化趋势,例如在一个二维坐标系中,x轴为分层容量,y轴为未命中率;一般情况下,分层容量越大,未命中率越低。在未命率曲线随分层存储模块的分层资源增加而降低的速度越快时,意味着虚拟机镜像对分层资源的使用效率越高。
需要说明的是,所述步骤S20是由定时器和事件驱动的,定时器每隔一段时间就触发一次步骤S20,例如每5分钟;事件驱动则会监控虚拟机开机、关机等事件,每次发生虚拟机开机、关机等事件就触发所述步骤S20。
步骤S30:根据目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例;
需要说明的是,所述目标函数是实时生成的,具有地,所述目标函数可以是根据所述数据并发程度(即I/O深度)和所述数据延迟信息生成,也可以是由用户自定义输入的目标函数,本实施例以目标函数由所述数据并发程度和所述数据延迟信息生成为例进行说明。
例如系统默认设置的是最大化存储吞吐率函数的目标函数,在具体实现中,系统根据所述数据并发程度、所述数据延迟信息及各虚拟机镜像的未命中率曲线生成各虚拟机镜像的吞吐率曲线,所述吞吐率曲线表征为吞吐率T与未命中率M的关系曲线,如下:
其中,d是为已获取的I/O深度,lm和lh是已获取的延迟信息的未命中时延和命中时延,M为步骤S20中通过计算得到的未命中率曲线,进一步地,系统会根据各虚拟机镜像的吞吐率曲线生成资源分配比例,即可以进一步构造吞吐率T与分层容量x的关系曲线,如下:
通过为每个虚拟机镜像xi构造函数T(xi)后,就可以将目标函数构造为寻找一种资源分配比例,使得全局的存储吞吐率∑T(x)最大,即:
(x1,x2,...,xn)=argmax(T(x1)+T(x2)+...+T(xn))
具体地,可以使用动态规划、贪心法等算法寻找最优或近似最优解。
步骤S40:根据所述资源分配比例对各虚拟机镜像进行资源管理。
在具体实现中,处理器会根据步骤S30中新生成资源分配比例,通过将每个虚拟机镜像的当前状态Pi(即上一次的预分配的分层资源)调整为xi,重新分配所述分层存储模块的分层资源(即分层资源)到各个虚拟机镜像中(即获取待分配分层资源)。由于重新分配资源存在代价,可以选择是否应用本次计算结果。例如可根据所述资源分配比例确定所述待分配分层资源的预估吞吐率,如果本次重新分配的预估吞吐率T并不显著高于上次分配的历史吞吐率(例如,提升未达到10%),则认为收益太低而拒绝重新分配。如果本次重新分配的缓存资源太多,则认为代价太高而拒绝重新分配。处理器会根据上述已指定的Pi,通过淘汰算法将超额的虚拟机镜像的数据块淘汰出所述分层存储模块,其中典型的淘汰算法包括全局最久未被访问算法(LRU)、自适应替换算法(ARC)以及缓存替换算法(LIRS)等。
本实施例通过实时获取超融合基础架构中每一个虚拟机镜像的输入输出数据,然后根据所述输入输出数据分别计算各虚拟机镜像的未命中率曲线,所述未命中率曲线能够表征所述虚拟机镜像对所述分层资源的使用效率;再根据实时生成的目标函数以及每个虚拟机镜像的未命中率曲线生成合适的资源分配比例;最后根据所述资源分配比例对各虚拟机镜像进行资源管理,进而能够智能地为不同虚拟机镜像分配合适的分层资源,达到资源隔离和最大化存储性能的目的,能够在不显著增加内存、计算开销的条件下,提高存储性能和服务质量。
参照图4,图4为本发明超融合基础架构的分层资源管理方法第二实施例的流程示意图。基于上述图3提出本发明超融合基础架构的分层资源管理方法的第二实施例。
本实施例中,所述步骤S30之前,所述方法还包括:
步骤S21:接收用户输入的目标函数;
相应地,所述步骤S30具体包括:
步骤S30`:根据所述用户输入的目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例。
可理解的是,所述基于超融合基础架构的系统能够接收用户输入的自定义目标函数,目标函数反应了用户的需求,例如用户如果需要系统的吞吐率最高,可以设置最大化存储吞吐率的目标函数;如果用户希望每个虚拟机的性能是一样的,可以设置平均分配存储吞吐率的目标函数等等。例如用户输入的是最大化存储吞吐率的目标函数,则具体实现方式和本发明方法的上述第一实施例的实施方式相同,被实施例在此不以赘述:
本实施例提出的超融合基础架构的分层资源管理方法,在根据虚拟机的输入输出数据特征的基础上得到满足用户需求的分层资源方式,满足隔离性和存储性能的需求的同时,还可以根据不同的用户需求自定义不同的目标函数,操作方便灵活。
此外,本发明还提供一种计算机可读存储介质,所述存储介质上存储有超融合基础架构的分层资源管理程序,所述超融合基础架构的分层资源管理程序被处理器执行时实现如下操作:
实时获取超融合基础架构中各虚拟机镜像的输入输出数据,所述输入输出数据为各虚拟机镜像的已分配分层资源;
根据所述输入输出数据分别计算各虚拟机镜像的未命中率曲线,所述未命中率曲线表征为所述虚拟机镜像对所述分层资源的使用效率;
根据目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例;
根据所述资源分配比例对各虚拟机镜像进行资源管理。
进一步地,所述超融合基础架构的分层资源管理程序被处理器执行时还实现如下操作:
根据所述输入输出数据流分别计算各虚拟机镜像的未命中率曲线;
相应地,所述根据目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例之前,所述方法还包括:
根据所述数据并发程度和所述数据延迟信息生成目标函数。
进一步地,所述超融合基础架构的分层资源管理程序被处理器执行时还实现如下操作:
接收用户输入的目标函数;
相应地,所述根据目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例,具体包括:
根据所述用户输入的目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例。
进一步地,所述超融合基础架构的分层资源管理程序被处理器执行时还实现如下操作:
根据所述数据并发程度、所述数据延迟信息及各虚拟机镜像的未命中率曲线生成各虚拟机镜像的吞吐率曲线;
根据各虚拟机镜像的吞吐率曲线生成资源分配比例。
进一步地,所述超融合基础架构的分层资源管理程序被处理器执行时还实现如下操作:
根据所述资源分配比例确定各虚拟机镜像的预估吞吐率;
根据所述虚拟机镜像的预估吞吐率确定所述虚拟机镜像的待分配分层资源;
获取所述虚拟机镜像的历史吞吐率,将所述预估吞吐率与所述历史吞吐率进行比较,根据比较结果对所述虚拟机镜像进行资源管理。
本实施例通过实时获取超融合基础架构中每一个虚拟机镜像的输入输出数据,然后根据所述输入输出数据分别计算各虚拟机镜像的未命中率曲线,所述未命中率曲线能够表征所述虚拟机镜像对所述分层资源的使用效率;再根据实时生成的目标函数以及每个虚拟机镜像的未命中率曲线生成合适的资源分配比例;最后根据所述资源分配比例对各虚拟机镜像进行资源管理,进而能够智能地为不同虚拟机镜像分配合适的分层资源,达到资源隔离和最大化存储性能的目的,能够在不显著增加内存、计算开销的条件下,提高存储性能和服务质量。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种超融合基础架构的分层资源管理方法,其特征在于,所述方法包括:
实时获取超融合基础架构中各虚拟机镜像的输入输出数据,所述输入输出数据为各虚拟机镜像的已分配分层资源;
根据所述输入输出数据分别计算各虚拟机镜像的未命中率曲线,所述未命中率曲线表征为所述虚拟机镜像对所述分层资源的使用效率;
根据目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例;
根据所述资源分配比例对各虚拟机镜像进行资源管理。
2.如权利要求1所述的方法,其特征在于,所述输入输出数据包括输入输出数据流、数据并发程度和数据延迟信息;
相应地,所述根据所述输入输出数据分别计算各虚拟机镜像的未命中率曲线,具体包括;
根据所述输入输出数据流分别计算各虚拟机镜像的未命中率曲线;
相应地,所述根据目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例之前,所述方法还包括:
根据所述数据并发程度和所述数据延迟信息生成目标函数。
3.如权利要求1所述的方法,其特征在于,所述根据目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例之前,所述方法还包括:
接收用户输入的目标函数;
相应地,所述根据目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例,具体包括:
根据所述用户输入的目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例。
4.如权利要求2所述的方法,其特征在于,所述根据目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例,具体包括:
根据所述数据并发程度、所述数据延迟信息及各虚拟机镜像的未命中率曲线生成各虚拟机镜像的吞吐率曲线;
根据各虚拟机镜像的吞吐率曲线生成资源分配比例。
5.如权利要求1-4中任一项所述的方法,其特征在于,所述根据所述资源分配比例对各虚拟机镜像进行资源管理,具体包括:
根据所述资源分配比例确定各虚拟机镜像的预估吞吐率;
根据所述虚拟机镜像的预估吞吐率确定所述虚拟机镜像的待分配分层资源;
获取所述虚拟机镜像的历史吞吐率,将所述预估吞吐率与所述历史吞吐率进行比较,根据比较结果对所述虚拟机镜像进行资源管理。
6.一种超融合基础架构的分层资源管理装置,其特征在于,所述装置包括:
监控模块,用于实时获取超融合基础架构中各虚拟机镜像的输入输出数据,所述输入输出数据为各虚拟机镜像的已分配分层资源被分配到各虚拟机镜像的数据;
分析模块,用于根据所述输入输出数据分别计算各虚拟机镜像的未命中率曲线,所述未命中率曲线表征为所述虚拟机镜像对所述分层资源的使用效率;
优化模块,用于根据所述目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例;
分配模块,用于根据所述资源分配比例对各虚拟机镜像进行资源管理。
7.如权利要求6所述的装置,其特征在于,所述输入输出数据包括输入输出数据流、数据并发程度和数据延迟信息;
相应地,所述分析模块,具体包括;
计算单元,用于根据所述输入输出数据流分别计算各虚拟机镜像的未命中率曲线;
相应地,所述装置还包括:
函数生成模块,用于根据所述数据并发程度和所述数据延迟信息生成目标函数。
8.如权利要求6所述的装置,其特征在于,所述装置还包括:
函数接收模块,用于接收用户输入的目标函数;
相应地,所述优化模块,具体包括:
曲线生成单元,用于根据所述用户输入的目标函数及各虚拟机镜像的未命中率曲线生成资源分配比例。
9.一种基于超融合基础架构的系统,其特征在于,所述系统包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的超融合基础架构的分层资源管理程序,所述超融合基础架构的分层资源管理程序配置为实现如权利要求1至5中任一项所述的超融合基础架构的分层资源管理方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有超融合基础架构的分层资源管理程序,所述超融合基础架构的分层资源管理程序被处理器执行时实现如权利要求1至5中任一项所述的超融合基础架构的分层资源管理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711472551.8A CN108073457B (zh) | 2017-12-28 | 2017-12-28 | 一种超融合基础架构的分层资源管理方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711472551.8A CN108073457B (zh) | 2017-12-28 | 2017-12-28 | 一种超融合基础架构的分层资源管理方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108073457A true CN108073457A (zh) | 2018-05-25 |
CN108073457B CN108073457B (zh) | 2021-12-21 |
Family
ID=62155870
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711472551.8A Active CN108073457B (zh) | 2017-12-28 | 2017-12-28 | 一种超融合基础架构的分层资源管理方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108073457B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110149307A (zh) * | 2019-04-03 | 2019-08-20 | 广东申立信息工程股份有限公司 | 一种idc安全管理系统 |
TWI697786B (zh) * | 2019-05-24 | 2020-07-01 | 威聯通科技股份有限公司 | 基於超融合基礎架構的虛擬機器建立方法 |
CN112527450A (zh) * | 2020-11-24 | 2021-03-19 | 中安可信(青岛)网络科技有限公司 | 基于不同资源的超融合自适应方法、终端及系统 |
CN113504968A (zh) * | 2021-06-30 | 2021-10-15 | 华能山东发电有限公司八角发电厂 | 一种电厂数据中心的搭建方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2046039A2 (en) * | 2007-06-27 | 2009-04-08 | Fujitsu Limited | Information processing apparatus, information processing system, and controlling method of information processing apparatus |
CN102004671A (zh) * | 2010-11-15 | 2011-04-06 | 北京航空航天大学 | 一种云计算环境下数据中心基于统计模型的资源管理方法 |
US20130198742A1 (en) * | 2012-02-01 | 2013-08-01 | Symantec Corporation | Subsequent operation input reduction systems and methods for virtual machines |
EP2790101A1 (en) * | 2013-04-10 | 2014-10-15 | ABB Technology AG | System and method for automated virtual commissioning of an industrial automation system |
-
2017
- 2017-12-28 CN CN201711472551.8A patent/CN108073457B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2046039A2 (en) * | 2007-06-27 | 2009-04-08 | Fujitsu Limited | Information processing apparatus, information processing system, and controlling method of information processing apparatus |
CN102004671A (zh) * | 2010-11-15 | 2011-04-06 | 北京航空航天大学 | 一种云计算环境下数据中心基于统计模型的资源管理方法 |
US20130198742A1 (en) * | 2012-02-01 | 2013-08-01 | Symantec Corporation | Subsequent operation input reduction systems and methods for virtual machines |
EP2790101A1 (en) * | 2013-04-10 | 2014-10-15 | ABB Technology AG | System and method for automated virtual commissioning of an industrial automation system |
Non-Patent Citations (1)
Title |
---|
蒋生健等: "SMT处理器取指策略综述", 《第二十届计算机工程与工艺年会暨第六届微处理器技术论坛论文集》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110149307A (zh) * | 2019-04-03 | 2019-08-20 | 广东申立信息工程股份有限公司 | 一种idc安全管理系统 |
TWI697786B (zh) * | 2019-05-24 | 2020-07-01 | 威聯通科技股份有限公司 | 基於超融合基礎架構的虛擬機器建立方法 |
CN112527450A (zh) * | 2020-11-24 | 2021-03-19 | 中安可信(青岛)网络科技有限公司 | 基于不同资源的超融合自适应方法、终端及系统 |
CN112527450B (zh) * | 2020-11-24 | 2023-05-26 | 中安可信(青岛)网络科技有限公司 | 基于不同资源的超融合自适应方法、终端及系统 |
CN113504968A (zh) * | 2021-06-30 | 2021-10-15 | 华能山东发电有限公司八角发电厂 | 一种电厂数据中心的搭建方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108073457B (zh) | 2021-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200287961A1 (en) | Balancing resources in distributed computing environments | |
CN108073457A (zh) | 一种超融合基础架构的分层资源管理方法、装置及系统 | |
JP4084765B2 (ja) | コンピューティングリソースを自動的に割り振る方法 | |
Tziritas et al. | Application-aware workload consolidation to minimize both energy consumption and network load in cloud environments | |
WO2019091387A1 (en) | Method and system for provisioning resources in cloud computing | |
CN105912403B (zh) | Docker容器的资源管理方法及装置 | |
CN101685409A (zh) | 用于管理存储器的方法和存储器管理器 | |
JP2010033292A (ja) | 仮想サーバリソース調整システム、リソース調整装置、仮想サーバリソース調整方法、及び、コンピュータプログラム | |
EP3224728B1 (en) | Providing shared cache memory allocation control in shared cache memory systems | |
Kaseridis et al. | A bandwidth-aware memory-subsystem resource management using non-invasive resource profilers for large cmp systems | |
CN104219279A (zh) | 用于超大规模分布式处理应用的模块化架构的系统和方法 | |
Wang et al. | DCCP: an effective data placement strategy for data-intensive computations in distributed cloud computing systems | |
Kozyrakis | Resource efficient computing for warehouse-scale datacenters | |
Hassan et al. | Virtual machine resource allocation for multimedia cloud: a Nash bargaining approach | |
CN110321331A (zh) | 利用多级散列函数来确定存储地址的对象存储系统 | |
CN108121601A (zh) | 一种基于权重的应用资源调度装置及方法 | |
CN114880130A (zh) | 并行训练中突破内存限制的方法、系统、设备及存储介质 | |
Sashi et al. | Dynamic replica management for data grid | |
Ardestani et al. | Supporting massive DLRM inference through software defined memory | |
CN106126434B (zh) | 中央处理器的缓存区的缓存行的替换方法及其装置 | |
Pandya et al. | Dynamic resource allocation techniques in cloud computing | |
CN104750614B (zh) | 用于管理存储器的方法和装置 | |
US11561834B2 (en) | Methods and systems for adaptive memory-resource management | |
Lee et al. | Balanced scheduling algorithm considering availability in mobile grid | |
Hu et al. | Optimizing locality-aware memory management of key-value caches |
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 |