CN117806571A - 一种云主机的i/o参数值确定方法、计算机设备及其云平台 - Google Patents
一种云主机的i/o参数值确定方法、计算机设备及其云平台 Download PDFInfo
- Publication number
- CN117806571A CN117806571A CN202410228146.5A CN202410228146A CN117806571A CN 117806571 A CN117806571 A CN 117806571A CN 202410228146 A CN202410228146 A CN 202410228146A CN 117806571 A CN117806571 A CN 117806571A
- Authority
- CN
- China
- Prior art keywords
- cloud
- host
- priority group
- hard disk
- target
- 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
- 238000000034 method Methods 0.000 title claims abstract description 75
- 238000003860 storage Methods 0.000 claims abstract description 78
- 238000004590 computer program Methods 0.000 claims description 15
- 230000001186 cumulative effect Effects 0.000 claims description 13
- 238000009825 accumulation Methods 0.000 claims description 4
- 230000000875 corresponding effect Effects 0.000 description 121
- 238000004364 calculation method Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000002596 correlated effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000008094 contradictory effect Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/062—Securing storage systems
- G06F3/0622—Securing storage systems in relation to access
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- 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)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种云主机的I/O参数值确定方法、计算机设备及其云平台、存储介质,包括:将云平台内各宿主机中多个云主机划分为多个优先级组;获取存储后端的目标宿主机的I/O参数的分配值;获取目标宿主机中各优先级组对应的云硬盘数量;根据目标宿主机的各优先级组对应的云硬盘数量和目标宿主机的I/O参数的分配值确定目标宿主机中任一优先级组的I/O参数的分配值;从各云主机挂载的云硬盘中确定出目标云硬盘,并获取目标云硬盘对应的云主机的数量;根据任一优先级组对应的云硬盘数量、任一优先级组的I/O参数的分配值以及目标云硬盘对应的云主机的数量确定目标云硬盘的I/O参数的分配值。上述方法能够实现各云主机的I/O参数值的精细化控制。
Description
技术领域
本申请涉及云主机处理技术领域,特别是涉及一种云主机的I/O参数值确定方法、计算机设备及其云平台、存储介质。
背景技术
当前云平台从云主机层面对I/O参数值进行控制,其方法主要是对挂载的云硬盘的I/O参数值设置限定值。即在创建卷的时候,对卷的I/O参数值提前设置限定值。当卷挂载到云主机上时,该设置会生效。云主机内的业务进程使用该卷并下发I/O请求时,对应的I/O参数的数量均不能超过限定值。
然而,当任一云主机上均存在较多的I/O读写操作时,会造成存储设备的I/O操作达到上限,或者宿主机的带宽达到上限,此时其他云主机的新I/O读写请求会被阻塞,并且只有等待当前云主机的I/O操作完成后,才可以继续执行。因此,将会导致造成其他云主机I/O操作受到影响,严重影响其他云主机上业务的正常运行。
发明内容
基于此,有必要针对上述技术问题,提供一种云主机的I/O参数值确定方法、计算机设备及其云平台、存储介质,通过各宿主机中各优先级组对应的云硬盘数量动态配置各优先级组中云主机访问的云硬盘的I/O参数的分配值,实现各云主机的I/O参数值的精细化控制以及动态管理,避免任一云主机上均存在较多的I/O操作时其他云主机I/O操作受到影响。
在第一方面,本申请实施例提供了一种云主机的I/O参数值确定方法,包括:根据云平台内各宿主机中各云主机的业务特性将各宿主机中多个云主机划分为多个优先级组,各优先级组包含一个或多个云主机,各云主机挂载一个或多个云硬盘;获取存储后端的目标宿主机的I/O参数的分配值;获取目标宿主机中各优先级组对应的云硬盘数量;根据目标宿主机的各优先级组对应的云硬盘数量和目标宿主机的I/O参数的分配值确定目标宿主机中任一优先级组的I/O参数的分配值;识别任一优先级组中各云主机挂载的云硬盘,从各云主机挂载的云硬盘中确定出目标云硬盘,并获取目标云硬盘对应的云主机的数量;根据任一优先级组对应的云硬盘数量、任一优先级组的I/O参数的分配值以及目标云硬盘对应的云主机的数量确定任一优先级组中任一云主机访问目标云硬盘的I/O参数的分配值。
在一些实施例中,一种云主机的I/O参数值确定方法还包括:识别存储后端的所有宿主机;获取各宿主机中各优先级组对应的云硬盘数量,并获取各优先级组的权重;基于各宿主机中各优先级组对应的云硬盘数量以及各优先级组的权重计算得到各宿主机对应的云硬盘累计值;对各宿主机对应的云硬盘累计值进行累加,得到所有宿主机的云硬盘累计值;基于目标宿主机对应的云硬盘累计值与所有宿主机的云硬盘累计值的比值确定目标宿主机的I/O参数的分配值。
在一些实施例中,一种云主机的I/O参数值确定方法还包括:识别出各宿主机中各优先级的各个云主机中挂载的云硬盘;对各宿主机中各优先级的各个云主机中挂载的云硬盘进行累计,得到各宿主机中各优先级组对应的云硬盘数量;其中,任一云硬盘归属于一个或多个云主机,若目标宿主机的任一优先级组中任意两个或两个以上的云主机挂载有相同的云硬盘,则在执行云硬盘的累计操作时,相同的云硬盘按照被挂载的次数进行累计计算。在一些实施例中,基于目标宿主机对应的云硬盘累计值与所有宿主机的云硬盘累计值的比值确定目标宿主机的I/O参数的分配值,包括:获取存储后端的I/O参数的分配值;获取预配置的目标宿主机的加权系数;将目标宿主机对应的云硬盘累计值与所有宿主机的云硬盘累计值的比值、存储后端的I/O参数的分配值以及加权系数进行乘积,得到的乘积值为目标宿主机的I/O参数的分配值。
在一些实施例中,各优先级组包括高级优先级组、中级优先级组和低级优先级组,高级优先级组的权重大于中级优先级组的权重,中级优先级组的权重大于低级优先级组的权重。
在一些实施例中,根据目标宿主机的各优先级组对应的云硬盘数量和目标宿主机的I/O参数的分配值确定目标宿主机中任一优先级组的I/O参数的分配值,包括:获取任一优先级组对应的云硬盘数量与目标宿主机对应的云硬盘累计值的比值;将任一优先级组对应的云硬盘数量与目标宿主机的云硬盘累计值的比值以及目标宿主机的I/O参数的分配值进行乘积,得到的乘积值为任一优先级组的I/O参数的分配值。
在一些实施例中,根据任一优先级组对应的云硬盘数量、任一优先级组的I/O参数的分配值以及目标云硬盘对应的云主机的数量确定目标云硬盘的I/O参数的分配值,包括:获取任一优先级组的I/O参数的分配值与任一优先级组对应的云硬盘数量的比值;将任一优先级组的I/O参数的分配值与任一优先级组对应的云硬盘数量的比值以及目标云硬盘对应的云主机的数量进行乘积,得到的乘积值为目标云硬盘的I/O参数的分配值。
在一些实施例中,任一优先级组中多个云主机运行同一个集群化业务或同一类业务。
在一些实施例中,不同优先级组的云主机挂载的云硬盘不相同。
在一些实施例中,同一优先级组中配置有两个或两个以上云主机挂载相同的云硬盘。
在一些实施例中,任一优先级组各云主机挂载不同的云硬盘;
和/或,任一优先级组各云主机挂载相同的云硬盘。
在一些实施例中,根据任一优先级组对应的云硬盘数量、任一优先级组的I/O参数的分配值以及目标云硬盘对应的云主机的数量确定任一优先级组中任一云主机访问目标云硬盘的I/O参数的分配值的步骤之后,还包括:若检测到目标宿主机中删减一个或多个云主机,则返回执行获取存储后端的目标宿主机的I/O参数的分配值的步骤,以重新确定目标云硬盘的I/O参数的分配值。
在一些实施例中,根据任一优先级组对应的云硬盘数量、任一优先级组的I/O参数的分配值以及目标云硬盘对应的云主机的数量确定任一优先级组中任一云主机访问目标云硬盘的I/O参数的分配值的步骤之后,还包括:若检测到目标宿主机中增加一个或多个云主机,则返回执行获取存储后端的目标宿主机的I/O参数的分配值的步骤,以重新确定目标云硬盘的I/O参数的分配值。
在一些实施例中,根据任一优先级组对应的云硬盘数量、任一优先级组的I/O参数的分配值以及目标云硬盘对应的云主机的数量确定任一优先级组中任一云主机访问目标云硬盘的I/O参数的分配值的步骤之后,还包括:若检测到目标宿主机中任一云主机新增挂载的云硬盘,则返回执行获取存储后端的目标宿主机的I/O参数的分配值的步骤,以重新确定目标云硬盘的I/O参数的分配值。
在一些实施例中,根据任一优先级组对应的云硬盘数量、任一优先级组的I/O参数的分配值以及目标云硬盘对应的云主机的数量确定任一优先级组中任一云主机访问目标云硬盘的I/O参数的分配值的步骤之后,还包括:若检测到目标宿主机中任一云主机删除挂载的云硬盘,则返回执行获取存储后端的目标宿主机的I/O参数的分配值的步骤,以重新确定目标云硬盘的I/O参数的分配值。
在一些实施例中,I/O参数的分配值为读带宽的分配值、写带宽的分配值以及每秒进行读写操作的次数的分配值中的任一个。
在第二方面,本申请实施例提供了一种计算机设备,包括处理器、存储器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述任一项的方法的步骤。
在第三方面,本申请实施例提供了一种云平台,云平台包括存储后端、所有宿主机以及上述计算机设备。
在一些实施例中,各宿主机内创建有各优先级组对应的控制组群,各优先级组的控制组群中配置控制文件系统;计算机设备还用于将目标云硬盘的I/O参数的分配值以及对应的云主机的标识信息写入任一优先级组的控制组群;任一优先级组的控制组群中的控制文件系统基于对应的云主机的标识信息识别出对应的云主机,并基于目标云硬盘的I/O参数的分配值控制任一优先级组的各云主机对目标云硬盘的I/O参数的访问。
在第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一项的方法的步骤。
上述一种云主机的I/O参数值确定方法、计算机设备及其云平台、存储介质,基于优先级组对应的云硬盘数量和宿主机的I/O参数的分配值确定优先级组的I/O参数的分配值,进而根据优先级组对应的云硬盘数量及其I/O参数的分配值以及目标云硬盘对应的云主机的数量确定目标云硬盘的I/O参数的分配值,从而控制优先级组中各个云主机对目标云硬盘的访问不超过I/O参数的分配值,实现各云主机的I/O参数值的精细化控制以及动态管理,避免任一云主机上均存在较多的I/O操作时其他云主机I/O操作受到影响。
附图说明
图1为一些实施例中的一种云平台的结构示意图;
图2为一些实施例中的一种云主机的I/O参数值确定方法的流程示意图;
图3为一些实施例中的宿主机1与存储后端中云硬盘的关系示意图;
图4为一些实施例中的宿主机2与存储后端中云硬盘的关系示意图;
图5为一些实施例中的计算机设备执行一种云主机的I/O参数值确定方法的流程示意图;
图6为一些实施例中计算机设备的内部结构图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应当理解,在本申请的描述中,除非上下文明确要求,否则整个说明书中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
还应当理解,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。
需要注意的是,术语“S1”、“S2”等仅用于步骤的描述目的,并非特别指称次序或顺位的意思,亦非用以限定本申请,其仅仅是为了方便描述本申请的方法,而不能理解为指示步骤的先后顺序。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
本申请提供一种云主机的I/O参数值确定方法、计算机设备及其云平台、存储介质,其对应的名词解释如下:
计算机设备:也称为云平台,是指基于硬件资源和软件资源的服务,提供计算、网络和存储能力。 OpenStack 是一个开源的云计算管理平台项目,同时也是目前市场上应用最为广泛的计算机设备之一,具有很大的商业潜力,当前国内多家云平台服务商使用OpenStack架构开发云平台。
存储后端:为特定目标而设计,因此配置方式也不同。它可能是拥有一点额外的存储,也可能拥有很大的存储空间的服务器。可以为云平台提供存储服务。
云硬盘:是一种虚拟块存储服务,主要为弹性云服务器和裸金属服务器提供块存储空间。用户可以在线创建云硬盘并挂载给实例,云硬盘的使用方式与传统服务器硬盘完全一致。
共享云硬盘:在云硬盘的功能基础上,可以将共享云硬盘挂载到多个云主机,多个云主机均能看到相同的云硬盘设备。
云主机:云计算在基础设施应用上的重要组成部分,位于云计算产业链金字塔底层,产品源自计算机设备,对外提供虚拟机服务。
cgroup组: 其名称源自控制组群(control groups)的简写,是Linux内核的一个功能,用来限制、控制与分离一个进程组的资源(如CPU、内存、磁盘输入输出等)。
在第一方面,本申请提供了一种云主机的I/O参数值确定方法。该方法可以应用于如图1所示的云平台中。其中,云平台包括存储后端、所有宿主机以及计算机设备。如图1所示,所有宿主机包括宿主机1……宿主机N。各宿主机中配置多个云主机,各云主机挂载有一个或多个存储后端的云硬盘。如,宿主机1中配置云主机11、云主机12、云主机13……各云主机分别挂载有一个或多个存储后端的云硬盘。计算机设备用于执行本申请的一种云主机的I/O参数值确定方法。具体地,计算机设备获取根据云平台内各宿主机中各云主机的业务特性将各宿主机中多个云主机划分为多个优先级组,各优先级组包含一个或多个云主机,各云主机挂载一个或多个云硬盘,存储后端的目标宿主机的I/O参数的分配值,获取目标宿主机中各优先级组对应的云硬盘数量,根据目标宿主机的各优先级组对应的云硬盘数量和目标宿主机的I/O参数的分配值确定目标宿主机中任一优先级组的I/O参数的分配值,识别任一优先级组中各云主机挂载的云硬盘,从各云主机挂载的云硬盘中确定出目标云硬盘,并获取目标云硬盘对应的云主机的数量,根据任一优先级组对应的云硬盘数量、任一优先级组的I/O参数的分配值以及目标云硬盘对应的云主机的数量确定任一优先级组中任一云主机访问目标云硬盘的I/O参数的分配值。依次类推,计算机设备能够计算出存储后端中各云硬盘对应的I/O参数的分配值。其中,云硬盘对应的I/O参数的分配值用于控制其优先级组中任一云主机对其进行访问。也即是,优先级组中任一云主机对云硬盘进行I/O接口访问时,不能超过I/O参数的分配值。
在一些实施例中,本申请提供一种云主机的I/O参数值确定方法。如图2所示,一种云主机的I/O参数值确定方法,包括步骤S202、步骤S204、步骤S206、步骤S208、步骤S210和步骤S212。下文对各步骤进行说明。
S202,根据云平台内各宿主机中各云主机的业务特性将各宿主机中多个云主机划分为多个优先级组,各优先级组包含一个或多个云主机,各云主机挂载一个或多个云硬盘。
步骤S202中,其中,任一优先级组中多个云主机运行同一个集群化业务或同一类业务。
S204,获取存储后端的目标宿主机的I/O参数的分配值。
步骤S204中,存储后端中配置多个云硬盘,宿主机中配置一个或多个云主机,各云主机挂载有一个或多个云硬盘。存储后端的目标宿主机的I/O参数的分配值指的是:存储后端中为目标宿主机的I/O参数分配的数值。需要说明的是,若某个宿主机中所有的云主机挂载的云硬盘均不属于存储后端时,该宿主机的I/O参数的分配值为零。
在一个示例中,I/O参数的分配值为读带宽的分配值、写带宽的分配值以及每秒进行读写操作的次数的分配值中的任一个。即,存储后端的目标宿主机的I/O参数的分配值可以是:存储后端为目标宿主机配置的读带宽的分配值、写带宽的分配值或每秒进行读写操作的次数的分配值。
在一个示例中,步骤S202之前,还包括:识别存储后端的所有宿主机;获取各宿主机中各优先级组对应的云硬盘数量,并获取各优先级组的权重;基于各宿主机中各优先级组对应的云硬盘数量以及各优先级组的权重计算得到各宿主机对应的云硬盘累计值;对各宿主机对应的云硬盘累计值进行累加,得到所有宿主机的云硬盘累计值;基于目标宿主机对应的云硬盘累计值与所有宿主机的云硬盘累计值的比值确定目标宿主机的I/O参数的分配值。
其中,上述各宿主机中各优先级组对应的云硬盘数量的计算步骤,包括:识别出各宿主机中各优先级的各个云主机中挂载的云硬盘;对各宿主机中各优先级的各个云主机中挂载的云硬盘进行累计,得到各宿主机中各优先级组对应的云硬盘数量;其中,任一云硬盘归属于一个或多个云主机,若目标宿主机的任一优先级组中任意两个或两个以上的云主机挂载有相同的云硬盘,则在执行云硬盘的累计操作时,相同的云硬盘按照被挂载的次数进行累计计算。其中,基于目标宿主机对应的云硬盘累计值与所有宿主机的云硬盘累计值的比值确定目标宿主机的I/O参数的分配值,包括:获取存储后端的I/O参数的分配值;获取预配置的目标宿主机的加权系数;将目标宿主机对应的云硬盘累计值与所有宿主机的云硬盘累计值的比值、存储后端的I/O参数的分配值以及加权系数进行乘积,得到的乘积值为目标宿主机的I/O参数的分配值。
在一个示例中,各优先级组包括高级优先级组、中级优先级组和低级优先级组,高级优先级组的权重大于中级优先级组的权重,中级优先级组的权重大于低级优先级组的权重。具体地,高级优先级组的权重、中级优先级组的权重与低级优先级组的权重的比值为5:3:1。在其他实施例中,高级优先级组的权重、中级优先级组的权重与低级优先级组的权重的比值可以基于具体需求进行调整。
具体地,对各个宿主机中的云主机设置优先级组,并且对优先级组设定对应的权重。根据云平台内宿主机上使用存储后端的云主机个数以及云主机所属的优先级组所占的权重,计算每一个宿主机可以分配的I/O参数的比例。计算方法如下所示:
其中,i依次表示high、mid、low,high表示高优先级组,mid表示中优先级组,low表示低优先级组。pi表示对应优先级组的权重,默认值为5:3:1。si表示对应优先级组内云主机对应的云硬盘数量。
表示宿主机中所有云主机对应的云硬盘数量。表
示存储后端的宿主机的编号,k表示存储后端的宿主机的总数,sji表示第j个宿主机中对应
优先级组内云主机对应的云硬盘数量。
表示存储后端中所有宿主机对应的云硬盘数量。Q表示当前宿主机的一个加权系数,以防止系统消耗,一般上浮5%-10%。R为存储后端的I/O参数的分配值,即存储后端的总性能上限。A表示目标宿主机的I/O参数的分配值。
此外,上述计算公式中,表示目标宿主机的高中低所有的优先级组中所有云主机对应的所有云硬盘,/>表示所有宿主机中所有云主机的挂载该存储后端的云硬盘的总和,并且如果多个云主机挂载了同一个云硬盘,这个相同的云硬盘在累计计数时需要重复计算。
S206,获取目标宿主机中各优先级组对应的云硬盘数量。
步骤S206中,各宿主机中配置一个或多个云主机,各云主机被配置为设定的优先级。因此,宿主机的云主机被划分为一个或多个优先级组。例如,如图3所示,宿主机1中配置有云主机11、云主机12、云主机13、云主机14、云主机15、云主机16、云主机17、云主机18以及云主机19。云主机11和云主机13被配置为高优先级,云主机12、云主机14、云主机15和云主机16被配置为中优先级,云主机17、云主机18和云主机19被配置为低优先级。因此,宿主机1中划分出高优先级组、中优先级组和低优先级组。
宿主机中各优先级组中包含一个或多个云主机,各云主机挂载有一个或多个云硬盘。各优先级组对应的云硬盘数量指的是各优先级组中所有云主机挂载的云硬盘的总数。例如,如图3所示,云主机11和云主机13分别挂载一个云硬盘,则高优先级组对应的云硬盘数量为2。
在一种场景中,不同优先级组的云主机挂载的云硬盘不相同。
在一种场景中,同一优先级组中配置有两个或两个以上云主机挂载相同的云硬盘;和/或,任一优先级组各云主机挂载不同的云硬盘;和/或,任一优先级组各云主机挂载相同的云硬盘。
具体地,云平台内大量的宿主机承载大量的云主机,每一个宿主机上存在一定数量的云主机且根据业务特性以及I/O将多个云主机优先级划分为高、中、低三个组。同一个优先级组内的云主机运行同一个集群化业务或同一类业务。各云主机挂载的云硬盘配置于存储后端。
在一些场景中,如图4所示,高优先级组、中优先级组和低优先级组中云主机挂载的云硬盘不相同,即不同优先级组中云主机不会挂载同一个云硬盘。此外,在一种情况中,同一优先级组中配置有两个或两个以上云主机挂载相同的云硬盘。如低优先级组中,云主机27和云主机29挂载云硬盘5,云主机28挂载云硬盘4。在一种情况中,任一优先级组各云主机挂载不同的云硬盘。如中优先级组中,云主机22挂载云硬盘2,云主机25挂载云硬盘3。在一种情况中,任一优先级组各云主机挂载相同的云硬盘。如高优先级组中,云主机21和云主机23均挂载云硬盘1。此种情况下,在计算各优先级组中各云主机对应的云硬盘数量时,云硬盘1需要被重复计算。即,如图4所示,高优先级组中云硬盘数量应该算2个。
S208,根据目标宿主机的各优先级组对应的云硬盘数量和目标宿主机的I/O参数的分配值确定目标宿主机中任一优先级组的I/O参数的分配值。
步骤S208中,目标宿主机中任一优先级组的I/O参数的分配值与其对应的云硬盘数量有关。优先级组对应的云硬盘数量越多,其分配的I/O参数的分配值越大,但分配的I/O参数的分配值不大于宿主机的I/O参数的分配值。
在一示例中,上述根据目标宿主机的各优先级组对应的云硬盘数量和目标宿主机的I/O参数的分配值确定目标宿主机中任一优先级组的I/O参数的分配值,包括:获取任一优先级组对应的云硬盘数量与目标宿主机对应的云硬盘累计值的比值;将任一优先级组对应的云硬盘数量与目标宿主机的云硬盘累计值的比值以及目标宿主机的I/O参数的分配值进行乘积,得到的乘积值为任一优先级组的I/O参数的分配值。
具体地,根据下述公式计算任一优先级组的I/O参数的分配值:
其中,B表示任一优先级组的I/O参数的分配值。即,当i表示高优先级组时,B表示
高优先级组的I/O参数的分配值。当表示中优先级组时,B表示中优先级组的I/O参数的分
配值。当表示低优先级组时,B表示低优先级组的I/O参数的分配值。
通过上述公式计算一个宿主机上三个优先级组分别分配到的I/O参数的分配值。由于在宿主机的I/O参数的分配值的计算过程中已经存在上浮,此处计算不再进行I/O参数值上浮。
S210,识别任一优先级组中各云主机挂载的云硬盘,从各云主机挂载的云硬盘中确定出目标云硬盘,并获取目标云硬盘对应的云主机的数量。
步骤S210中,若任一优先级组中包含一个云主机,则目标云硬盘为该云主机挂载的云硬盘。若任一优先级组中包含多个云主机,识别出各云主机中挂载云硬盘,再从各云硬盘中筛选出目标云硬盘。进而,识别出目标云硬盘对应的云主机的数量。例如,如图3所示,任一优先级组为中优先级组,云主机12和云主机14均挂载云硬盘1,云主机16挂载云硬盘2,云主机15挂载云硬盘4。从云硬盘1、云硬盘2和云硬盘4中确定出目标云硬盘。若目标云硬盘为云硬盘1,则目标云硬盘对应的云主机的数量为2。若目标云硬盘为云硬盘2或云硬盘4,则目标云硬盘对应的云主机的数量为1。
S212,根据任一优先级组对应的云硬盘数量、任一优先级组的I/O参数的分配值以及目标云硬盘对应的云主机的数量确定任一优先级组中任一云主机访问目标云硬盘的I/O参数的分配值。
步骤S212中,目标云硬盘的I/O参数的分配值与优先级组对应的云硬盘数量、优先级组的I/O参数的分配值以及目标云硬盘对应的云主机的数量相关。其中,目标云硬盘的I/O参数的分配值与目标云硬盘对应的云主机的数量正相关,目标云硬盘的I/O参数的分配值与优先级组对应的云硬盘数量负相关,目标云硬盘的I/O参数的分配值与优先级组的I/O参数的分配值正相关。任一优先级组中任一云主机访问目标云硬盘时,通过目标云硬盘的I/O参数的分配值对云主机进行访问控制。
在一示例中,上述根据任一优先级组对应的云硬盘数量、任一优先级组的I/O参数的分配值以及目标云硬盘对应的云主机的数量确定任一优先级组中任一云主机访问目标云硬盘的I/O参数的分配值,包括:获取任一优先级组的I/O参数的分配值与任一优先级组对应的云硬盘数量的比值;将任一优先级组的I/O参数的分配值与任一优先级组对应的云硬盘数量的比值以及目标云硬盘对应的云主机的数量进行乘积,得到的乘积值为目标云硬盘的I/O参数的分配值。
具体地,根据下述公式计算目标云硬盘的I/O参数的分配值:
其中,C表示目标云硬盘的I/O参数的分配值,mi表示目标云硬盘对应的云主机的数量。例如,如图4所示,宿主机2的低优先级组中云主机27和云主机29均挂载云硬盘5。因此在计算云硬盘5的I/O参数的分配值时,mi为2。
在一些实施例中,根据任一优先级组对应的云硬盘数量、任一优先级组的I/O参数的分配值以及目标云硬盘对应的云主机的数量确定任一优先级组中任一云主机访问目标云硬盘的I/O参数的分配值的步骤之后,还包括:若检测到目标宿主机中删减一个或多个云主机,则返回执行获取存储后端的目标宿主机的I/O参数的分配值的步骤,以重新确定目标云硬盘的I/O参数的分配值。
在一些实施例中,根据任一优先级组对应的云硬盘数量、任一优先级组的I/O参数的分配值以及目标云硬盘对应的云主机的数量确定目标云硬盘的I/O参数的分配值的步骤之后,还包括:若检测到目标宿主机中增加一个或多个云主机,则返回执行获取存储后端的目标宿主机的I/O参数的分配值的步骤,以重新确定目标云硬盘的I/O参数的分配值。
在一些实施例中,根据任一优先级组对应的云硬盘数量、任一优先级组的I/O参数的分配值以及目标云硬盘对应的云主机的数量确定任一优先级组中任一云主机访问目标云硬盘的I/O参数的分配值的步骤之后,还包括:若检测到目标宿主机中任一云主机新增挂载的云硬盘,则返回执行获取存储后端的目标宿主机的I/O参数的分配值的步骤,以重新确定目标云硬盘的I/O参数的分配值。
在一些实施例中,根据任一优先级组对应的云硬盘数量、任一优先级组的I/O参数的分配值以及目标云硬盘对应的云主机的数量确定任一优先级组中任一云主机访问目标云硬盘的I/O参数的分配值的步骤之后,还包括:若检测到目标宿主机中任一云主机删除挂载的云硬盘,则返回执行获取存储后端的目标宿主机的I/O参数的分配值的步骤,以重新确定目标云硬盘的I/O参数的分配值。
具体地,当云平台内新增或者删除一个使用该存储后端的云主机时,分配到宿主机以及每个优先级组以及优先级组对应的每个云硬盘的I/O参数的分配值将会发生变化。因此当检测到该变化时,重新计算每个宿主机、每个优先级组以及每个云硬盘的I/O参数的分配值。或者,增加或删除存储后端的云硬盘时,分配到宿主机以及每个优先级组以及优先级组对应的每个云硬盘的I/O参数的分配值将会发生变化。因此当检测到该变化时,重新计算每个宿主机、每个优先级组以及每个云硬盘的I/O参数的分配值。进而,下发更新后的I/O参数的分配值到控制组群,以实现动态实时控制云主机的I/O值。
上述一种云主机的I/O参数值确定方法,每个云硬盘的I/O参数被精细化控制,根据云主机的优先级和复用次数精准配置,可保证每个云主机对应的云硬盘I/O优先级精准配置使用。高优先级的云主机下的云硬盘有较高的I/O性能,低优先级的云硬盘有较低的I/O性能。如果云平台内有多个后端存储,则需要针对每个存储后端,重复上述的流程。根据每个存储后端所承载的云主机,重复的计算每个宿主机每个优先级组和每个云硬盘的I/O参数的分配值。
针对上述各个实施例的一种云主机的I/O参数值确定方法,以下提供一具体实施场景,参见图5所示,包括以下步骤:
1)设立独立的云主机I/O精细化控制模块,负责所有的I/O精细化控制,监控所有云主机的云硬盘变化,并进行I/O精细化计算,设置对应的I/O性能配置。具体地,I/O精细化控制模块设置高中低三个标签,并默认权重为5:3:1,并且该权重可由用户灵活控制。在云平台搭建好时,需要获取并保存每一个存储后端的总体的I/O性能指标,包括读I/OPS、写I/OPS、读带宽和写带宽四个参数,并在新增存储后端时,同步获取总体的I/O性能指标。
2)当在云平台内创建云主机时,通过用户设置,精细化控制模块为云主机添加一个优先级标签。当用户没有设置优先级标签时,会默认设置该云主机的优先级为中。
3)对于存储后端,I/O精细化控制模块通过公式依次计算云平台内每个宿主机分配的I/O参数的分配值。
4)I/O精细化控制模块再通过公式依次计算宿主机内每个优先级组分配的I/O参数的分配值。
5)接着,I/O精细化控制模块再通过公式计算出优先级内每个云硬盘所分配的I/O参数的分配值。
6)I/O精细化控制模块将每个宿主机分配的I/O参数的分配值、优先级组以及对应的云主机列表信息以及云硬盘所分配的I/O参数的分配值作为参数发送到给OpenStack 的计算机设备Nova。Nova将对应的I/O参数的分配值发送到对应计算节点的Nova-Compute。每一个计算节点上Nova-Compute服务调用linux指令在宿主机上创建对应的高中低三个cgroup组,并将每个云硬盘maj:min号和对应的Nova-Compute、优先级组内的云主机进程ID写入到cgroup组内。此时,云平台内的云主机I/O读写性能将会被精细化控制。
7)若有多个存储后端,则针对每个存储重复操作3-6步骤,保证云主机上每个云硬盘都能精细化控制。
8)当I/O精细化控制模块检测到添加或者删除新的云主机,或添加或者删除对应云硬盘时,会重新执行3-6步骤。重新计算每一个优先级组的I/O参数的分配值,并将I/O参数的分配值和对应的云主机进程ID信息重新写入cgroup组,实现实时动态分配I/O性能。
9)若动态调整高中低标签的权重时,重复执行第3-7步骤,保证每个云硬盘的I/O能够动态修改生效。
上述一种云主机的I/O参数值确定方法,为云主机添加优先级组标签,并获取存储后端的I/O参数的分配值。计算宿主机分配的I/O参数的分配值,以及优先级组分配的I/O参数的分配值,进而计算出云硬盘分配的I/O参数的分配值,将云硬盘分配的I/O参数的分配值和云主机进程ID写入不同的cgroup组,以实现I/O精细化控制。
应该理解的是,虽然流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在第二方面,本申请实施例提供了一种计算机设备,包括处理器、存储器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述任一实施例所述的一种云主机的I/O参数值确定方法。具体地,该计算机设备可以是服务器,并可以采用图6所示的内部结构图。图6所示的计算机设备包括通过系统总线连接的处理器、存储器、网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口可以用于与外部的设备通过网络连接通信。该计算机程序被处理器执行时以实现本文任一实施例中的一种云主机的I/O参数值确定方法。
在第三方面,本申请实施例还提供一种云平台,如图1所示,云平台包括存储后端、所有宿主机以及上述计算机设备。
在一些实施例中,各宿主机内创建有各优先级组对应的控制组群,各优先级组的控制组群中配置控制文件系统;计算机设备还用于将目标云硬盘的I/O参数的分配值以及任对应的云主机的标识信息写入任一优先级组的控制组群;任一优先级组的控制组群中的控制文件系统基于对应的云主机的标识信息识别出对应的云主机,并基于目标云硬盘的I/O参数的分配值控制任一优先级组的各云主机对目标云硬盘的I/O参数的访问。
具体地,在宿主机节点上,针对每个优先级创建高控制组群、中控制组群以及低控制组群cgroup。cgroup提供一套对应的控制文件系统,在完成创建后,在组内自动生成所有blkI/O相关的配置项:
(1)在宿主机创建cgroup。若已存在对应的cgroup,不再重复创建 。具体执行:create /sys/fs/cgroup/blkI/O/[优先级组];
(2)分别将优先级组内的云主机添加到对应的cgroup内,具体执行:echo [云主机pid] >/sys/fs/cgroup/blkI/O/[优先级组]/task
(3)将云硬盘以及云硬盘的参数加到对应的cgroup中,具体执行:
通过 dmsetup info [云硬盘wwid] 获取对应maj:min 号,
通过执行命令将云硬盘的读写吞吐以及iops进行配置,具体如下:
a)echo “maj:min read_bps”>create/sys/fs/cgroup/blkI/O/[优先级组]/blkI/O.throttle.read_bps_device.
b)echo “maj:min write_bps”>create/sys/fs/cgroup/blkI/O/[优先级组]/blkI/O.throttle.write_bps_device.
c)echo “maj:min read_iops”>create/sys/fs/cgroup/blkI/O/[优先级组]/blkI/O.throttle.read_iops_device.
d)echo “maj:min write_iops”>create /sys/fs/cgroup/blkI/O/[优先级组]/blkI/O.throttle.write_iops_device.
因此,云平台内所有云主机上挂载的云硬盘的I/O参数的分配值可以根据优先级实现自动分配,不需要再手动为每个云硬盘添加I/O参数的分配值,有效节省了人力,并提升了I/O参数设置的速度。当云平台内新增或者删除云主机,或者新增或者删除对应云主机的云硬盘时,系统会自动重新计算每个优先级组的I/O参数的分配值,并传入cgroup实时生效。不需要人为再进行更新,有效节省了人力。
通过调节优先级组的权重,可以让高优先级的云主机尽可能的获得更高的I/O性能,而低优先级的云主机的I/O性能被尽可能的限制,有效保证了重要业务的稳定运行。
上述一种云主机的I/O参数值确定方法、计算机设备及其云平台实现了云主机I/O动态精细化控制功能。云平台内的云主机添加优先级标签,并设置优先级权重;cinder-volume获取存储后端的I/O参数的分配值,并传递给Nova--api;Nova-api层计算分配到I/O参数的分配值,再计算宿主机上各个优先级组的I/O参数的分配值,最后计算出云硬盘分配的I/O参数的分配值。Nova-Compute创建高中低三个cgroup组,并将云硬盘的I/O参数的分配值和云主机进程ID传入到对应的cgroup中,实现实时控制云主机的I/O性能。当检测到云主机新增或者删除时,自动触发重新计算和设置I/O参数的分配值,实现动态分配。
在第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时是实现上述任一实施例所述的一种云主机的I/O参数值确定方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。
Claims (20)
1.一种云主机的I/O参数值确定方法,其特征在于,所述方法包括:
根据云平台内各宿主机中各云主机的业务特性将所述各宿主机中多个云主机划分为多个优先级组,各优先级组包含一个或多个云主机,各云主机挂载一个或多个云硬盘;
获取存储后端的目标宿主机的I/O参数的分配值;
获取所述目标宿主机中各优先级组对应的云硬盘数量;
根据所述目标宿主机的各优先级组对应的云硬盘数量和所述目标宿主机的I/O参数的分配值确定所述目标宿主机中任一优先级组的I/O参数的分配值;
识别所述任一优先级组中各云主机挂载的云硬盘,从所述各云主机挂载的云硬盘中确定出目标云硬盘,并获取所述目标云硬盘对应的云主机的数量;
根据所述任一优先级组对应的云硬盘数量、所述任一优先级组的I/O参数的分配值以及所述目标云硬盘对应的云主机的数量确定所述任一优先级组中任一云主机访问所述目标云硬盘的I/O参数的分配值。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
识别所述存储后端的所有宿主机;
获取各宿主机中各优先级组对应的云硬盘数量,并获取各优先级组的权重;
基于所述各宿主机中各优先级组对应的云硬盘数量以及所述各优先级组的权重计算得到所述各宿主机对应的云硬盘累计值;
对所述各宿主机对应的云硬盘累计值进行累加,得到所述所有宿主机的云硬盘累计值;
基于所述目标宿主机对应的云硬盘累计值与所述所有宿主机的云硬盘累计值的比值确定所述目标宿主机的I/O参数的分配值。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
识别出所述各宿主机中各优先级的各个云主机中挂载的云硬盘;
对所述各宿主机中各优先级的各个云主机中挂载的云硬盘进行累计,得到所述各宿主机中各优先级组对应的云硬盘数量;
其中,任一云硬盘归属于一个或多个云主机,若目标宿主机的任一优先级组中任意两个或两个以上的云主机挂载有相同的云硬盘,则在执行云硬盘的累计操作时,所述相同的云硬盘按照被挂载的次数进行累计计算。
4.根据权利要求2所述的方法,其特征在于,所述基于所述目标宿主机对应的云硬盘累计值与所述所有宿主机的云硬盘累计值的比值确定所述目标宿主机的I/O参数的分配值,包括:
获取所述存储后端的I/O参数的分配值;
获取预配置的所述目标宿主机的加权系数;
将所述目标宿主机对应的云硬盘累计值与所述所有宿主机的云硬盘累计值的比值、所述存储后端的I/O参数的分配值以及所述加权系数进行乘积,得到的乘积值为所述目标宿主机的I/O参数的分配值。
5.根据权利要求2所述的方法,其特征在于,所述各优先级组包括高级优先级组、中级优先级组和低级优先级组,所述高级优先级组的权重大于所述中级优先级组的权重,所述中级优先级组的权重大于所述低级优先级组的权重。
6.根据权利要求1所述的方法,其特征在于,所述根据所述目标宿主机的各优先级组对应的云硬盘数量和所述目标宿主机的I/O参数的分配值确定所述目标宿主机中任一优先级组的I/O参数的分配值,包括:
获取所述任一优先级组对应的云硬盘数量与所述目标宿主机对应的云硬盘累计值的比值;
将所述任一优先级组对应的云硬盘数量与所述目标宿主机的云硬盘累计值的比值以及所述目标宿主机的I/O参数的分配值进行乘积,得到的乘积值为所述任一优先级组的I/O参数的分配值。
7.根据权利要求1所述的方法,其特征在于,所述根据所述任一优先级组对应的云硬盘数量、所述任一优先级组的I/O参数的分配值以及所述目标云硬盘对应的云主机的数量确定所述目标云硬盘的I/O参数的分配值,包括:
获取所述任一优先级组的I/O参数的分配值与所述任一优先级组对应的云硬盘数量的比值;
将所述任一优先级组的I/O参数的分配值与所述任一优先级组对应的云硬盘数量的比值以及所述目标云硬盘对应的云主机的数量进行乘积,得到的乘积值为所述目标云硬盘的I/O参数的分配值。
8.根据权利要求1所述的方法,其特征在于,任一优先级组中多个云主机运行同一个集群化业务或同一类业务。
9.根据权利要求1所述的方法,其特征在于,不同优先级组的云主机挂载的云硬盘不相同。
10.根据权利要求1所述的方法,其特征在于,同一优先级组中配置有两个或两个以上云主机挂载相同的云硬盘。
11.根据权利要求1所述的方法,其特征在于,任一优先级组各云主机挂载不同的云硬盘;
和/或,任一优先级组各云主机挂载相同的云硬盘。
12.根据权利要求1所述的方法,其特征在于,所述根据所述任一优先级组对应的云硬盘数量、所述任一优先级组的I/O参数的分配值以及所述目标云硬盘对应的云主机的数量确定所述任一优先级组中任一云主机访问所述目标云硬盘的I/O参数的分配值的步骤之后,还包括:
若检测到目标宿主机中删减一个或多个云主机,则返回执行所述获取存储后端的目标宿主机的I/O参数的分配值的步骤,以重新确定所述目标云硬盘的I/O参数的分配值。
13.根据权利要求1所述的方法,其特征在于,所述根据所述任一优先级组对应的云硬盘数量、所述任一优先级组的I/O参数的分配值以及所述目标云硬盘对应的云主机的数量确定所述任一优先级组中任一云主机访问所述目标云硬盘的I/O参数的分配值的步骤之后,还包括:
若检测到目标宿主机中增加一个或多个云主机,则返回执行所述获取存储后端的目标宿主机的I/O参数的分配值的步骤,以重新确定所述目标云硬盘的I/O参数的分配值。
14.根据权利要求1所述的方法,其特征在于,所述根据所述任一优先级组对应的云硬盘数量、所述任一优先级组的I/O参数的分配值以及所述目标云硬盘对应的云主机的数量确定所述任一优先级组中任一云主机访问所述目标云硬盘的I/O参数的分配值的步骤之后,还包括:
若检测到目标宿主机中任一云主机新增挂载的云硬盘,则返回执行所述获取存储后端的目标宿主机的I/O参数的分配值的步骤,以重新确定所述目标云硬盘的I/O参数的分配值。
15.根据权利要求1所述的方法,其特征在于,所述根据所述任一优先级组对应的云硬盘数量、所述任一优先级组的I/O参数的分配值以及所述目标云硬盘对应的云主机的数量确定所述任一优先级组中任一云主机访问所述目标云硬盘的I/O参数的分配值的步骤之后,还包括:
若检测到目标宿主机中任一云主机删除挂载的云硬盘,则返回执行所述获取存储后端的目标宿主机的I/O参数的分配值的步骤,以重新确定所述目标云硬盘的I/O参数的分配值。
16.根据权利要求1所述的方法,其特征在于,所述I/O参数的分配值为读带宽的分配值、写带宽的分配值以及每秒进行读写操作的次数的分配值中的任一个。
17.一种计算机设备,其特征在于,包括处理器、存储器及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1至16中任一项所述方法的步骤。
18.一种云平台,其特征在于,所述云平台包括存储后端、所有宿主机以及权利要求17所述的计算机设备。
19.根据权利要求18所述的云平台,其特征在于,各宿主机内创建有各优先级组对应的控制组群,各优先级组的控制组群中配置控制文件系统;
所述计算机设备还用于将所述目标云硬盘的I/O参数的分配值以及对应的云主机的标识信息写入所述任一优先级组的控制组群;
所述任一优先级组的控制组群中的控制文件系统基于所述对应的云主机的标识信息识别出所述对应的云主机,并基于所述目标云硬盘的I/O参数的分配值控制所述任一优先级组的对应的云主机对目标云硬盘的I/O参数的访问。
20.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至16中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410228146.5A CN117806571B (zh) | 2024-02-29 | 2024-02-29 | 一种云主机的i/o参数值确定方法、计算机设备及其云平台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410228146.5A CN117806571B (zh) | 2024-02-29 | 2024-02-29 | 一种云主机的i/o参数值确定方法、计算机设备及其云平台 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117806571A true CN117806571A (zh) | 2024-04-02 |
CN117806571B CN117806571B (zh) | 2024-06-07 |
Family
ID=90434969
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410228146.5A Active CN117806571B (zh) | 2024-02-29 | 2024-02-29 | 一种云主机的i/o参数值确定方法、计算机设备及其云平台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117806571B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090187705A1 (en) * | 2008-01-18 | 2009-07-23 | Microsoft Corporation | Fair and dynamic disk input/output bandwidth distribution |
US20140325522A1 (en) * | 2013-04-18 | 2014-10-30 | Alibaba Group Holding Limited | Method and device for scheduling virtual disk input and output ports |
CN109802976A (zh) * | 2017-11-16 | 2019-05-24 | 航天信息股份有限公司 | Open Stack云平台的云硬盘动态调度方法、装置以及电子系统 |
CN110308875A (zh) * | 2019-06-27 | 2019-10-08 | 深信服科技股份有限公司 | 数据读写方法、装置、设备及计算机可读存储介质 |
US10587527B1 (en) * | 2017-10-13 | 2020-03-10 | Veritas Technologies Llc | Systems and methods for apportioning bandwidth in storage systems |
CN111880750A (zh) * | 2020-08-13 | 2020-11-03 | 腾讯科技(深圳)有限公司 | 磁盘读写资源的分配方法、装置、设备及存储介质 |
US20220222013A1 (en) * | 2021-01-14 | 2022-07-14 | EMC IP Holding Company LLC | Scheduling storage system tasks to promote low latency and sustainability |
-
2024
- 2024-02-29 CN CN202410228146.5A patent/CN117806571B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090187705A1 (en) * | 2008-01-18 | 2009-07-23 | Microsoft Corporation | Fair and dynamic disk input/output bandwidth distribution |
US20140325522A1 (en) * | 2013-04-18 | 2014-10-30 | Alibaba Group Holding Limited | Method and device for scheduling virtual disk input and output ports |
US10587527B1 (en) * | 2017-10-13 | 2020-03-10 | Veritas Technologies Llc | Systems and methods for apportioning bandwidth in storage systems |
CN109802976A (zh) * | 2017-11-16 | 2019-05-24 | 航天信息股份有限公司 | Open Stack云平台的云硬盘动态调度方法、装置以及电子系统 |
CN110308875A (zh) * | 2019-06-27 | 2019-10-08 | 深信服科技股份有限公司 | 数据读写方法、装置、设备及计算机可读存储介质 |
CN111880750A (zh) * | 2020-08-13 | 2020-11-03 | 腾讯科技(深圳)有限公司 | 磁盘读写资源的分配方法、装置、设备及存储介质 |
US20220222013A1 (en) * | 2021-01-14 | 2022-07-14 | EMC IP Holding Company LLC | Scheduling storage system tasks to promote low latency and sustainability |
Non-Patent Citations (1)
Title |
---|
赵龙乾等: "基于云端协同计算架构的边缘端 I/O 密集型虚拟机资源分配方案", 《计算机应用研究》, vol. 37, no. 9, 30 September 2020 (2020-09-30), pages 2734 - 2738 * |
Also Published As
Publication number | Publication date |
---|---|
CN117806571B (zh) | 2024-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11073999B2 (en) | Extent migration in multi-tier storage systems | |
US10922269B2 (en) | Proactive optimizations at multi-tier file systems | |
US10356150B1 (en) | Automated repartitioning of streaming data | |
US7975112B2 (en) | Switch apparatus | |
US9823875B2 (en) | Transparent hybrid data storage | |
US10616134B1 (en) | Prioritizing resource hosts for resource placement | |
US10684996B1 (en) | Distributing data of multiple logically independent file systems in distributed storage systems including physically partitioned disks | |
US20220091763A1 (en) | Storage capacity forecasting for storage systems in an active tier of a storage environment | |
US9983806B2 (en) | Storage controlling apparatus, information processing apparatus, and computer-readable recording medium having stored therein storage controlling program | |
WO2019055601A1 (en) | SYSTEMS AND METHODS FOR CALCULATING AN INFRASTRUCTURE RESOURCE ALLOCATION | |
US10956062B2 (en) | Aggregating separate data within a single data log wherein single data log is divided in a plurality of blocks assigned to plurality of different streams | |
US9612746B1 (en) | Allocation method for meeting system performance and application service level objective (SLO) | |
CN112948279A (zh) | 管理存储系统中的访问请求的方法、设备和程序产品 | |
CN112256433B (zh) | 基于Kafka集群的分区迁移方法和装置 | |
CN116450053B (zh) | 数据存储方法、装置、系统、电子设备和存储介质 | |
EP4258096A1 (en) | Predictive block storage size provisioning for cloud storage volumes | |
US11403026B2 (en) | Method, device and computer program product for managing storage system | |
US20210389994A1 (en) | Automated performance tuning using workload profiling in a distributed computing environment | |
CN117806571B (zh) | 一种云主机的i/o参数值确定方法、计算机设备及其云平台 | |
CN114116189A (zh) | 任务处理的方法、装置和计算设备 | |
JP2021197010A (ja) | 分散型ストレージシステム及びリバランス処理方法 | |
CN114661249B (zh) | 数据存储方法、装置、计算机设备和存储介质 | |
US11381468B1 (en) | Identifying correlated resource behaviors for resource allocation | |
US11740789B2 (en) | Automated storage capacity provisioning using machine learning techniques | |
JP2021105772A (ja) | リソース利用量の予測管理システム、リソース利用量の予測管理方法 |
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 |