CN112231058A - 一种突破numa拓扑限制创建云主机的方法及装置 - Google Patents
一种突破numa拓扑限制创建云主机的方法及装置 Download PDFInfo
- Publication number
- CN112231058A CN112231058A CN202011111570.XA CN202011111570A CN112231058A CN 112231058 A CN112231058 A CN 112231058A CN 202011111570 A CN202011111570 A CN 202011111570A CN 112231058 A CN112231058 A CN 112231058A
- Authority
- CN
- China
- Prior art keywords
- cloud host
- resource specification
- metadata
- cpu
- numa
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 230000015654 memory Effects 0.000 claims abstract description 102
- 238000012795 verification Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 7
- 238000006467 substitution reaction Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000011084 recovery Methods 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/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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- 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/45562—Creating, deleting, cloning virtual machine instances
-
- 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/45583—Memory management, e.g. access or allocation
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种突破NUMA拓扑限制创建云主机的方法及装置,所述方法包括如下步骤:S1.创建云主机资源规格,设置云主机资源规格包括至少2个CPU和至少2个内存;S2.对云主机资源规格的元数据进行配置,通过元数据设定创建云主机时绑定CPU;S3.云主机控制器接收到云主机创建请求后,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机创建;S4.云主机控制器接收到云主机扩容请求时,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机扩容。
Description
技术领域
本发明属于云主机创建技术领域,具体涉及一种突破NUMA拓扑限制创建云主机的方法及装置。
背景技术
NUMA,是Non-Uniform Memory Access的简称,非一致性内存访问,这种构架下,不同的内存器件和CPU核心从属不同的NUMA节点,每个NUMA节点都有自己的集成内存控制器。
Openstack是一个基础设施及服务(IaaS)的云计算平台,通过将整个数据中心里的资源池化来提供计算、网络、存储等基础服务。基于OpenStack的云管理平台会在云环境创建虚拟机以及绑定CPU,但是当某个NUMA节点CPU资源不足时,会导致创建失败。而我们希望可以由用户指定跨NUMA分配CPU资源,成功创建虚拟机。
NUMA架构通常包括:一个物理CPU(一般包含多个逻辑CPU或者说多个核心)构成一个NUMA节点,这个NUMA节点不仅包括CPU,还包括一组内存插槽,也就是说一个物理CPU以及一块内存构成了一个NUMA节点。每个CPU可以访问自己NUMA节点下的内存,也可以访问其他NUMA节点的内存,但是访问速度是不一样的,自己NUMA节点下的更快。在对性能有比较高要求的情况下,非常需要同一个虚拟机的虚拟CPU尽量被分配到同一个NUMA节点中的物理CPU上,很适合这种NUMA架构。
目前基于numa架构创建虚拟机存在以下问题:1.当某个NUMA节点CPU资源不足时,我们创建虚拟机并且绑定CPU的话会导致虚拟机创建失败,这在一定程度上造成了CPU资源的浪费,并不是部署所有需求都需要高性能场景;2.绑定了CPU的云主机虚拟机热扩容之后会导致原有的绑定关系消失,CPU的NUMA拓扑和内存NUMA拓扑也会发生改变。
此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种突破numa拓扑限制创建云主机的方法及装置,是非常有必要的。
发明内容
针对现有技术的上述现有的NUMA架构会导致虚拟机创建失败和热扩容之后绑定关系消失的缺陷,本发明提供一种突破numa拓扑限制创建云主机的方法及装置,以解决上述技术问题。
第一方面,本发明提供一种突破NUMA拓扑限制创建云主机的方法,包括如下步骤:
S1.创建云主机资源规格,设置云主机资源规格包括至少2个CPU和至少2个内存;
S2.对云主机资源规格的元数据进行配置,通过元数据设定创建云主机时绑定CPU;
S3.云主机控制器接收到云主机创建请求后,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机创建;
S4.云主机控制器接收到云主机扩容请求时,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机扩容。
进一步地,步骤S1具体步骤如下:
S11.选择多路物理服务器,所述选择的多路物理服务器至少有两个NUMA节点;
S12.基于多路服务器创建第一云主机资源规格,设置第一云主机资源规格的CPU数、内存数以及硬盘大小,所述第一云主机资源规格的CPU数至少为2个,所述第一云主机资源规格的内存数至少为2个;
S13.基于多路服务器创建第二云主机资源规格,设置第二云主机资源规格的CPU数、内存数以及硬盘大小,所述第二云主机资源规格的CPU数至少为2个,所述第二云主机资源规格的内存数至少为2个。
进一步地,步骤S2具体步骤如下:
S21.对第一云主机资源规格的元数据进行配置,设置CPU绑定元数据为CPU专用,实现创建云主机时绑定CPU;
S22.设置第一云主机资源规格的NUMA节点数元数据,为每个NUMA节点分配对应CPU元数据和内存元数据;
S23.对第二云主机资源规格的元数据进行配置,设置CPU绑定元数据为CPU专用,实现扩容云主机时绑定CPU;
S24.设置第二云主机资源规格的NUMA节点数元数据,为每个NUMA节点分配对应CPU元数据和内存元数据。元数据配置实现了虚拟NUMA结构的设定,为下一步云主机创建及热扩容做好准备。
进一步地,步骤S3具体步骤如下:
S31.云主机控制器接收到云主机创建请求后,根据第一云主机资源规格计算主机资源是否充足;
若充足,进入步骤S32;
若不充足,返回步骤S1;
S32.选择项目用户、多路物理服务器、第一云主机资源规格以及网络安全组创建第一云主机;
S33.验证第一云主机的CPU绑定关系是否绑定多个CPU及多个内存,且各CPU及各内存属于不同NUMA节点;
若是,云主机创建成功;
若否,返回步骤S1。配置好元数据之后,使用第一云主机资源规格创建虚拟机时,将在n个NUMA节点上为虚拟机分配CPU和内存资源,分配策略由元数据指定,创建成功后,查看虚拟机CPU详情,可以查询到CPU绑定关系,并且发现所绑定的物理CPU属于不同的NUMA节点。
进一步地,步骤S4具体步骤如下:
S41.云主机控制器接收到云主机扩容请求后,根据第二云主机资源规格计算主机资源是否充足;
若充足,进入步骤S42;
若不充足,返回步骤S1;
S42.选择跨NUMA创建的第一云主机以及第二云主机资源规格进行热扩容;
S43.验证热扩容后云主机的CPU绑定关系是否绑定多个CPU及多个内存,且各CPU及各内存属于不同NUMA节点;
若是,云主机热扩容成功;
若否,返回步骤S1。按照步骤3跨NUMA节点创建的虚拟机进行热扩容时,要扩容的第二云主机资源规格也进行元数据配置,使得云主机扩容过程中进行原有绑定关系释放--重新绑定的操作。
第二方面,本发明提供一种突破NUMA拓扑限制创建云主机的装置,包括:
云主机资源规格创建模块,用于创建云主机资源规格,设置云主机资源规格包括至少2个CPU和至少2个内存;
元数据配置电模块,用于对云主机资源规格的元数据进行配置,通过元数据设定创建云主机时绑定CPU;
云主机跨NUMA创建模块,用于设置云主机控制器接收到云主机创建请求后,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机创建;
云主机跨NUMA扩容模块,用于设置云主机控制器接收到云主机扩容请求时,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机扩容。
进一步地,云主机资源规格创建模块包括:
多路服务器选择单元,用于选择多路物理服务器,所述选择的多路物理服务器至少有两个NUMA节点;
第一云主机资源规格创建单元,用于基于多路服务器创建第一云主机资源规格,设置第一云主机资源规格的CPU数、内存数以及硬盘大小,所述第一云主机资源规格的CPU数至少为2个,所述第一云主机资源规格的内存数至少为2个;
第二云主机资源规格创建单元,用于基于多路服务器创建第二云主机资源规格,设置第二云主机资源规格的CPU数、内存数以及硬盘大小,所述第二云主机资源规格的CPU数至少为2个,所述第二云主机资源规格的内存数至少为2个。
进一步地,元数据配置电模块包括:
第一云主机资源规格CPU绑定元数据配置单元,用于对第一云主机资源规格的元数据进行配置,设置CPU绑定元数据为CPU专用,实现创建云主机时绑定CPU;
第一云主机资源规格CPU及内存元数据配置单元,用于设置第一云主机资源规格的NUMA节点数元数据,为每个NUMA节点分配对应CPU元数据和内存元数据;
第二云主机资源规格CPU及内存元数据配置单元,用于对第二云主机资源规格的元数据进行配置,设置CPU绑定元数据为CPU专用,实现扩容云主机时绑定CPU;
第二云主机资源规格CPU及内存元数据配置单元,用于设置第二云主机资源规格的NUMA节点数元数据,为每个NUMA节点分配对应CPU元数据和内存元数据。
进一步地,云主机跨NUMA创建模块包括:
云主机创建主机资源计算单元,用于云主机控制器接收到云主机创建请求后,根据第一云主机资源规格计算主机资源是否充足;
第一云主机创建单元,用于主机资源充足时,选择项目用户、多路物理服务器、第一云主机资源规格以及网络安全组创建第一云主机;
第一云主机创建验证单元,用于验证第一云主机的CPU绑定关系是否绑定多个CPU及多个内存,且各CPU及各内存属于不同NUMA节点。
进一步地,云主机跨NUMA扩容模块包括:
云主机扩容主机资源计算单元,云主机控制器接收到云主机扩容请求后,根据第二云主机资源规格计算主机资源是否充足;
云主机热扩容单元,用于主机资源充足时,选择跨NUMA创建的第一云主机以及第二云主机资源规格进行热扩容;
云主机热扩容验证单元,用于验证热扩容后云主机的CPU绑定关系是否绑定多个CPU及多个内存,且各CPU及各内存属于不同NUMA节点。
本发明的有益效果在于,
本发明提供的突破NUMA拓扑限制创建云主机的方法及装置,通过设定虚拟NUMA结构,手动分配对物理NUMA核的映射,通过配置元数据的方式来实现跨NUMA分配CPU和内存资源,确保虚拟机创建成功并合理分配物理CPU资源,解决了openstack环境主机节点的VCPU配额满足需求,在CPU隔离的情况下创建虚拟机失败的问题,提升了openstack云管理平台产品质量,减少物理机性能损耗,提高***的稳定性和企业恢复生产的时效性。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的方法流程示意图一;
图2是本发明的方法流程示意图二;
图3是本发明的***示意图;
图中,1-云主机资源规格创建模块;1.1-多路服务器选择单元;1.2-第一云主机资源规格创建单元;1.3-第二云主机资源规格创建单元;2-元数据配置电模块;2.1-第一云主机资源规格CPU绑定元数据配置单元;2.2-第一云主机资源规格CPU及内存元数据配置单元;2.3-第二云主机资源规格CPU及内存元数据配置单元;2.4-第二云主机资源规格CPU及内存元数据配置单元;3-云主机跨NUMA创建模块;3.1-云主机创建主机资源计算单元;3.2-第一云主机创建单元;3.3-第一云主机创建验证单元;3.4-云主机扩容主机资源计算单元;4-云主机跨NUMA扩容模块;4.1-云主机扩容主机资源计算单元;4.2-云主机热扩容单元;4.3-云主机热扩容验证单元。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
实施例1:
如图1所示,本发明提供一种突破NUMA拓扑限制创建云主机的方法,包括如下步骤:
S1.创建云主机资源规格,设置云主机资源规格包括至少2个CPU和至少2个内存;
S2.对云主机资源规格的元数据进行配置,通过元数据设定创建云主机时绑定CPU;
S3.云主机控制器接收到云主机创建请求后,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机创建;
S4.云主机控制器接收到云主机扩容请求时,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机扩容。
实施例2:
如图2所示,本发明提供一种突破NUMA拓扑限制创建云主机的方法,包括如下步骤:
S1.创建云主机资源规格,设置云主机资源规格包括至少2个CPU和至少2个内存;具体步骤如下:
S11.选择多路物理服务器,所述选择的多路物理服务器至少有两个NUMA节点;
S12.基于多路服务器创建第一云主机资源规格,设置第一云主机资源规格的CPU数、内存数以及硬盘大小,所述第一云主机资源规格的CPU数至少为2个,所述第一云主机资源规格的内存数至少为2个;
S13.基于多路服务器创建第二云主机资源规格,设置第二云主机资源规格的CPU数、内存数以及硬盘大小,所述第二云主机资源规格的CPU数至少为2个,所述第二云主机资源规格的内存数至少为2个;
S2.对云主机资源规格的元数据进行配置,通过元数据设定创建云主机时绑定CPU;具体步骤如下:
S21.对第一云主机资源规格的元数据进行配置,设置CPU绑定元数据为CPU专用,实现创建云主机时绑定CPU;
S22.设置第一云主机资源规格的NUMA节点数元数据,为每个NUMA节点分配对应CPU元数据和内存元数据;
S23.对第二云主机资源规格的元数据进行配置,设置CPU绑定元数据为CPU专用,实现扩容云主机时绑定CPU;
S24.设置第二云主机资源规格的NUMA节点数元数据,为每个NUMA节点分配对应CPU元数据和内存元数据;
S3.云主机控制器接收到云主机创建请求后,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机创建;具体步骤如下:
S31.云主机控制器接收到云主机创建请求后,根据第一云主机资源规格计算主机资源是否充足;
若充足,进入步骤S32;
若不充足,返回步骤S1;
S32.选择项目用户、多路物理服务器、第一云主机资源规格以及网络安全组创建第一云主机;
S33.验证第一云主机的CPU绑定关系是否绑定多个CPU及多个内存,且各CPU及各内存属于不同NUMA节点;
若是,云主机创建成功;
若否,返回步骤S1;
S4.云主机控制器接收到云主机扩容请求时,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机扩容;具体步骤如下:
S41.云主机控制器接收到云主机扩容请求后,根据第二云主机资源规格计算主机资源是否充足;
若充足,进入步骤S42;
若不充足,返回步骤S1;
S42.选择跨NUMA创建的第一云主机以及第二云主机资源规格进行热扩容;
S43.验证热扩容后云主机的CPU绑定关系是否绑定多个CPU及多个内存,且各CPU及各内存属于不同NUMA节点;
若是,云主机热扩容成功;
若否,返回步骤S1。
实施例3:
本发明提供一种突破NUMA拓扑限制创建云主机的方法,包括如下步骤:
S1.创建云主机资源规格,设置云主机资源规格包括至少2个CPU和至少2个内存;具体步骤如下:
S11.选择多路物理服务器A,多路服务器A为4路以上,至少拥有四个NUMA节点;
S12.基于多路服务器A创建第一云主机资源规格B1,设置第一云主机资源规格B1的CPU数为2、内存数为2GB以及硬盘大小20GB;
S13.基于多路服务器A创建第二云主机资源规格B2,设置第二云主机资源规格B2的CPU数为4、内存数为4GB以及硬盘大小40GB;
S2.对云主机资源规格的元数据进行配置,通过元数据设定创建云主机时绑定CPU;具体步骤如下:
S21.对第一云主机资源规格的元数据进行配置,设置CPU绑定元数据为CPU专用,实现创建云主机时绑定CPU;hw:cpu_policy=dedicated;
S22.设置第一云主机资源规格B1的NUMA节点数元数据,为每个NUMA节点分配对应CPU元数据和内存元数据;具体为:hw:numa_nodes=2、hw:numa_cpus.0=0、hw:numa_cpus.1=1、hw:numa_mems.0=1024、hw:numa_mem.1=1;
S23.对第二云主机资源规格的元数据进行配置,设置CPU绑定元数据为CPU专用,实现扩容云主机时绑定CPU;具体为hw:cpu_policy=dedicated;
S24.设置第二云主机资源规格的NUMA节点数元数据,为每个NUMA节点分配对应CPU元数据和内存元数据;具体为:hw:numa_nodes=4、hw:numa_cpus.0=0、hw:numa_cpus.1=1、hw:numa_cpus.2=2、hw:numa_cpus.3=3、hw:numa_mems.0=1024、hw:numa_mem.1=1024、hw:numa_mems.2=1024、hw:numa_mem.3=1024;
S3.云主机控制器接收到云主机创建请求后,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机创建;具体步骤如下:
S31.云主机控制器接收到云主机创建请求后,根据第一云主机资源规格计算主机资源是否充足;
若充足,进入步骤S32;
若不充足,返回步骤S1;
S32.选择项目用户、多路物理服务器A、第一云主机资源规格B1以及网络安全组创建第一云主机C;
S33.验证第一云主机C的CPU绑定关系是否绑定多个CPU及多个内存,且各CPU及各内存属于不同NUMA节点;进入云主机即可查看CPU绑定关系;
若是结果为虚拟CPU0绑定在物理CPU node0上,虚拟CPU1绑定在物理CPU node1上,内存同样平均分配,云主机创建成功;
若否,返回步骤S1;
S4.云主机控制器接收到云主机扩容请求时,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机扩容;具体步骤如下:
S41.云主机控制器接收到云主机扩容请求后,根据第二云主机资源规格计算主机资源是否充足;
若充足,进入步骤S42;
若不充足,返回步骤S1;
S42.选择跨NUMA创建的第一云主机C以及第二云主机资源规格B2进行热扩容;
S43.验证热扩容后云主机的CPU绑定关系是否绑定多个CPU及多个内存,且各CPU及各内存属于不同NUMA节点;
若是四个虚拟CPU都分配在不同的物理CPU上,内存同样平均分配,云主机热扩容成功;
若否,返回步骤S1。
实施例4:
如图3所示,本发明提供一种突破NUMA拓扑限制创建云主机的装置,包括:
云主机资源规格创建模块1,用于创建云主机资源规格,设置云主机资源规格包括至少2个CPU和至少2个内存;云主机资源规格创建模块1包括:
多路服务器选择单元1.1,用于选择多路物理服务器,所述选择的多路物理服务器至少有两个NUMA节点;
第一云主机资源规格创建单元1.2,用于基于多路服务器创建第一云主机资源规格,设置第一云主机资源规格的CPU数、内存数以及硬盘大小,所述第一云主机资源规格的CPU数至少为2个,所述第一云主机资源规格的内存数至少为2个;
第二云主机资源规格创建单元1.3,用于基于多路服务器创建第二云主机资源规格,设置第二云主机资源规格的CPU数、内存数以及硬盘大小,所述第二云主机资源规格的CPU数至少为2个,所述第二云主机资源规格的内存数至少为2个;
元数据配置电模块2,用于对云主机资源规格的元数据进行配置,通过元数据设定创建云主机时绑定CPU;元数据配置电模块2包括:
第一云主机资源规格CPU绑定元数据配置单元2.1,用于对第一云主机资源规格的元数据进行配置,设置CPU绑定元数据为CPU专用,实现创建云主机时绑定CPU;
第一云主机资源规格CPU及内存元数据配置单元2.2,用于设置第一云主机资源规格的NUMA节点数元数据,为每个NUMA节点分配对应CPU元数据和内存元数据;
第二云主机资源规格CPU及内存元数据配置单元2.3,用于对第二云主机资源规格的元数据进行配置,设置CPU绑定元数据为CPU专用,实现扩容云主机时绑定CPU;
第二云主机资源规格CPU及内存元数据配置单元2.4,用于设置第二云主机资源规格的NUMA节点数元数据,为每个NUMA节点分配对应CPU元数据和内存元数据;
云主机跨NUMA创建模块3,用于设置云主机控制器接收到云主机创建请求后,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机创建;云主机跨NUMA创建模块3包括:
云主机创建主机资源计算单元3.1,用于云主机控制器接收到云主机创建请求后,根据第一云主机资源规格计算主机资源是否充足;
第一云主机创建单元3.2,用于主机资源充足时,选择项目用户、多路物理服务器、第一云主机资源规格以及网络安全组创建第一云主机;
第一云主机创建验证单元3.3,用于验证第一云主机的CPU绑定关系是否绑定多个CPU及多个内存,且各CPU及各内存属于不同NUMA节点;
云主机跨NUMA扩容模块4,用于设置云主机控制器接收到云主机扩容请求时,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机扩容;云主机跨NUMA扩容模块4包括:
云主机扩容主机资源计算单元4.1,云主机控制器接收到云主机扩容请求后,根据第二云主机资源规格计算主机资源是否充足;
云主机热扩容单元4.2,用于主机资源充足时,选择跨NUMA创建的第一云主机以及第二云主机资源规格进行热扩容;
云主机热扩容验证单元4.3,用于验证热扩容后云主机的CPU绑定关系是否绑定多个CPU及多个内存,且各CPU及各内存属于不同NUMA节点。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种突破NUMA拓扑限制创建云主机的方法,其特征在于,包括如下步骤:
S1.创建云主机资源规格,设置云主机资源规格包括至少2个CPU和至少2个内存;
S2.对云主机资源规格的元数据进行配置,通过元数据设定创建云主机时绑定CPU;
S3.云主机控制器接收到云主机创建请求后,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机创建;
S4.云主机控制器接收到云主机扩容请求时,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机扩容。
2.如权利要求1所述的突破NUMA拓扑限制创建云主机的方法,其特征在于,步骤S1具体步骤如下:
S11.选择多路物理服务器,所述选择的多路物理服务器至少有两个NUMA节点;
S12.基于多路服务器创建第一云主机资源规格,设置第一云主机资源规格的CPU数、内存数以及硬盘大小,所述第一云主机资源规格的CPU数至少为2个,所述第一云主机资源规格的内存数至少为2个;
S13.基于多路服务器创建第二云主机资源规格,设置第二云主机资源规格的CPU数、内存数以及硬盘大小,所述第二云主机资源规格的CPU数至少为2个,所述第二云主机资源规格的内存数至少为2个。
3.如权利要求2所述的突破NUMA拓扑限制创建云主机的方法,其特征在于,步骤S2具体步骤如下:
S21.对第一云主机资源规格的元数据进行配置,设置CPU绑定元数据为CPU专用,实现创建云主机时绑定CPU;
S22.设置第一云主机资源规格的NUMA节点数元数据,为每个NUMA节点分配对应CPU元数据和内存元数据;
S23.对第二云主机资源规格的元数据进行配置,设置CPU绑定元数据为CPU专用,实现扩容云主机时绑定CPU;
S24.设置第二云主机资源规格的NUMA节点数元数据,为每个NUMA节点分配对应CPU元数据和内存元数据。
4.如权利要求3所述的突破NUMA拓扑限制创建云主机的方法,其特征在于,步骤S3具体步骤如下:
S31.云主机控制器接收到云主机创建请求后,根据第一云主机资源规格计算主机资源是否充足;
若充足,进入步骤S32;
若不充足,返回步骤S1;
S32.选择项目用户、多路物理服务器、第一云主机资源规格以及网络安全组创建第一云主机;
S33.验证第一云主机的CPU绑定关系是否绑定多个CPU及多个内存,且各CPU及各内存属于不同NUMA节点;
若是,云主机创建成功;
若否,返回步骤S1。
5.如权利要求4所述的突破NUMA拓扑限制创建云主机的方法,其特征在于,步骤S4具体步骤如下:
S41.云主机控制器接收到云主机扩容请求后,根据第二云主机资源规格计算主机资源是否充足;
若充足,进入步骤S42;
若不充足,返回步骤S1;
S42.选择跨NUMA创建的第一云主机以及第二云主机资源规格进行热扩容;
S43.验证热扩容后云主机的CPU绑定关系是否绑定多个CPU及多个内存,且各CPU及各内存属于不同NUMA节点;
若是,云主机热扩容成功;
若否,返回步骤S1。
6.一种突破NUMA拓扑限制创建云主机的装置,其特征在于,包括:
云主机资源规格创建模块(1),用于创建云主机资源规格,设置云主机资源规格包括至少2个CPU和至少2个内存;
元数据配置电模块(2),用于对云主机资源规格的元数据进行配置,通过元数据设定创建云主机时绑定CPU;
云主机跨NUMA创建模块(3),用于设置云主机控制器接收到云主机创建请求后,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机创建;
云主机跨NUMA扩容模块(4),用于设置云主机控制器接收到云主机扩容请求时,根据云主机资源规格计算主机资源是否充足,并在主机资源充足时,根据配置的元数据进行云主机扩容。
7.如权利要求6所述的突破NUMA拓扑限制创建云主机的装置,其特征在于,云主机资源规格创建模块(1)包括:
多路服务器选择单元(1.1),用于选择多路物理服务器,所述选择的多路物理服务器至少有两个NUMA节点;
第一云主机资源规格创建单元(1.2),用于基于多路服务器创建第一云主机资源规格,设置第一云主机资源规格的CPU数、内存数以及硬盘大小,所述第一云主机资源规格的CPU数至少为2个,所述第一云主机资源规格的内存数至少为2个;
第二云主机资源规格创建单元(1.3),用于基于多路服务器创建第二云主机资源规格,设置第二云主机资源规格的CPU数、内存数以及硬盘大小,所述第二云主机资源规格的CPU数至少为2个,所述第二云主机资源规格的内存数至少为2个。
8.如权利要求7所述的突破NUMA拓扑限制创建云主机的装置,其特征在于,元数据配置电模块(2)包括:
第一云主机资源规格CPU绑定元数据配置单元(2.1),用于对第一云主机资源规格的元数据进行配置,设置CPU绑定元数据为CPU专用,实现创建云主机时绑定CPU;
第一云主机资源规格CPU及内存元数据配置单元(2.2),用于设置第一云主机资源规格的NUMA节点数元数据,为每个NUMA节点分配对应CPU元数据和内存元数据;
第二云主机资源规格CPU及内存元数据配置单元(2.3),用于对第二云主机资源规格的元数据进行配置,设置CPU绑定元数据为CPU专用,实现扩容云主机时绑定CPU;
第二云主机资源规格CPU及内存元数据配置单元(2.4),用于设置第二云主机资源规格的NUMA节点数元数据,为每个NUMA节点分配对应CPU元数据和内存元数据。
9.如权利要求8所述的突破NUMA拓扑限制创建云主机的装置,其特征在于,云主机跨NUMA创建模块(3)包括:
云主机创建主机资源计算单元(3.1),用于云主机控制器接收到云主机创建请求后,根据第一云主机资源规格计算主机资源是否充足;
第一云主机创建单元(3.2),用于主机资源充足时,选择项目用户、多路物理服务器、第一云主机资源规格以及网络安全组创建第一云主机;
第一云主机创建验证单元(3.3),用于验证第一云主机的CPU绑定关系是否绑定多个CPU及多个内存,且各CPU及各内存属于不同NUMA节点。
10.如权利要求9所述的突破NUMA拓扑限制创建云主机的装置,其特征在于,云主机跨NUMA扩容模块(4)包括:
云主机扩容主机资源计算单元(4.1),云主机控制器接收到云主机扩容请求后,根据第二云主机资源规格计算主机资源是否充足;
云主机热扩容单元(4.2),用于主机资源充足时,选择跨NUMA创建的第一云主机以及第二云主机资源规格进行热扩容;
云主机热扩容验证单元(4.3),用于验证热扩容后云主机的CPU绑定关系是否绑定多个CPU及多个内存,且各CPU及各内存属于不同NUMA节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011111570.XA CN112231058A (zh) | 2020-10-16 | 2020-10-16 | 一种突破numa拓扑限制创建云主机的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011111570.XA CN112231058A (zh) | 2020-10-16 | 2020-10-16 | 一种突破numa拓扑限制创建云主机的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112231058A true CN112231058A (zh) | 2021-01-15 |
Family
ID=74117785
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011111570.XA Withdrawn CN112231058A (zh) | 2020-10-16 | 2020-10-16 | 一种突破numa拓扑限制创建云主机的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112231058A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113590313A (zh) * | 2021-07-08 | 2021-11-02 | 杭州朗和科技有限公司 | 负载均衡方法、装置、存储介质和计算设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108196958A (zh) * | 2017-12-29 | 2018-06-22 | 北京泽塔云科技股份有限公司 | 资源调度分配方法、计算机***及超融合架构*** |
CN110750336A (zh) * | 2019-10-29 | 2020-02-04 | 北京浪潮数据技术有限公司 | 一种OpenStack虚拟机内存热扩容方法 |
CN111104219A (zh) * | 2019-11-30 | 2020-05-05 | 北京浪潮数据技术有限公司 | 虚拟核心与物理核心的绑定方法、装置、设备及存储介质 |
CN111147281A (zh) * | 2019-11-29 | 2020-05-12 | 苏州浪潮智能科技有限公司 | 一种云主机热扩容自动匹配方法及*** |
-
2020
- 2020-10-16 CN CN202011111570.XA patent/CN112231058A/zh not_active Withdrawn
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108196958A (zh) * | 2017-12-29 | 2018-06-22 | 北京泽塔云科技股份有限公司 | 资源调度分配方法、计算机***及超融合架构*** |
CN110750336A (zh) * | 2019-10-29 | 2020-02-04 | 北京浪潮数据技术有限公司 | 一种OpenStack虚拟机内存热扩容方法 |
CN111147281A (zh) * | 2019-11-29 | 2020-05-12 | 苏州浪潮智能科技有限公司 | 一种云主机热扩容自动匹配方法及*** |
CN111104219A (zh) * | 2019-11-30 | 2020-05-05 | 北京浪潮数据技术有限公司 | 虚拟核心与物理核心的绑定方法、装置、设备及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113590313A (zh) * | 2021-07-08 | 2021-11-02 | 杭州朗和科技有限公司 | 负载均衡方法、装置、存储介质和计算设备 |
CN113590313B (zh) * | 2021-07-08 | 2024-02-02 | 杭州网易数之帆科技有限公司 | 负载均衡方法、装置、存储介质和计算设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11714671B2 (en) | Creating virtual machine groups based on request | |
US9229749B2 (en) | Compute and storage provisioning in a cloud environment | |
US9703654B2 (en) | Method, system, and apparatus for cloud application redundancy | |
CN103999031B (zh) | 云服务器的虚拟私有存储阵列服务 | |
US11669360B2 (en) | Seamless virtual standard switch to virtual distributed switch migration for hyper-converged infrastructure | |
CN105095317B (zh) | 分布式数据库服务管理*** | |
CN105706056A (zh) | 现代硬件上的故障域 | |
EP3432132B1 (en) | Data storage method and device | |
WO2017080257A1 (zh) | 一种基于键值对的数据处理方法及*** | |
CN113032085A (zh) | 云操作***的管理方法、装置、服务器、管理***及介质 | |
US11768624B2 (en) | Resilient implementation of client file operations and replication | |
CN103577122B (zh) | 分布式应用***在平台间迁移的实现方法及装置 | |
WO2019000535A1 (zh) | 云平台的构建方法及云平台 | |
CN105468296A (zh) | 基于虚拟化平台的无共享存储管理方法 | |
KR20160121380A (ko) | 토러스 네트워크를 이용하는 분산 파일 시스템 및 토러스 네트워크를 이용하는 분산 파일 시스템의 구성 및 운영 방법 | |
CN112231058A (zh) | 一种突破numa拓扑限制创建云主机的方法及装置 | |
CN108228099A (zh) | 一种数据存储的方法及装置 | |
CN115687250A (zh) | 一种存储方法、设备、***和计算机存储介质 | |
CN111382326A (zh) | 实例组创建方法、装置、服务器及存储介质 | |
Das | Distributed File Systems Implementation on an Edge Router using GlusterFS for Cloud Applications | |
Li et al. | DVMP: Incremental traffic-aware VM placement on heterogeneous servers in data centers | |
JP6650850B2 (ja) | 計算装置および計算方法 | |
CN117648053A (zh) | 一种数据存储方法、***、设备及可读存储介质 | |
Yu et al. | Survivable virtual infrastructure mappings in multi-datacenter systems | |
US10223019B1 (en) | Policy-driven volume expansion |
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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210115 |
|
WW01 | Invention patent application withdrawn after publication |