CN106933646B - 一种创建虚拟机的方法及装置 - Google Patents
一种创建虚拟机的方法及装置 Download PDFInfo
- Publication number
- CN106933646B CN106933646B CN201511016944.9A CN201511016944A CN106933646B CN 106933646 B CN106933646 B CN 106933646B CN 201511016944 A CN201511016944 A CN 201511016944A CN 106933646 B CN106933646 B CN 106933646B
- Authority
- CN
- China
- Prior art keywords
- volume
- virtual machine
- processing module
- computing node
- node
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000002085 persistent effect Effects 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 239000003818 cinder Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种创建虚拟机的方法及装置,属于通信领域。所述方法包括:与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点;在所述计算节点上创建所述处理模块;接收所述卷创建实体发送的所述卷的卷标识信息,所述卷是所述卷创建实体在所述计算节点上创建的;根据所述卷标识信息,将所述卷挂载在所述处理模块上形成所述待创建虚拟机。所述装置包括:处理单元和接收单元。本发明能够满足高速读写卷的性能需求。
Description
技术领域
本发明涉及通信领域,特别涉及一种创建虚拟机的方法及装置。
背景技术
Openstack(开源的云计算管理平台)是一种用于创建虚拟机的开源云平台,虚拟机包括处理模块和用于处理模块进行读写访问的卷,Openstack提供了Nova(计算资源管理)组件和Cinder(块存储资源管理)组件,该两个组件分别用来创建处理模块和卷。
目前在创建虚拟机时,Nova组件获取待创建虚拟机的虚拟机规格信息,选择一个计算节点,根据该虚拟机规格信息在该计算节点上创建虚拟机的处理模块;Cinder组件获取待创建虚拟机的卷规格信息,选择一个计算节点,根据该卷规格信息,在该计算节点上创建卷,向Nova组件发送该卷的卷标识信息;Nova组件根据该卷标识信息,将该卷挂载在该处理模块上,得到待创建虚拟机。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
创建的处理模块所在的计算节点和创建的卷所在的计算节点可能不同,这样处理模块只能通过网络远程读写卷,无法满足高速读写卷的性能需求。
发明内容
为了满足高速读写卷的性能需求,本发明提供了一种创建虚拟机的方法及装置。所述技术方案如下:
第一方面,提供了一种创建虚拟机的方法,所述方法包括:
与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点;
在所述计算节点上创建所述处理模块;
接收所述卷创建实体发送的所述卷的卷标识信息,所述卷是所述卷创建实体在所述计算节点上创建的;
根据所述卷标识信息,将所述卷挂载在所述处理模块上形成所述待创建虚拟机。
在第一方面中,由于与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,这样保证了在同一计算节点上创建处理模块和创建卷,使得处理模块读写访问卷实质为读写访问本地的存储资源,满足高速读写卷的性能需求。
结合第一方面,在第一方面的第一种可能的实现方式中,所述与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机的虚拟机规格信息,获取满足所述虚拟机规格信息的一个计算节点;
向所述卷创建实体发送所述计算节点的节点标识信息。
在第一方面的第一种可能的实现方式中,由于向卷创建实体直接发送选择的计算节点的节点标识信息,保证创建卷的计算节点和创建处理模块的计算节点为同一计算节点。
结合第一方面,在第一方面的第二种可能的实现方式中,所述与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机的虚拟机规格信息,获取节点列表,所述节点列表包括满足所述虚拟机规格信息的至一个计算节点;
向卷创建实体发送所述节点列表,所述节点列表用于所述卷创建实体从所述节点列表中选择一个计算节点;
接收所述卷创建实体发送的所述选择的一个计算节点的节点标识信息。
在第一方面的第二种可能的实现方式中,由于向卷创建实体发送节点列表,保证了卷创建实体能够选择满足卷规格信息的计算节点。
结合第一方面,在第一方面的第三种可能的实现方式中,所述与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收卷创建实体发送的计算节点的节点标识信息,所述计算节点是所述卷创建实体获取的且满足所述待创建虚拟机对应的卷的卷规格信息。
在第一方面的第三种可能的实现方式中,由于接收卷创建实体发送的计算节点的节点标识信息,保证创建卷的计算节点和创建处理模块的计算节点为同一计算节点。
结合第一方面,在第一方面的第四种可能的实现方式中,所述与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收所述卷创建实体发送的节点列表,所述节点列表包括满足所述待创建虚拟机对应的卷的卷规格信息的至少一个计算节点;
从所述节点列表中选择一个计算节点;
向所述卷创建实体发送所述选择的计算节点的节点标识信息。
在第一方面的第四种可能的实现方式中,由于接收卷创建实体发送的节点列表,保证了能够选择到满足虚拟机规格信息的计算节点。
第二方面、提供了一种创建虚拟机的方法,所述方法包括:
与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点;
在所述计算节点上创建所述卷;
向所述处理模块创建实体发送所述卷的卷标识信息,所述卷标识信息用于所述处理模块创建实体在所述计算节点上创建所述处理模块后将所述卷挂载在所述处理模块上以形成所述待创建虚拟机。
在第二方面中,由于与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,这样保证了在同一计算节点上创建处理模块和创建卷,使得处理模块读写访问卷实质为读写访问本地的存储资源,满足高速读写卷的性能需求。
结合第二方面,在第二方面的第一种可能的实现方式中,所述与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机对应的卷的卷规格信息,获取满足所述卷规格信息的一个计算节点;
向所述处理模块创建实体发送所述计算节点的节点标识信息。
在第二方面的第一种可能的实现方式中,由于向处理模块创建实体直接发送选择的计算节点的节点标识信息,保证创建卷的计算节点和创建处理模块的计算节点为同一计算节点。
结合第二方面,在第二方面的第二种可能的实现方式中,所述与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机对应的卷的卷规格信息,获取节点列表,所述节点列表包括满足所述卷规格信息的至一个计算节点;
向处理模块创建实体发送所述节点列表,所述节点列表用于所述处理模块创建实体从所述节点列表中选择一个计算节点;
接收所述处理模块创建实体发送的所述选择的一个计算节点的节点标识信息。
在第二方面的第二种可能的实现方式中,由于向处理模块创建实体发送节点列表,保证了处理模块创建实体能够选择满足虚拟机规格信息的计算节点。
结合第二方面,在第二方面的第三种可能的实现方式中,所述与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收处理模块创建实体发送的计算节点的节点标识信息,所述计算节点是所述处理模块创建实体获取的且满足所述待创建虚拟机的虚拟机规格信息。
在第二方面的第三种可能的实现方式中,由于接收处理模块创建实体发送的计算节点的节点标识信息,保证创建卷的计算节点和创建处理模块的计算节点为同一计算节点。
结合第二方面,在第二方面的第四种可能的实现方式中,所述与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收所述处理模块创建实体发送的节点列表,所述节点列表包括满足所述待创建虚拟机的虚拟机规格信息的至少一个计算节点;
从所述节点列表中选择一个计算节点;
向所述处理模块创建实体发送所述选择的计算节点的节点标识信息。
在第一方面的第四种可能的实现方式中,由于接收处理模块创建实体发送的节点列表,保证了能够选择到满足虚拟机规格信息的计算节点。
第三方面、提供了一种创建虚拟机的装置,所述装置包括:处理单元和接收单元;
所述处理单元,用于与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点;在所述计算节点上创建所述处理模块;
所述接收单元,用于接收所述卷创建实体发送的所述卷的卷标识信息,所述卷是所述卷创建实体在所述计算节点上创建的;
所述处理单元,还用于根据所述卷标识信息,将所述卷挂载在所述处理模块上形成所述待创建虚拟机。
在第三方面中,由于与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,这样保证了在同一计算节点上创建处理模块和创建卷,使得处理模块读写访问卷实质为读写访问本地的存储资源,满足高速读写卷的性能需求。
结合第三方面,在第三方面的第一种可能的实现方式中,所述处理单元,具体用于使用如下方式与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机的虚拟机规格信息,获取满足所述虚拟机规格信息的一个计算节点;
向所述卷创建实体发送所述计算节点的节点标识信息。
在第三方面的第一种可能的实现方式中,由于向卷创建实体直接发送选择的计算节点的节点标识信息,保证创建卷的计算节点和创建处理模块的计算节点为同一计算节点。
结合第三方面,在第三方面的第二种可能的实现方式中,所述处理单元,具体用于使用如下方式与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机的虚拟机规格信息,获取节点列表,所述节点列表包括满足所述虚拟机规格信息的至一个计算节点;
向卷创建实体发送所述节点列表,所述节点列表用于所述卷创建实体从所述节点列表中选择一个计算节点;
接收所述卷创建实体发送的所述选择的一个计算节点的节点标识信息。
在第三方面的第二种可能的实现方式中,由于向卷创建实体发送节点列表,保证了卷创建实体能够选择满足卷规格信息的计算节点。
结合第三方面,在第三方面的第三种可能的实现方式中,所述处理单元,具体用于使用如下方式与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收卷创建实体发送的计算节点的节点标识信息,所述计算节点是所述卷创建实体获取的且满足所述待创建虚拟机对应的卷的卷规格信息。
在第三方面的第三种可能的实现方式中,由于接收卷创建实体发送的计算节点的节点标识信息,保证创建卷的计算节点和创建处理模块的计算节点为同一计算节点。
结合第三方面,在第三方面的第四种可能的实现方式中,所述处理单元,具体用于使用如下方式与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收所述卷创建实体发送的节点列表,所述节点列表包括满足所述待创建虚拟机对应的卷的卷规格信息的至少一个计算节点;
从所述节点列表中选择一个计算节点;
向所述卷创建实体发送所述选择的计算节点的节点标识信息。
在第三方面的第四种可能的实现方式中,由于接收卷创建实体发送的节点列表,保证了能够选择到满足虚拟机规格信息的计算节点。
第四方面、提供了一种创建虚拟机的装置,所述装置包括:处理单元和发送单元;
所述处理单元,用于与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点;在所述计算节点上创建所述卷;
所述发送单元,用于向所述处理模块创建实体发送所述卷的卷标识信息,所述卷标识信息用于所述处理模块创建实体在所述计算节点上创建所述处理模块后将所述卷挂载在所述处理模块上以形成所述待创建虚拟机。
在第四方面中,由于与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,这样保证了在同一计算节点上创建处理模块和创建卷,使得处理模块读写访问卷实质为读写访问本地的存储资源,满足高速读写卷的性能需求。
结合第四方面,在第四方面的第一种可能的实现方式中,所述处理单元,具体用于使用如下方式与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机对应的卷的卷规格信息,获取满足所述卷规格信息的一个计算节点;
向所述处理模块创建实体发送所述计算节点的节点标识信息。
在第四方面的第一种可能的实现方式中,由于向处理模块创建实体直接发送选择的计算节点的节点标识信息,保证创建卷的计算节点和创建处理模块的计算节点为同一计算节点。
结合第四方面,在第四方面的第二种可能的实现方式中,所述处理单元,具体用于使用如下方式与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机对应的卷的卷规格信息,获取节点列表,所述节点列表包括满足所述卷规格信息的至一个计算节点;
向处理模块创建实体发送所述节点列表,所述节点列表用于所述处理模块创建实体从所述节点列表中选择一个计算节点;
接收所述处理模块创建实体发送的所述选择的一个计算节点的节点标识信息。
在第四方面的第二种可能的实现方式中,由于向处理模块创建实体发送节点列表,保证了处理模块创建实体能够选择满足虚拟机规格信息的计算节点。
结合第四方面,在第四方面的第三种可能的实现方式中,所述处理单元,具体用于使用如下方式与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收处理模块创建实体发送的计算节点的节点标识信息,所述计算节点是所述处理模块创建实体获取的且满足所述待创建虚拟机的虚拟机规格信息。
在第四方面的第三种可能的实现方式中,由于接收处理模块创建实体发送的计算节点的节点标识信息,保证创建卷的计算节点和创建处理模块的计算节点为同一计算节点。
结合第四方面,在第四方面的第四种可能的实现方式中,所述处理单元,具体用于使用如下方式与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收所述处理模块创建实体发送的节点列表,所述节点列表包括满足所述待创建虚拟机的虚拟机规格信息的至少一个计算节点;
从所述节点列表中选择一个计算节点;
向所述处理模块创建实体发送所述选择的计算节点的节点标识信息。
在第四方面的第四种可能的实现方式中,由于接收处理模块创建实体发送的节点列表,保证了能够选择到满足虚拟机规格信息的计算节点。
附图说明
图1是本发明实施例应用的网络架构图;
图2-1是本发明实施例提供的一种处理模块创建实体的结构框图;
图2-2是本发明实施例提供的一种卷创建实体的结构框图;
图3-1是本发明实施例提供的一种创建虚拟机的方法流程图;
图3-2是本发明实施例提供的另一种创建虚拟机的方法流程图;
图4-1是本发明实施例提供的另一种创建虚拟机的方法流程图;
图4-2是本发明实施例提供的另一种创建虚拟机的方法流程图;
图5-1是本发明实施例提供的另一种创建虚拟机的方法流程图;
图5-2是本发明实施例提供的另一种创建虚拟机的方法流程图;
图6-1是本发明实施例提供的另一种创建虚拟机的方法流程图;
图6-2是本发明实施例提供的另一种创建虚拟机的方法流程图;
图7-1是本发明实施例提供的另一种创建虚拟机的方法流程图;
图7-2是本发明实施例提供的另一种创建虚拟机的方法流程图;
图8是本发明实施例提供的一种创建虚拟机的装置结构示意图;
图9是本发明实施例提供的另一种创建虚拟机的装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本实施例应用于Openstack平台,Openstack平台是一种用于创建虚拟机的开源云平台。用户可以向Openstack平台提交虚拟机创建请求,请求Openstack平台为其创建虚拟机。虚拟机包括处理模块和卷,处理模块是虚拟机的运算逻辑部分,卷是一种供该处理模块进行读写访问的存储模块。
参见图1,Openstack平台包括处理模块创建实体、卷创建实体和计算节点等,计算节点中包括CPU(Central Processing Unit,处理器)、内存、硬盘等硬件资源,其可以为位于网络中的存储服务器。处理模块创建实体用于创建虚拟机的处理模块,卷创建实体用于创建虚拟机的卷;处理模块创建实体可以为Nova组件,卷创建实体可以为Cinder组件;Nova组件可以为位于网络中具有计算功能的服务器或是该服务器中的模块;Cinder组件也可以为位于网络中具有计算功能的服务器或是该服务器中的模块。当都为模块时,Nova组件和Cinder组件可以位于同一台服务器上或位于不同服务器上。在本发明中,以Nova组件为处理模块创建实体,以Cinder组件为卷创建实体为例进行说明,但此不作为对本发明保护范围的限制。
用户需要创建虚拟机时,用户同时向Nova组件和Cinder发送虚拟机创建请求;Nova组件接收用户的虚拟机创建请求,在Openstack平台包括的计算节点中调度一计算节点,在调度的计算节点上创建待创建虚拟机的处理模块;Cinder组件接收用户的虚拟机创建请求,在Openstack平台包括的计算节点中调度一个计算节点,在调度的计算节点上创建待创建虚拟机对应的卷,向Nova组件发送该卷的卷标识信息;Nova组件接收该卷的卷标识信息,根据该卷的卷标识信息将该卷挂载在该处理模块上,形成待创建虚拟机。
需要说明的是,在本实施例中,Nova组件调度的计算节点和Cinder组件调度的计算节点为同一计算节点,这样虚拟机的处理模块和卷就位于同一计算节点,处理模块读写访问卷实质上读写访问本地存储资源,满足虚拟机的高速读写的性能需求。
目前Nova组件包括Nova API模块、Nova调度模块、Nova计算模块和KVM(Kernel-based Virtual Machine,开源的系统虚拟化)层,KVM层包括用于创建处理模块的接口;Cinder组件包括Cinder API模块、Cinder调度模块、Cinder计算模块和vdevice(virtual,虚拟设备)层,vdevice层包括用于创建卷的接口。Nova组件通过其包括的各模块来创建虚拟机的处理模块,Cinder组件通过其包括的各模块来创建虚拟机的卷,Nova组件和Cinder组件的具体创建过程在后续进行详细说明。
参见图2-1,图2-1是本发明实施例提供的处理模块创建实体100的结构框图。处理模块创建实体100可以为位于网络中具有计算功能的服务器或是该服务器中的模块。处理模块创建实体100可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器101、接收器102和发送器103,一个或一个以上存储应用程序204或数据105的存储介质106(例如一个或一个以上海量存储设备)。其中,存储介质206可以是短暂存储或持久存储。存储在存储介质106的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对处理模块创建实体100中的一系列指令操作。更进一步地,处理器101可以设置为与存储介质106通信,在Nova件100上执行存储介质106中的一系列指令操作。
处理模块创建实体100还可以包括一个或一个以上电源107,一个或一个以上有线或无线网络接口108,一个或一个以上输入输出接口109,和/或,一个或一个以上操作系统110,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
在本发明中处理模块创建实体100的处理器101和接收器102具有以下功能:
所述处理器101,用于与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点;在所述计算节点上创建所述处理模块;
所述接收器102,用于接收所述卷创建实体发送的所述卷的卷标识信息,所述卷是所述卷创建实体在所述计算节点上创建的;
所述处理器101,还用于根据所述卷标识信息,将所述卷挂载在所述处理模块上形成所述待创建虚拟机。
可选的,所述处理器101,具体用于使用如下方式与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机的虚拟机规格信息,获取满足所述虚拟机规格信息的一个计算节点;
向所述卷创建实体发送所述计算节点的节点标识信息。
可选的,所述处理器101,具体用于使用如下方式与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机的虚拟机规格信息,获取节点列表,所述节点列表包括满足所述虚拟机规格信息的至一个计算节点;
向卷创建实体发送所述节点列表,所述节点列表用于所述卷创建实体从所述节点列表中选择一个计算节点;
接收所述卷创建实体发送的所述选择的一个计算节点的节点标识信息。
可选的,所述处理器101,具体用于使用如下方式与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收卷创建实体发送的计算节点的节点标识信息,所述计算节点是所述卷创建实体获取的且满足所述待创建虚拟机对应的卷的卷规格信息。
可选的,所述处理器101,具体用于使用如下方式与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收所述卷创建实体发送的节点列表,所述节点列表包括满足所述待创建虚拟机对应的卷的卷规格信息的至少一个计算节点;
从所述节点列表中选择一个计算节点;
向所述卷创建实体发送所述选择的计算节点的节点标识信息。
在本发明实施例中,由于与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,这样保证了在同一计算节点上创建处理模块和创建卷,使得处理模块读写访问卷实质为读写访问本地的存储资源,满足高速读写卷的性能需求。
参见图2-2,图2-2是本发明实施例提供的卷创建实体200的结构框图。卷创建实体200可以为位于网络中具有计算功能的服务器或是该服务器中的模块。卷创建实体200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器201、发送器202和接收器203,一个或一个以上存储应用程序204或数据205的存储介质206(例如一个或一个以上海量存储设备)。其中,存储介质206可以是短暂存储或持久存储。存储在存储介质206的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对卷创建实体200中的一系列指令操作。更进一步地,处理器201可以设置为与存储介质206通信,在Nova件200上执行存储介质206中的一系列指令操作。
卷创建实体200还可以包括一个或一个以上电源207,一个或一个以上有线或无线网络接口208,一个或一个以上输入输出接口209,和/或,一个或一个以上操作系统210,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
在本发明中卷创建实体200的处理器201和发送器202具有以下功能:
所述处理器201,用于与计算处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点;在所述计算节点上创建所述卷;
所述发送器202,用于向所述处理模块创建实体发送所述卷的卷标识信息,所述卷标识信息用于所述处理模块创建实体在所述计算节点上创建所述处理模块后将所述卷挂载在所述处理模块上以形成所述待创建虚拟机。
可选的,所述处理器201,具体用于使用如下方式与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机对应的卷的卷规格信息,获取满足所述卷规格信息的一个计算节点;
向所述处理模块创建实体发送所述计算节点的节点标识信息。
可选的,所述处理器201,具体用于使用如下方式与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机对应的卷的卷规格信息,获取节点列表,所述节点列表包括满足所述卷规格信息的至一个计算节点;
向处理模块创建实体发送所述节点列表,所述节点列表用于所述处理模块创建实体从所述节点列表中选择一个计算节点;
接收所述处理模块创建实体发送的所述选择的一个计算节点的节点标识信息。
可选的,所述处理器201,具体用于使用如下方式与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收处理模块创建实体发送的计算节点的节点标识信息,所述计算节点是所述处理模块创建实体获取的且满足所述待创建虚拟机的虚拟机规格信息。
可选的,所述处理器201,具体用于使用如下方式与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收所述处理模块创建实体发送的节点列表,所述节点列表包括满足所述待创建虚拟机的虚拟机规格信息的至少一个计算节点;
从所述节点列表中选择一个计算节点;
向所述处理模块创建实体发送所述选择的计算节点的节点标识信息。
在本发明实施例中,由于与计算处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,这样保证了在同一计算节点上创建处理模块和创建卷,使得处理模块读写访问卷实质为读写访问本地的存储资源,满足高速读写卷的性能需求。
本发明实施例提供了一种创建虚拟机的方法。在本实施例中,Nova组件调度创建处理模块所在的计算节点,并向Cinder组件发送该计算节点的节点标识信息,这样Nova组件和Cinder组件分别在该计算节点上创建虚拟机的处理模块和卷。参见图3-1,该方法包括:
步骤301:Nova组件接收虚拟机创建请求,该虚拟机创建请求携带待创建虚拟机的虚拟机规格信息的标识和卷规格信息。
该虚拟机创建请求是用户通过其对应的终端发送的。用户可以在其对应的终端上配置待创建虚拟机的虚拟机规格信息和待创建虚拟机对应的卷的卷规格信息,然后通过该终端发送携带该虚拟机规格信息的标识和该卷规格信息的虚拟机创建请求。其中,该终端同时向Nova组件和Cinder组件发送该虚拟机创建请求。
可选的,对于上述配置过程可以为:用户对应的终端可以向用户显示一个配置界面,该配置界面中包括多个虚拟机规格信息;用户可以在该配置界面中选择一个虚拟机规格信息,以及设置卷规格信息;终端从该配置界面中获取该虚拟机规格信息的标识和该卷规格信息,向Nova组件和Cinder组件发送携带该虚拟机规格信息的标识和该卷规格信息的虚拟机创建请求。
可选的,参见图3-2,Nova组件通过其包括的NovaAPI模块接收该虚拟机创建请求。
待创建虚拟机的虚拟机规格信息包括虚拟机内存大小、vCPU(virtual CentralProcessing Unit,虚拟处理器)数目、系统盘大小、swap(交换分区)盘大小和临时盘大小等信息中的至少一者。待创建虚拟机的卷规格信息可以为卷的SLA属性,如卷介质为SSD(Solid State Drives,固态硬盘)或HDD(HardDiskDrive,硬盘驱动器)等、卷IOPS((Input/Output Operations Per Second,每秒进行读写(I/O)操作的次数)=100等。
步骤302:Nova组件根据该虚拟机规格信息的标识获取该虚拟机规格信息,根据该虚拟机规格信息,调度满足该虚拟机规格信息的一个计算节点。
Nova组件中包括Openstack平台中的每个计算节点当前的各种资源的资源大小,且每个计算节点都会实时地向Nova组件发送其包括的各种资源的资源大小。
本步骤可以为:Nova组件根据该虚拟机规格信息的标识,从存储的标识与虚拟机规格信息的对应关系中获取对应的虚拟机规格信息,根据该虚拟机规格信息和保存的每个计算节点当前的各种资源的资源大小,选择资源大小满足该虚拟机规格信息的一个计算节点。例如,假设虚拟机规格信息中包括虚拟机内存大小、vCPU数目,则Nova组件可以选择当前内存大小大于该虚拟机内存大小且当前vCPU数目大于该vCPU数目的一个计算节点。
可选的,参见图3-2,Nova组件中的Nova API模块将该虚拟机规格信息的标识发送给Nova组件的Nova调度模块,Nova调度模块根据该标识,从存储的标识与虚拟机规格信息的对应关系中获取对应的虚拟机规格信息,根据该虚拟机规格信息,调度满足该虚拟机规格信息的一个计算节点。
步骤303:Nova组件向Cinder组件发送该计算节点的节点标识信息。
步骤304:Nova组件根据该虚拟机规格信息,在该计算节点上创建待创建虚拟机的处理模块。
可选的,参见图3-2,Nova组件中的Nova调度模块将选择的计算节点的节点标识信息发送给Nova组件的Nova计算模块,Nova计算模块根据该虚拟机规格信息,在该节点标识信息对应的计算节点上创建待创建虚拟机的处理模块。
其中,Nova组件包括KVM层,该KVM层包括用于创建处理模块的接口,Nova计算模块从该虚拟层中调用该接口,根据该虚拟机规格信息,通过该接口在该计算节点上调度资源来创建处理模块。例如,假设该虚拟机规格信息包括虚拟机内存大小和vCPU数目,则根据该虚拟机内存大小和该vCPU数目,通过该接口在该计算节点上调度相应大小的内存和vCPU。
其中,在本实施例中,可以先执行步骤303,再执行步骤304,也可以先执行步骤304,再执行步骤303,或者两步骤同时执行等,步骤303和304没严格的时序关系。
步骤305:Cinder组件接收虚拟机创建请求,该虚拟机创建请求携带待创建虚拟机的虚拟机规格信息的标识和卷规格信息。
该虚拟机创建请求是用户通过其对应的终端发送的。
可选的,参见图3-2,Cinder组件通过其包括的CinderAPI模块接收该虚拟机创建请求。
其中,在本实施例中,步骤301和305没严格的时序关系,可以先执行步骤301,再执行步骤305,也可以先执行步骤305,再执行步骤301,或者两步骤同时执行等。
步骤306:Cinder组件接收该节点标识信息,根据该卷规格信息,在该节点标识信息对应的计算节点上创建待创建虚拟机的卷。
可选的,参见图3-2,Cinder组件通过其包括的CinderAPI模块接收该节点标识信息,将该节点标识信息和卷规格信息发送给Cinder组件的Cinder调度模块;Cinder调度模块再将该节点标识信息和卷规格信息发送给Cinder组件的Cinder计算模块;Cinder计算模块根据该卷规格信息,在该节点标识信息对应的计算节点上创建待创建虚拟机的卷。
其中,Cinder组件包括vdevice层,该vdevice层包括用于创建卷的接口,Cinder计算模块从vdevice层中调用该接口,根据该卷规格信息,通过该接口在该计算节点上调度资源来创建卷。调度的资源可以为SSD,HDD和非易失性存储介质等,该非易失性存储介质可以为Nvdimm。
步骤307:Cinder组件向Nova组件发送创建的卷的卷标识信息。
步骤308:Nova组件接收该卷标识信息,根据该卷标识信息将该卷挂载在该处理模块上形成待创建虚拟机。
其中,需要说明的是:如果选择的计算节点不满足卷规格信息,则Cinder组件向Nova组件发送通知消息,然后Nova组件重新选择一个满足虚拟机规格信息的计算节点,再向Cinder组件发送重新选择的计算节点的节点标识信息,让Cinder组件来创建卷。
在本发明实施例中,Nova组件调度一个计算节点,并将该计算节点的节点标识信息发送给Cinder组件,这样保证了Nova组件创建处理模块所在的计算节点和Cinder组件创建卷所在的计算节点为同一计算节点,使得处理模块读写访问卷实质为读写访问本地的存储资源,满足高速读写卷的性能需求。
本发明实施例提供了一种创建虚拟机的方法。在本实施例中,Nova组件获取节点列表,该节点列表包括至少一个计算节点,并向Cinder组件发送该节点列表,Cinder从该节点列表中选择一个计算节点,向Nova组件发送该计算节点的节点标识信息,这样Nova组件和Cinder组件分别在该计算节点上创建虚拟机的处理模块和卷。参见图4-1,该方法包括:
步骤401:与步骤301相同,在此不再详细说明。
步骤402:Nova组件根据该虚拟机规格信息的标识获取该虚拟机规格信息,根据该虚拟机规格信息,获取节点列表,该节点列表包括满足该虚拟机规格信息的至少一个计算节点。
Nova组件中包括Openstack平台中的每个计算节点当前的各种资源的资源大小,且每个计算节点都会实时地向Nova组件发送其包括的各种资源的资源大小。
本步骤可以为:Nova组件根据该虚拟机规格信息的标识获取对应的虚拟机规格信息,根据该虚拟机规格信息和保存的每个计算节点当前的各种资源的资源大小,选择至少一个计算节点。例如,假设虚拟机规格信息中包括虚拟机内存大小、vCPU数目,则Nova组件可以选择当前内存大小大于该虚拟机内存大小且当前vCPU数目大于该vCPU数目的至少一个计算节点。
可选的,参见图3-2,Nova组件中的Nova API模块将该虚拟机规格信息的标识发送给Nova组件的Nova调度模块,Nova调度模块根据该虚拟机规格信息的标识获取对应的虚拟机规格信息,根据该虚拟机规格信息,调度满足该虚拟机规格信息的至少一个计算节点。
步骤403:Nova组件向Cinder组件发送该节点列表。
步骤404:Cinder组件接收虚拟机创建请求,该虚拟机创建请求携带待创建虚拟机的虚拟机规格信息的标识和卷规格信息。
该虚拟机创建请求是用户通过其对应的终端发送的。
可选的,参见图4-2,Cinder组件通过其包括的CinderAPI模块接收该虚拟机创建请求。
步骤405:Cinder组件接收该节点列表,根据该卷规格信息,从该节点列表中选择一个计算节点。
可选的,参见图4-2,CinderAPI模块接收该节点列表,将该节点列表和该卷规格信息发送给Cinder调度模块。Cinder调度模块根据该卷规格信息,从该节点列表中选择一个满足该卷规格信息的计算节点。
步骤406:Cinder组件在该计算节点上创建待创建虚拟机的卷,并向Nova组件发送选择的计算节点的节点标识信息和该卷的卷标识信息。
可选的,参见图4-2,Cinder组件中的Cinder调度模块将选择的计算节点的节点标识信息发送给Cinder组件的Cinder计算模块,Cinder计算模块根据该虚拟机规格信息,在该节点标识信息对应的计算节点上创建待创建虚拟机的卷。
其中,Cinder组件包括虚拟层,该虚拟层包括用于创建处理模块的接口,Cinder计算模块从虚拟层中调用该接口,根据该虚拟机规格信息,通过该接口在该计算节点上调度资源来创建卷。
步骤407:Nova组件接收该节点标识信息和该卷标识信息,根据该虚拟机规格信息,在该节点标识信息对应的计算节点上创建待创建虚拟机的处理模块。
可选的,参见图4-2,Nova组件中的Nova调度模块将该节点标识信息发送给Nova组件的Nova计算模块,Nova计算模块根据该虚拟机规格信息,在该节点标识信息对应的计算节点上创建待创建虚拟机的处理模块。
Nova组件包括KVM(Kernel-based Virtual Machine,开源的系统虚拟化)层,该KVM层包括用于创建处理模块的接口,Nova计算模块从该虚拟层中调用该接口,根据该虚拟机规格信息,通过该接口在该计算节点上调度资源来创建处理模块。例如,假设该虚拟机规格信息包括虚拟机内存大小和vCPU数目,则根据该虚拟机内存大小和该vCPU数目,通过该接口在该计算节点上调度相应大小的内存和vCPU。
步骤408:Nova组件根据该卷标识信息将该卷挂载在该处理模块上形成待创建虚拟机。
在本发明实施例中,Nova组件调度至少一个计算节点形成节点列表,并将该节点列表发送给Cinder组件,Cinder组件从该节点列表中选择一个计算节点,并将选择的计算节点的节点标识信息发送给Nova组件,这样保证了Nova组件创建处理模块所在的计算节点和Cinder组件创建卷所在的计算节点为同一计算节点,使得处理模块读写访问卷实质为读写访问本地的存储资源,满足高速读写卷的性能需求。
本发明实施例提供了一种创建虚拟机的方法。在本实施例中,Cinder组件调度创建卷所在的计算节点,并向Nova组件发送该计算节点的节点标识信息,这样Nova组件和Cinder组件分别在该计算节点上创建虚拟机的处理模块和卷。参见图5-1,该方法包括:
步骤501:Cinder组件接收虚拟机创建请求,该虚拟机创建请求携带待创建虚拟机的虚拟机规格信息的标识和卷规格信息。
该虚拟机创建请求是用户在其对应的终端上配置的并通过其对应的终端发送的,详细过程请参见步骤301中的相关内容,在此不再详细说明。
可选的,参见图5-2,Cinder组件通过其包括的Cinder API模块接收该虚拟机创建请求。
步骤502:Cinder组件根据该卷规格信息,调度满足该卷规格信息的一个计算节点。
Cinder组件中包括Openstack平台中的每个计算节点当前的各种资源的资源大小,且每个计算节点都会实时地向Cinder组件发送其包括的各种资源的资源大小。
本步骤可以为:Cinder组件根据该卷规格信息和保存的每个计算节点当前的各种资源的资源大小,选择一个计算节点。
可选的,参见图5-2,Cinder组件中的Cinder API模块将该卷规格信息发送给Cinder组件的Cinder调度模块,Cinder调度模块根据该卷规格信息,调度满足该卷规格信息的一个计算节点。
步骤503:Cinder组件向Nova组件发送该计算节点的节点标识信息。
步骤504:Cinder组件根据该卷规格信息,在该计算节点上创建待创建虚拟机的卷,向Nova组件发送该卷的卷标识信息。
可选的,参见图5-2,Cinder组件中的Cinder调度模块将选择的计算节点的节点标识信息发送给Cinder组件的Cinder计算模块,Cinder计算模块根据该卷规格信息,在该节点标识信息对应的计算节点上创建待创建虚拟机的卷。
其中,Cinder组件包括vdevice层,该vdevice层包括用于创建卷的接口,Cinder计算模块从vdevice层中调用该接口,根据该卷规格信息,通过该接口在该计算节点上调度资源来创建卷。
步骤505:Nova组件接收虚拟机创建请求,该虚拟机创建请求携带待创建虚拟机的虚拟机规格信息的标识和卷规格信息。
该虚拟机创建请求是用户通过其对应的终端发送的。
可选的,参见图5-2,Nova组件通过其包括的NovaAPI模块接收该虚拟机创建请求。
步骤506:Nova组件接收该节点标识信息,根据该虚拟机规格信息的标识获取对应的虚拟机规格信息,根据该虚拟机规格信息,在该节点标识信息对应的计算节点上创建待创建虚拟机的处理模块。
可选的,参见图5-2,Nova组件通过其包括的NovaAPI模块接收该虚拟机创建请求,将该虚拟机规格信息的标识发送给Nova组件的Nova调度模块;Nova调度模块根据该虚拟机规格信息的标识获取对应的虚拟机规格信息,将该虚拟机规格信息发送给Nova组件的Nova计算模块;Nova计算模块接收该节点标识信息,根据该虚拟机规格信息,在该节点标识信息对应的计算节点上创建待创建虚拟机的处理模块。
其中,Nova组件包括KVM层,该KVM层包括用于创建处理模块的接口,Nova计算模块从KVM层中调用该接口,根据该虚拟机规格信息,通过该接口在该计算节点上调度资源来创建处理模块。
步骤507:Nova组件接收该卷标识信息,根据该卷标识信息将该卷挂载在该处理模块上形成待创建虚拟机。
其中,需要说明的是:如果选择的计算节点不满足虚拟机规格信息,则Nova组件向Cinder组件发送通知消息,然后Cinder组件重新选择一个满足卷规格信息的计算节点,再向Nova组件发送重新选择的计算节点的节点标识信息,让Nova组件来创建处理模块。
在本发明实施例中,Cinder组件调度一个计算节点,并将该计算节点的节点标识信息发送给Nova组件,这样保证了Nova组件创建处理模块所在的计算节点和Cinder组件创建卷所在的计算节点为同一计算节点,使得处理模块读写访问卷实质为读写访问本地的存储资源,满足高速读写卷的性能需求。
本发明实施例提供了一种创建虚拟机的方法。在本实施例中,Cinder组件获取节点列表,该节点列表包括至少一个计算节点,并向Nova组件发送节点列表,Nova组件从该节点列表中选择一个计算节点,向Cinder组件发送该计算节点的节点标识信息,这样Nova组件和Cinder组件分别在计算节点上创建虚拟机的处理模块和卷。参见图6-1,该方法包括:
步骤601:与步骤501相同,在此不再详细说明。
步骤602:Cinder组件根据该卷规格信息,获取节点列表,该节点列表包括满足该卷规格信息的至少一个计算节点。
Cinder组件中包括Openstack平台中的每个计算节点当前的各种资源的资源大小,且每个计算节点都会实时地向Cinder组件发送其包括的各种资源的资源大小。
本步骤可以为:Cinder组件根据该卷规格信息和保存的每个计算节点当前的各种资源的资源大小,选择至少一个计算节点。
可选的,参见图6-2,Cinder组件中的Cinder API模块将该卷规格信息发送给Cinder组件的Cinder调度模块,Cinder调度模块根据该卷规格信息,调度满足该卷规格信息的至少一个计算节点。
步骤603:Cinder组件向Nova组件发送该节点列表。
步骤604:Nova组件接收虚拟机创建请求,该虚拟机创建请求携带待创建虚拟机的虚拟机规格信息的标识和卷规格信息。
该虚拟机创建请求是用户通过其对应的终端发送的。
可选的,参见图6-2,Nova组件通过其包括的NovaAPI模块接收该虚拟机创建请求,将该虚拟机规格信息的标识发送给Nova调度模块。
步骤605:Nova组件接收该节点列表,根据该虚拟机规格信息的标识获取该虚拟机规格信息,根据该虚拟机规格信息,从该节点列表中选择一个计算节点。
可选的,Nova组件的Nova调度模块根据该虚拟机规格信息的标识获取该虚拟机规格信息,根据该虚拟机规格信息,从该节点列表中选择一个满足该虚拟机规格信息的计算节点,然后将选择的计算节点的节点标识信息发送给Nova计算模块。
步骤606:Nova组件在该计算节点上创建待创建虚拟机的处理模块,并向Cinder组件发送选择的计算节点的节点标识信息。
可选的,参见图6-2,Nova计算模块接收该计算节点的节点标识信息,根据该虚拟机规格信息,在该节点标识信息对应的计算节点上创建待创建虚拟机的处理模块。
其中,Nova组件包括KVM层,该KVM层包括用于创建处理模块的接口,Nova计算模块从KVM层中调用该接口,根据该虚拟机规格信息,通过该接口在该计算节点上调度资源来创建卷。
步骤607:Cinder组件接收该节点标识信息,根据该卷规格信息,在该节点标识信息对应的计算节点上创建待创建虚拟机的卷,向Nova组件发送该卷的卷标识信息。
可选的,参见图6-2,Cinder组件中的Cinder计算模块接收该节点标识信息根据该卷规格信息,在该节点标识信息对应的计算节点上创建待创建虚拟机的卷。
其中,Cinder组件包括vdevice层,该vdevice层包括用于创建卷的接口,Cinder计算模块从vdevice层中调用该接口,根据该卷规格信息,通过该接口在该计算节点上调度资源来创建卷。
步骤608:Nova组件接收该卷标识信息,根据该卷标识信息将该卷挂载在该处理模块上形成待创建虚拟机。
在本发明实施例中,Cinder组件调度至少一个计算节点形成节点列表,并将该节点列表发送给Nova组件,Nova组件从该节点列表中选择一个计算节点,并将选择的计算节点的节点标识信息发送给Cinder组件,这样保证了Nova组件创建处理模块所在的计算节点和Cinder组件创建卷所在的计算节点为同一计算节点,使得处理模块读写访问卷实质为读写访问本地的存储资源,满足高速读写卷的性能需求。
本发明实施例提供了一种创建虚拟机的方法。在本实施例中,Nova组件调度创建处理模块和卷所在的计算节点,在该计算节点上创建虚拟机的处理模块和卷。参见图7-1,该方法包括:
步骤701:与步骤301相同,在此不再详细说明。
步骤702:Nova组件根据该虚拟机规格信息的标识获取该虚拟机规格信息,根据该虚拟机规格信息,调度满足该虚拟机规格信息的一个计算节点。
Nova组件中包括Openstack平台中的每个计算节点当前的各种资源的资源大小,且每个计算节点都会实时地向Nova组件发送其包括的各种资源的资源大小。
本步骤可以为:Nova组件根据该虚拟机规格信息的标识,从存储的标识与虚拟机规格信息的对应关系中获取对应的虚拟机规格信息,根据该虚拟机规格信息和保存的每个计算节点当前的各种资源的资源大小,选择一个计算节点。例如,假设虚拟机规格信息中包括虚拟机内存大小、vCPU数目,则Nova组件可以选择当前内存大小大于该虚拟机内存大小且当前vCPU数目大于该vCPU数目的一个计算节点。
可选的,参见图7-2,Nova组件中的Nova API模块将该虚拟机规格信息的标识和该卷规格信息发送给Nova组件的Nova调度模块,Nova调度模块根据该虚拟机规格信息的标识,从存储的标识与虚拟机规格信息的对应关系中获取对应的虚拟机规格信息,根据该虚拟机规格信息,调度满足该虚拟机规格信息的一个计算节点。
步骤703:Nova组件根据该虚拟机规格信息,在该计算节点上创建待创建虚拟机的处理模块。
可选的,参见图7-2,Nova组件中的Nova调度模块将选择的计算节点的节点标识信息、该虚拟机规格信息和该卷规格信息发送给Nova组件的Nova计算模块,Nova计算模块根据该虚拟机规格信息,在该节点标识信息对应的计算节点上创建待创建虚拟机的处理模块。
其中,Nova组件包括模块KVM层,该KVM层包括用于创建处理模块的接口,Nova计算模块从该KVM层中调用该接口,根据该虚拟机规格信息,通过该接口在该计算节点上调度资源来创建处理模块。例如,假设该虚拟机规格信息包括虚拟机内存大小和vCPU数目,则根据该虚拟机内存大小和该vCPU数目,通过该接口在该计算节点上调度相应大小的内存和vCPU。
步骤704:Nova组件根据该卷规格信息,在该计算节点上创建待创建虚拟机的卷。
可选的,参见图7-2,Nova组件还包括vdevice层,该vdevice层包括用于创建卷的接口,Nova计算模块从该vdevice层中调用该接口,根据该卷规格信息,通过该接口在该计算节点上调度资源来创建卷。
步骤705:Nova组件将该卷挂载在该处理模块上形成待创建虚拟机。
在本发明实施例中,Nova组件调度一个计算节点,并在该计算节点上创建待创建虚拟机的处理模块和卷,这样保证了创建的处理模块和卷均位于同一计算节点,使得处理模块读写访问卷实质为读写访问本地的存储资源,满足高速读写卷的性能需求。
参见图8,本发明实施例提供了一种创建虚拟机的装置800,所述装置800包括:处理单元801和接收单元802;
所述处理单元801,用于与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点;在所述计算节点上创建所述处理模块;
所述接收单元802,用于接收所述卷创建实体发送的所述卷的卷标识信息,所述卷是所述卷创建实体在所述计算节点上创建的;
所述处理单元801,还用于根据所述卷标识信息,将所述卷挂载在所述处理模块上形成所述待创建虚拟机。
可选的,所述处理单元801,具体用于使用如下方式与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机的虚拟机规格信息,获取满足所述虚拟机规格信息的一个计算节点;
向所述卷创建实体发送所述计算节点的节点标识信息。
可选的,所述处理单元801,具体用于使用如下方式与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机的虚拟机规格信息,获取节点列表,所述节点列表包括满足所述虚拟机规格信息的至一个计算节点;
向卷创建实体发送所述节点列表,所述节点列表用于所述卷创建实体从所述节点列表中选择一个计算节点;
接收所述卷创建实体发送的所述选择的一个计算节点的节点标识信息。
可选的,所述处理单元801,具体用于使用如下方式与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收卷创建实体发送的计算节点的节点标识信息,所述计算节点是所述卷创建实体获取的且满足所述待创建虚拟机对应的卷的卷规格信息。
可选的,所述处理单元801,具体用于使用如下方式与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收所述卷创建实体发送的节点列表,所述节点列表包括满足所述待创建虚拟机对应的卷的卷规格信息的至少一个计算节点;
从所述节点列表中选择一个计算节点;
向所述卷创建实体发送所述选择的计算节点的节点标识信息。
在本发明实施例中,由于与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,这样保证了在同一计算节点上创建处理模块和创建卷,使得处理模块读写访问卷实质为读写访问本地的存储资源,满足高速读写卷的性能需求。
参见图9,本发明实施例提供了一种创建虚拟机的装置900,所述装置900包括:处理单元901和发送单元902;
所述处理单元901,用于与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点;在所述计算节点上创建所述卷;
所述发送单元902,用于向所述处理模块创建实体发送所述卷的卷标识信息,所述卷标识信息用于所述处理模块创建实体在所述计算节点上创建所述处理模块后将所述卷挂载在所述处理模块上以形成所述待创建虚拟机。
可选的,所述处理单元901,具体用于使用如下方式与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机对应的卷的卷规格信息,获取满足所述卷规格信息的一个计算节点;
向所述处理模块创建实体发送所述计算节点的节点标识信息。
可选的,所述处理单元901,具体用于使用如下方式与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机对应的卷的卷规格信息,获取节点列表,所述节点列表包括满足所述卷规格信息的至一个计算节点;
向处理模块创建实体发送所述节点列表,所述节点列表用于所述处理模块创建实体从所述节点列表中选择一个计算节点;
接收所述处理模块创建实体发送的所述选择的一个计算节点的节点标识信息。
可选的,所述处理单元901,具体用于使用如下方式与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收处理模块创建实体发送的计算节点的节点标识信息,所述计算节点是所述处理模块创建实体获取的且满足所述待创建虚拟机的虚拟机规格信息。
可选的,所述处理单元901,具体用于使用如下方式与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收所述处理模块创建实体发送的节点列表,所述节点列表包括满足所述待创建虚拟机的虚拟机规格信息的至少一个计算节点;
从所述节点列表中选择一个计算节点;
向所述处理模块创建实体发送所述选择的计算节点的节点标识信息。
在本发明实施例中,由于与计算处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,这样保证了在同一计算节点上创建处理模块和创建卷,使得处理模块读写访问卷实质为读写访问本地的存储资源,满足高速读写卷的性能需求。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (20)
1.一种创建虚拟机的方法,其特征在于,应用于处理模块创建实体,所述方法包括:
与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点;
在所述计算节点上创建所述处理模块;
接收所述卷创建实体发送的所述卷的卷标识信息,所述卷是所述卷创建实体在所述处理模块创建实体创建所述处理模块的计算节点上创建的;
根据所述卷标识信息,将所述卷挂载在所述处理模块上形成所述待创建虚拟机。
2.如权利要求1所述的方法,其特征在于,所述与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据虚拟机规格信息的标识,从存储的虚拟机规格信息的标识与虚拟机规格信息的对应关系中,获取所述待创建虚拟机的虚拟机规格信息;
根据所述虚拟机规格信息,获取满足所述虚拟机规格信息的一个计算节点,所述计算节点的资源大小满足所述虚拟机规格信息;
向所述卷创建实体发送所述计算节点的节点标识信息。
3.如权利要求1所述的方法,其特征在于,所述与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机的虚拟机规格信息,获取节点列表,所述节点列表包括满足所述虚拟机规格信息的至少一个计算节点;
向卷创建实体发送所述节点列表,所述节点列表用于所述卷创建实体从所述节点列表中选择一个计算节点;
接收所述卷创建实体发送的所述选择的一个计算节点的节点标识信息。
4.如权利要求1所述的方法,其特征在于,所述与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收卷创建实体发送的计算节点的节点标识信息,所述计算节点是所述卷创建实体获取的且满足所述待创建虚拟机对应的卷的卷规格信息。
5.如权利要求1所述的方法,其特征在于,所述与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收所述卷创建实体发送的节点列表,所述节点列表包括满足所述待创建虚拟机对应的卷的卷规格信息的至少一个计算节点;
从所述节点列表中选择一个计算节点;
向所述卷创建实体发送所述选择的计算节点的节点标识信息。
6.一种创建虚拟机的方法,其特征在于,应用于卷创建实体,所述方法包括:
与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点;
在所述计算节点上创建所述卷;
向所述处理模块创建实体发送所述卷的卷标识信息,所述卷标识信息用于所述处理模块创建实体在所述卷创建实体创建所述卷的计算节点上创建所述处理模块后将所述卷挂载在所述处理模块上以形成所述待创建虚拟机。
7.如权利要求6所述的方法,其特征在于,所述与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机对应的卷的卷规格信息,获取满足所述卷规格信息的一个计算节点;
向所述处理模块创建实体发送所述计算节点的节点标识信息。
8.如权利要求6所述的方法,其特征在于,所述与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机对应的卷的卷规格信息,获取节点列表,所述节点列表包括满足所述卷规格信息的至少一个计算节点;
向处理模块创建实体发送所述节点列表,所述节点列表用于所述处理模块创建实体从所述节点列表中选择一个计算节点;
接收所述处理模块创建实体发送的所述选择的一个计算节点的节点标识信息。
9.如权利要求6所述的方法,其特征在于,所述与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收处理模块创建实体发送的计算节点的节点标识信息,所述计算节点是所述处理模块创建实体获取的且满足所述待创建虚拟机的虚拟机规格信息。
10.如权利要求6所述的方法,其特征在于,所述与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收所述处理模块创建实体发送的节点列表,所述节点列表包括满足所述待创建虚拟机的虚拟机规格信息的至少一个计算节点;
从所述节点列表中选择一个计算节点;
向所述处理模块创建实体发送所述选择的计算节点的节点标识信息。
11.一种创建虚拟机的装置,其特征在于,应用于处理模块创建实体,所述装置包括:处理单元和接收单元;
所述处理单元,用于与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点;在所述计算节点上创建所述处理模块;
所述接收单元,用于接收所述卷创建实体发送的所述卷的卷标识信息,所述卷是所述卷创建实体在所述处理模块创建实体创建所述处理模块的计算节点上创建的;
所述处理单元,还用于根据所述卷标识信息,将所述卷挂载在所述处理模块上形成所述待创建虚拟机。
12.如权利要求11所述的装置,其特征在于,所述处理单元,具体用于使用如下方式与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据虚拟机规格信息的标识,从存储的虚拟机规格信息的标识与虚拟机规格信息的对应关系中获取所述待创建虚拟机的虚拟机规格信息;
根据所述虚拟机规格信息,获取满足所述虚拟机规格信息的一个计算节点,所述计算节点的资源大小满足所述虚拟机规格信息;
向所述卷创建实体发送所述计算节点的节点标识信息。
13.如权利要求11所述的装置,其特征在于,所述处理单元,具体用于使用如下方式与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机的虚拟机规格信息,获取节点列表,所述节点列表包括满足所述虚拟机规格信息的至少一个计算节点;
向卷创建实体发送所述节点列表,所述节点列表用于所述卷创建实体从所述节点列表中选择一个计算节点;
接收所述卷创建实体发送的所述选择的一个计算节点的节点标识信息。
14.如权利要求11所述的装置,其特征在于,所述处理单元,具体用于使用如下方式与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收卷创建实体发送的计算节点的节点标识信息,所述计算节点是所述卷创建实体获取的且满足所述待创建虚拟机对应的卷的卷规格信息。
15.如权利要求11所述的装置,其特征在于,所述处理单元,具体用于使用如下方式与卷创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收所述卷创建实体发送的节点列表,所述节点列表包括满足所述待创建虚拟机对应的卷的卷规格信息的至少一个计算节点;
从所述节点列表中选择一个计算节点;
向所述卷创建实体发送所述选择的计算节点的节点标识信息。
16.一种创建虚拟机的装置,其特征在于,应用于卷创建实体,所述装置包括:处理单元和发送单元;
所述处理单元,用于与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点;在所述计算节点上创建所述卷;
所述发送单元,用于向所述处理模块创建实体发送所述卷的卷标识信息,所述卷标识信息用于所述处理模块创建实体在所述卷创建实体创建所述卷的计算节点上创建所述处理模块后将所述卷挂载在所述处理模块上以形成所述待创建虚拟机。
17.如权利要求16所述的装置,其特征在于,所述处理单元,具体用于使用如下方式与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机对应的卷的卷规格信息,获取满足所述卷规格信息的一个计算节点;
向所述处理模块创建实体发送所述计算节点的节点标识信息。
18.如权利要求16所述的装置,其特征在于,所述处理单元,具体用于使用如下方式与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
根据待创建虚拟机对应的卷的卷规格信息,获取节点列表,所述节点列表包括满足所述卷规格信息的至少一个计算节点;
向处理模块创建实体发送所述节点列表,所述节点列表用于所述处理模块创建实体从所述节点列表中选择一个计算节点;
接收所述处理模块创建实体发送的所述选择的一个计算节点的节点标识信息。
19.如权利要求16所述的装置,其特征在于,所述处理单元,具体用于使用如下方式与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收处理模块创建实体发送的计算节点的节点标识信息,所述计算节点是所述处理模块创建实体获取的且满足所述待创建虚拟机的虚拟机规格信息。
20.如权利要求16所述的装置,其特征在于,所述处理单元,具体用于使用如下方式与处理模块创建实体协商待创建虚拟机包括的处理模块和卷所在的计算节点,包括:
接收所述处理模块创建实体发送的节点列表,所述节点列表包括满足所述待创建虚拟机的虚拟机规格信息的至少一个计算节点;
从所述节点列表中选择一个计算节点;
向所述处理模块创建实体发送所述选择的计算节点的节点标识信息。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511016944.9A CN106933646B (zh) | 2015-12-29 | 2015-12-29 | 一种创建虚拟机的方法及装置 |
PCT/CN2016/099587 WO2017113895A1 (zh) | 2015-12-29 | 2016-09-21 | 一种创建虚拟机的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511016944.9A CN106933646B (zh) | 2015-12-29 | 2015-12-29 | 一种创建虚拟机的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106933646A CN106933646A (zh) | 2017-07-07 |
CN106933646B true CN106933646B (zh) | 2020-04-14 |
Family
ID=59224583
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201511016944.9A Active CN106933646B (zh) | 2015-12-29 | 2015-12-29 | 一种创建虚拟机的方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN106933646B (zh) |
WO (1) | WO2017113895A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111045778B (zh) * | 2018-10-11 | 2023-09-12 | 华为技术有限公司 | 一种虚拟机的创建方法、装置、服务器及存储介质 |
CN109871252B (zh) * | 2019-01-28 | 2022-04-01 | 国云科技股份有限公司 | 一种云教室通用盘实现方法 |
CN112000440B (zh) * | 2020-08-24 | 2023-03-28 | 浪潮云信息技术股份公司 | 一种基于云平台的多启动卷虚拟机启动顺序变更方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5761498A (en) * | 1994-02-07 | 1998-06-02 | Fujitsu Limited | Distribution file system for accessing required portion of file |
CN102142032A (zh) * | 2011-03-28 | 2011-08-03 | 中国人民解放军国防科学技术大学 | 一种分布式文件系统的数据读写方法及系统 |
CN104216782A (zh) * | 2014-08-19 | 2014-12-17 | 东南大学 | 高性能计算和云计算混合环境中的动态资源管理方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103034453B (zh) * | 2011-09-30 | 2015-11-25 | 国际商业机器公司 | 管理虚拟机实例中预安装应用的持久数据的方法和装置 |
CN102929687B (zh) * | 2012-10-12 | 2016-05-25 | 山东省计算中心(国家超级计算济南中心) | 一种节能的云计算数据中心虚拟机放置方法 |
CN103544047B (zh) * | 2013-10-25 | 2017-01-04 | 华为技术有限公司 | 云系统数据管理方法 |
CN103607429A (zh) * | 2013-10-30 | 2014-02-26 | 中兴通讯股份有限公司 | 云计算业务实现方法和系统 |
CN104601680B (zh) * | 2014-12-31 | 2018-03-16 | 华为技术有限公司 | 一种资源管理方法及装置 |
CN105159753B (zh) * | 2015-09-25 | 2018-09-28 | 华为技术有限公司 | 加速器虚拟化的方法、装置及集中资源管理器 |
-
2015
- 2015-12-29 CN CN201511016944.9A patent/CN106933646B/zh active Active
-
2016
- 2016-09-21 WO PCT/CN2016/099587 patent/WO2017113895A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5761498A (en) * | 1994-02-07 | 1998-06-02 | Fujitsu Limited | Distribution file system for accessing required portion of file |
CN102142032A (zh) * | 2011-03-28 | 2011-08-03 | 中国人民解放军国防科学技术大学 | 一种分布式文件系统的数据读写方法及系统 |
CN104216782A (zh) * | 2014-08-19 | 2014-12-17 | 东南大学 | 高性能计算和云计算混合环境中的动态资源管理方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2017113895A1 (zh) | 2017-07-06 |
CN106933646A (zh) | 2017-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108537543B (zh) | 区块链数据的并行处理方法、装置、设备和存储介质 | |
US11055082B2 (en) | Unified update tool for multi-protocol network adapter | |
US10324754B2 (en) | Managing virtual machine patterns | |
US10956148B2 (en) | Concurrent I/O enclosure firmware/field-programmable gate array (FPGA) update in a multi-node environment | |
US10824466B2 (en) | Container migration | |
CN105094983B (zh) | 计算机,控制设备和数据处理方法 | |
US10341264B2 (en) | Technologies for scalable packet reception and transmission | |
US10169238B2 (en) | Memory access for exactly-once messaging | |
CN113641457A (zh) | 容器创建方法、装置、设备、介质及程序产品 | |
US11201836B2 (en) | Method and device for managing stateful application on server | |
US10621124B2 (en) | Method, device and computer program product for enabling SR-IOV functions in endpoint device | |
US11237761B2 (en) | Management of multiple physical function nonvolatile memory devices | |
CN116320469B (zh) | 一种虚拟化视频编解码系统及方法、电子设备和存储介质 | |
CN104731635A (zh) | 一种虚拟机访问控制方法,及虚拟机访问控制系统 | |
CN106933646B (zh) | 一种创建虚拟机的方法及装置 | |
CN108234551B (zh) | 一种数据处理方法及装置 | |
CN116860391A (zh) | Gpu算力资源调度方法、装置、设备和介质 | |
CN115408107A (zh) | 一种虚拟机的热迁移方法、设备、系统及存储介质 | |
US10346424B2 (en) | Object processing | |
US10951537B1 (en) | Adjustable receive queue for processing packets in a network device | |
US11953972B2 (en) | Selective privileged container augmentation | |
US10956354B2 (en) | Detecting a type of storage adapter connected and miscabling of a microbay housing the storage adapter | |
US10884832B2 (en) | Aggregation messaging within an integration environment | |
US20230034196A1 (en) | Techniques for providing synchronous and asynchronous data processing | |
CN116204463A (zh) | 数据处理方法及系统、电子设备、存储介质 |
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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200421 Address after: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee after: HUAWEI TECHNOLOGIES Co.,Ltd. Address before: 301, A building, room 3, building 301, foreshore Road, No. 310052, Binjiang District, Zhejiang, Hangzhou Patentee before: Huawei Technologies Co.,Ltd. |
|
TR01 | Transfer of patent right |