CN110704167B - 一种创建虚拟机的方法、装置、设备和存储介质 - Google Patents

一种创建虚拟机的方法、装置、设备和存储介质 Download PDF

Info

Publication number
CN110704167B
CN110704167B CN201910954568.XA CN201910954568A CN110704167B CN 110704167 B CN110704167 B CN 110704167B CN 201910954568 A CN201910954568 A CN 201910954568A CN 110704167 B CN110704167 B CN 110704167B
Authority
CN
China
Prior art keywords
virtual machine
node
private cloud
cloud
computing 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
Application number
CN201910954568.XA
Other languages
English (en)
Other versions
CN110704167A (zh
Inventor
葛凯凯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910954568.XA priority Critical patent/CN110704167B/zh
Publication of CN110704167A publication Critical patent/CN110704167A/zh
Application granted granted Critical
Publication of CN110704167B publication Critical patent/CN110704167B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Stored Programmes (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供了一种创建虚拟机的方法,应用于物理机控制节点,在接收到虚拟机创建请求时,从第一私有云的节点集合中选择能够满足该虚拟机的资源需求的目标计算节点,该第一私有云的节点集合包括第二私有云的节点集合,并在该目标计算节点上创建虚拟机,而且,将该目标计算节点加入到第二私有云的节点集合中,以建立该虚拟机所属的管理网络与该目标计算节点的对应关系,通过建立虚拟机所属的管理网络与目标计算节点的对应关系,实现打通了管理网络与私有云网络之间的连接,不需要构建复杂的云管理平台,就能打通公有云和私有云的资源壁垒。

Description

一种创建虚拟机的方法、装置、设备和存储介质
技术领域
本发明涉及数据处理技术领域,更具体的说,是涉及一种创建虚拟机的方法、装置、设备和存储介质。
背景技术
在现在的云计算时代,用户使用云计算的方式一般有以下几种:公有云使用方式:用户通过购买公有云上面的服务,比如虚拟机和云存储来满足业务需求;私有云使用方式:这种用户一般是政企,用户有自己的物理服务器和机房,通过部署Openstack来部署私有云平台,该OpenStack是开源的Iaas(Infrastructure as a Service,基础设施即服务)管理平台,通过这个平台生产虚拟机和云存储。除了以上两种常规的使用场景外,还有一些小型企业可能没有自己的物理服务器和机房,但是又不想直接购买公有云上面的虚拟机和云存储,想搭建自己的私有云平台,便于管理和维护。
目前混合云方案大多都是同时纳管公有云和私有云,在云管理平台上面可以使用和管理公有云和私有云的资源,同时打通公有云和私有云之间的资源壁垒,主要是计算、存储和网络之间资源的打通,如图1所示为现有的混合云示意图,该混合云示意图可知,通过云管理平台同时管理公有云和私有云,通过公有云和私有云之间的资源打通,来使用户可以同时使用公有云和私有云的资源。比如可以把私有云的数据定时备份到共有云上或者私有云的虚拟机使用公有云的云硬盘进行挂载等。
一般云管理平台通过设置多后端驱动来同时驱动管理多个Iaas云(包括公有云和私有云),提供统一的接口管理各个Iaas云的资源。资源的打通,可能需要一些物理网络设备:比如交换机、路由器等,不仅如此云管理平台需要统一管理多个Iaas云的资源,也就是需要给各个资源一个唯一的资源id。
目前的混合云方案达到了同时管理公有云和私有云,但是增加了用户的成本,用户不仅需要购买公有云的资源,而且还要搭建私有云,不仅如此,用户还要构建复杂的云管理平台,打通公有云和私有云的资源壁垒,导致用户使用混合云时需要付出的成本较高。
发明内容
有鉴于此,本发明提供了一种创建虚拟机的方法,以克服现有技术中需要构建复杂的云管理平台才能打通公有云和私有云的资源壁垒的问题。
为实现上述目的,本发明提供如下技术方案:
一种创建虚拟机的方法,应用于物理机控制节点,所述方法包括:
接收虚拟机创建请求,所述创建请求中包含所述虚拟机的资源要求以及所属的OpenStack的管理网络,所述管理网络属于公有云网络;
获取第一私有云的节点集合中至少两个计算节点的资源信息;
基于所述至少两个计算节点的资源信息以及所述虚拟机的资源要求,选择目标计算节点;
在所述目标计算节点创建所述虚拟机;
将所述目标计算节点加入第二私有云的节点集合中,以建立所述虚拟机所属的管理网络与所述第二私有云的节点集合中所述目标计算节点的对应关系,所述第一私有云的节点集合包括所述第二私有云的节点集合。
本发明实施例还提供一种创建虚拟机的装置,其特征在于,应用于物理机控制节点,所述装置包括:
接收模块,用于接收虚拟机创建请求,所述创建请求中包含所述虚拟机的资源要求以及所属的OpenStack的管理网络,所述管理网络属于公有云网络;
获取模块,用于获取第一私有云的节点集合中至少两个计算节点的资源信息;
选择模块,用于基于所述至少两个计算节点的资源信息以及所述虚拟机的资源要求,选择目标计算节点;
创建模块,用于在所述目标计算节点创建所述虚拟机;以及将所述目标计算节点加入第二私有云的节点集合中,以建立所述虚拟机所属的管理网络与所述第二私有云的节点集合中所述目标计算节点的对应关系,所述第一私有云的节点集合包括所述第二私有云的节点集合。
经由上述的技术方案可知,与现有技术相比,本发明提供了一种创建虚拟机的方法,应用于物理机控制节点,在接收到虚拟机创建请求时,从第一私有云的节点集合中选择能够满足该虚拟机的资源需求的目标计算节点,该第一私有云的节点集合包括第二私有云的节点集合,并在该目标计算节点上创建虚拟机,而且,将该目标计算节点加入到第二私有云的节点集合中,以建立该虚拟机所属的管理网络与该目标计算节点的对应关系,通过建立虚拟机所属的管理网络与目标计算节点的对应关系,实现打通了管理网络与私有云网络之间的连接,不需要构建复杂的云管理平台,就能打通公有云和私有云的资源壁垒。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为现有的混合云示意图;
图2为本发明混合云的架构示意图;
图3为本发明混合云的功能示意图;
图4为本发明自助页面示意图;
图5为本发明监控页面示意图;
图6为本发明运维页面示意图;
图7为本发明混合云部署示意图;
图8为本发明混合云部署另一示意图;
图9为本发明网络资源一示意图;
图10为本发明网络资源另一示意图;
图11为本发明实施例提供的创建虚拟机的方法的流程图;
图12为本发明实施例提供的创建虚拟机的方法中网络资源示意图;
图13为本发明实施例提供的创建虚拟机的方法的另一个流程图;
图14为本发明实施例提供的创建虚拟机的方法的又一个流程图;
图15为本发明实施例提供的创建虚拟机的装置的结构框图;
图16为本发明实施例提供的创建虚拟机的装置的硬件结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的创建虚拟机的方法可由物理机控制节点实现,其中,该物理机控制节点是混合云中部分结构,具体的该混合云的架构示意图如图2所示,该混合云包括业务层、云网关层以及基础云,该基础云具体是采用OpenStack;该云网关层包括:DB、Venus(云网关接口)、ip系统、RBAC(Role-Based Access Control,基于角色的权限访问控制)、CMDB(Configuration Management Database,云平台资源统计系统)等;该业务层包括:自助平台、监控平台以及运维平台。
其中,该图2中的业务层和云网关层统称为云管平台,云管平台的服务会部署在混合云Openstack生产出来的虚拟机中,也就是通过Openstack孵化出虚拟机,然后搭云管平台。
具体的,构建的混合云平台包括三层用户层、服务层和硬件基础设施层。
用户层主要是用户和管理使用的web操作界面,主要分为三个平台;云服务自助平台、监控云平台和云运维平台,其中自助平台是用户申请资源的平台(比如申请虚拟机、云存储等);监控云平台主要是监控整个云平台的资源使用信息以及一些故障告警,针对运维人员;云运维平台主要是统筹管理平台的资源信息,包括RBAC、CMDB(云平台资源统计系统)、ip系统,这个平台针对运维人员。
其中,该ip系统主要用来分配管理ip、子网等网络资源,云平台的所有资源的申请和释放在CMDB审计。
服务层主要是包括云平台能提供的资源服务能力,主要分为计算、存储、网络、Paas(Platform-as-a-Service,平台即服务)服务和安全。
硬件基础设施层就是给Tstack混合云提供基础硬件的服务,比如计算服务器、存储服务器还有一些网络设备(交换机、路由器等)。
具体应用中,通过在公有云服务器上部署私有云,以实现提供丰富的云功能,便于POC和产品的展示,也便于一些没有自建机房的企业使用云服务。如在黑石物理服务器上部署混合云软件(如TStack)提供混合云服务。
如下图3所示的为该混合云的功能示意图,包括:用户层、服务层和硬件基础设施。
其中,该用户层包括云服务自助平台、监控云平台和云运维平台,具体的,该云服务器自助平台是用户申请资源的平台(比如申请虚拟机、云存储等),包括如下功能:项目管理、用户管理、知识库管理、流程单管理、工单管理、帮助与支持。监控云平台主要是监控整个云平台的资源使用信息以及一些故障告警,针对运维人员,包括如下功能:集群资源监控、主机资源监控、虚拟机资源监控、存储监控、故障告警、业务监控、平台能力监控。云运维平台主要是统筹管理平台的资源信息,针对运维人员,包括如下功能:CMDB(云平台资源统计系统,云平台的所有资源的申请和释放在CMDB都有审计)、RBAC(鉴权系统)、IP系统(主要用来分配管理ip、子网等网络资源)、消息服务、操作日志、运维管理工具、自动化运维、自动化部署、自动化升级。
其中,该服务层主要是云平台能提供的资源服务能力,包括:计算、存储、网络、Paas服务、安全等组成模块,其中,该计算模块用于提供虚拟机服务、裸金属服务、容器服务;该存储模块用于提供块存储、对象存储;网络模块用于提供VPC、负载均衡、浮动ip、虚拟网卡、虚拟路由器、弹性公网ip;Paas服务模块用于提供TDSQL、CKV、MonogoDB;安全模块用于提供安全组。
其中,硬件基础设施层就是给Tstack混合云提供基础硬件的服务,包括:黑石计算节点、黑石存储节点以及网络交换机。
如图4所示的为自助页面示意图,该自助页面中展示了云产品的一些功能,如计算、网络、……管理与监控等。
如图5所示的为监控页面示意图,该页面中是以全国数据中心实时监控为例进行的展示。
如图6所示的为运维页面示意图,该页面中展示了资源概括、资源使用率等各项与运行维护相关的信息。
如图7所示的混合云部署一示意图,该部署方式中包括云管平台、基础云与服务器,该服务器具体是用于管理节点的服务器,如黑石服务器。该云管平台中包括多个虚拟机(virtual machine,VM),各个虚拟机的功能包含了上图2中业务层和云网关层的功能。其中,该基础云实现Openstack平台,服务器包括了计算节点、存储节点以及网络节点三种服务器。
其中,现有的Openstack中具有十几个组件,本方案中应用到的组件包括如下7个,Keystone(提供用户认证服务)、glance(用来存储和管理镜像)、nova(用来申请和管理虚拟机)、neutron(用来管理网络资源)cinder(用来管理云存储)、ironic(用来管理裸金属(物理服务器))、heat(用来进行资源编排)。
具体的,不同的节点服务器用来部署不同的服务。如,控制节点运行keystone、glance、cinder、nova、neutron、heat服务;计算节点运行neutron和nova;存储节点运行Ceph服务。
如图8所示的为混合云部署另一示意图,包括控制节点、计算节点和存储节点,该控制节点中具体可以包括:Keystone、Glance、Cinder、Heat、Neutron、Nova等组件,该计算基点可以包括若干Neutron和Nova组件,图中采用三组表示,该存储节点包括多个Ceph-osd、Ceph-mon、Ceph-rgw、Ceph-mds等服务组件。
具体的,为了保证在本发明涉及的混合云部署方案中,能够创建可用的虚拟机,则需要从计算、网络以及存储资源三个方面打通公有云与私有云。而本发明中,公有云网络与私有云网络之间的对应关系,实现网络打通,而通过存储节点使用Ceph存储,公有云的管理网络和Ceph公有存储网络都使用私有云网络部署实现打通存储资源。
如图9所示的网络资源一示意图,该示意图中展示了控制节点与存储节点打通网络,控制节点应用Openstack管理网(公有云网络),存储节点应用ceph-pulic网络(私有云网络),具体通过vlan网络连接该Openstack管理网和ceph-pulic网络。
如图10所示的网络资源另一示意图,该示意图中展示了计算节点与存储节点打通网络,计算节点应用Openstack存储网(公有云网络),存储节点应用ceph-pulic网络(私有云网络),具体通过vlan网络连接该Openstack存储网和ceph-pulic网络。
下面对本发明实施例提供的创建虚拟机的方法进行介绍。该方法是基于上述的混合云部署方案中的物理机控制节点实现。
图11为本发明实施例提供的创建虚拟机的方法的流程图,所述方法可以包括:
步骤S100:接收虚拟机创建请求;
其中,所述创建请求中包含所述虚拟机的资源要求以及所属的OpenStack的管理网络;
其中,所述管理网络属于公有云网络。
其中,该创建请求中携带有该虚拟机的相关信息,如创建的资源要求、名字、网络信息(所属的OpenStack的管理网络)等。
具体的,该创建虚拟机的相关信息是由用户上传的信息。
具体实施中,是该通过控制节点中的nova-api(Application ProgrammingInterface,操作系统留给应用程序的一个调用接口)(nova组件的接口)来执行接收创建请求。
步骤S200:获取第一私有云的节点集合中至少两个计算节点的资源信息;
其中,该第一私有云的节点集合中包含私有云中所有的计算节点。
则该私有云中所有的计算节点的相关信息可以存储在数据库中,通过对数据中的信息进行读取,即可得到该计算节点的信息。
具体实施中,该nova-api通过RPC(Remote Procedure Call Protocol,远程调用协议)把请求传给控制节点中的nova-conductor组件,以使得该nova-conductor组件实现该获取计算节点的资源信息步骤。
具体实施中,每个计算节点定时通过底层的命令获取如CPU(Central ProcessingUnit,中央处理器),内存,磁盘总量和使用量的信息,然后通过nova-conductor组件写入数据库。
其中,该nova-conductor组件用于操作数据。
步骤S300:基于所述至少两个计算节点的资源信息以及所述虚拟机的资源要求,选择目标计算节点;
其中,根据该第一私有云中的各个计算节点的资源信息,与该虚拟机的资源要求,从中选择目标计算节点,该目标计算节点是能够满足该虚拟机的资源要求的计算节点。
具体实施中,该步骤是由控制节点中的nova-schduler(调度器)组件实现,该nova-schduler通过调度算法选择一个计算节点创建虚拟机。。
其中,所述步骤S300,包括:
步骤S301:基于所述虚拟机的资源需求,从第一私有云的节点集合中筛选得到满足所述资源需求的第一计算节点集合,所述第一计算节点集合中包含至少两个计算节点;
具体的,nova-schduler组件根据每个计算节点可用资源CPU,内存,磁盘等,查看此次虚拟机的创建有没有计算节点满足,然后过滤出所有满足的计算节点。
步骤S302:按照预设的权责计算规则,计算所述第一计算节点集合中每个计算节点的权责;
步骤S303:选择权责数值最大的计算节点作为目标计算节点。
具体的,nova-schduler组件给这些节点按权责进行计算,比如内存的权重是多少,cpu的权重是多少,按照权重计算节点从高到低排序,取出最高权重的计算节点,该计算节点用于后续创建虚拟机。
步骤S400:在所述目标计算节点创建所述虚拟机;
具体的,该创建虚拟机的具体方式包括:
将所述创建请求发送给所述目标计算节点,以使得所述目标计算节点的管理模块根据所述创建请求中的信息创建虚拟机。
具体实施中,该管理节点中nova-schduler组件通过RPC把创建虚拟机的请求传给选出来的计算节点上的nova-compute(管理模块)组件,以使得通过该nova-compute组件在该计算节点上创建虚拟机。
需要说明的是,该Nova-compute是管理计算节点的组件,其能够定时统计计算节点的资源。
具体的,创建虚拟机的过程是:首先,下载虚拟机的镜像,然后,创建虚拟机的系统盘以及创建虚拟机的网卡,最后,通过底层虚拟化工作如采用qemu(虚拟操作系统模拟器)-kvm(kvm加速器)启动虚拟机的进程。
步骤S500:将所述目标计算节点加入第二私有云的节点集合中,以建立所述虚拟机所属的管理网络与所述第二私有云的节点集合中所述目标计算节点的对应关系,所述第一私有云的节点集合包括所述第二私有云的节点集合。
其中,该第二私有云是该第一私有云的部分,具体实施中,该第二私有云可以根据不同的用户进行划分,一个用户占据一个第二私有云。
其中,将所述目标计算节点加入第二私有云的节点集合中,包括:
依据管理网络与私有云的节点集合的对应关系,选择与所述虚拟机所属的管理网络对应的第二私有云;
将所述目标计算节点的标识信息加入所述第二私有云的节点集合的节点列表中。
具体的,该目标计算节点的标识信息具体可以是该计算节点的ID。
其中,该管理网络与私有云的节点集合的对应关系,具体是以映射表的方式存在,该映射表是映射Openstack系统的网络信息(管理网络)到私有云环境网络信息的转换,这样从实现的角度就是打通网络,使用的时候就可以通过openstack的找到私有云网络信息。
具体实施中,所有申请的基础云Openstack资源都要通过venus组件(云网关接口),在venus中创建一个Openstack网络和私有云vlan网络的映射关系表,映射表的内容建立是在创建openstack网络的时候,通过调用openstack创建网络获得Openstack网络id,通过调用黑石系统创建vlan网络获得黑石vlan网络信息,然后加入到映射表中。
在Openstack同一个网络下面的两个虚拟机要通信,这两个虚拟机在不同的私有云计算节点上面,如果要实现虚拟机的通信,要虚拟机所在的两个私有云计算节点需要在同一个私有云vlan网络中,这样虚拟机的租户网络才能打通。也就是说Openstack租户网络的打通需要把虚拟机所在的私有云计算节点要加入到同一个私有云的vlan物理网络中才能实现网络资源的打通,也就是说在同一个openstack网络中的虚拟机,其所在的所有计算节点也要在一个私有云vlan物理网络中,即Openstack网络和私有云的网络存在一个一对一的映射关系。
如图12所示的为网络资源示意图,包括:venus(云网关接口)、公有云Openstack、私有云黑石网络。其中不属于两个不同黑石计算节点的虚拟机VM,该两个虚拟机属于同租户网,加入相同的黑石vlan网络,该相同的vlan网络采用同一个黑石交换机。
图13为本发明实施例提供的创建虚拟机的方法的另一个流程图,所述方法可以包括:
其中,在步骤S400之后,步骤S500之前,还包括:
步骤S600:轮询所述虚拟机的状态;
步骤S700:基于所述虚拟机的状态是允许状态,确定所述虚拟机创建完成;
执行步骤S500所述将所述目标计算节点加入第二私有云的节点集合中步骤。
具体的,该混合云中的业务层把openstack的公有云网络信息传递给venus,调用openstack创建完虚拟机之后,venus通过轮询监控检测虚拟机是否创建完成。
具体的,通过检测该虚拟机的状态参数,当该虚拟机的状态是运行状态(active)时,确定该虚拟机创建完成。
具体实施中,在确定虚拟机创建完成之后,通过查找venus中存储的Openstack公有云网络和该创建虚拟机的客户的私有云网络的映射表,找到对应的私有云vlan网络,同时通过虚拟机找到相应计算节点的ID,然后把该计算节点加入到该用户的私有云vlan网络中。
图14为本发明实施例提供的创建虚拟机的方法的又一个流程图,所述方法,在步骤S400之后,步骤S500之前,还包括:
步骤S800:将所述管理网络中的镜像、所述虚拟机的数据盘和系统盘在分布式存储系统以快照存储。
其中,在所述目标计算节点创建所述虚拟机后,是将虚拟机的管理网络中的镜像、虚拟机的数据盘和系统盘都作为Ceph中rbd(rados block device,块设备)来存储数据,该rbd块设备是ceph中的一种存储方式,具体是作为快照存储
具体实施中,是将Openstack中的组件glance、cinder和nova使用ceph实现统一存储。
具体的,把OpenStack管理网络和Ceph的pulic公共网络都使用私有云的vlan网络部署就能打通存储资源。
其中,在执行完步骤S500之后,本方案还包括:
步骤S900:接收虚拟机向系统盘和数据盘写入的数据,调用所述分布式存储系统的块设备库;
步骤S1000:基于所述块设备库向所述分布式存储系统的存储节点写数据。
具体的,混合云中计算虚拟化使用qemu-kvm,虚拟机中向系统盘和数据盘写数据的时候,就是通过qemu-kvm进程调用Ceph的librbd(块设备库)去向存储系统读写数据,因此,需要打通虚拟机的存储资源,也就是要私有云中打通计算节点和Ceph存储系统的存储网络,把OpenStack存储网和Ceph-Cluster(集群)网络(即存储系统的存储网络)都使用私有云的vlan网络部署就能打通存储资源。
下面对本发明实施例提供的创建虚拟机的装置进行介绍,下文描述的创建虚拟机的装置可与上文创建虚拟机的方法相互对应参照。
图15为本发明实施例提供的创建虚拟机的装置的结构框图,该创建虚拟机的装置可以包括:接收模块1501、获取模块1502、选择模块1503和创建模块1504;
其中,该接收模块1501,用于接收虚拟机创建请求,所述创建请求中包含所述虚拟机的资源要求以及所属的OpenStack的管理网络,所述管理网络属于公有云网络;
其中,该获取模块1502,用于获取第一私有云的节点集合中至少两个计算节点的资源信息;
其中,该选择模块1503,用于基于所述至少两个计算节点的资源信息以及所述虚拟机的资源要求,选择目标计算节点;
其中,该创建模块1504,用于在所述目标计算节点创建所述虚拟机;以及将所述目标计算节点加入第二私有云的节点集合中,以建立所述虚拟机所属的管理网络与所述第二私有云的节点集合中所述目标计算节点的对应关系,所述第一私有云的节点集合包括所述第二私有云的节点集合。
本实施例中,在接收到虚拟机创建请求时,从第一私有云的节点集合中选择能够满足该虚拟机的资源需求的目标计算节点,该第一私有云的节点集合包括第二私有云的节点集合,并在该目标计算节点上创建虚拟机,而且,将该目标计算节点加入到第二私有云的节点集合中,以建立该虚拟机所属的管理网络与该目标计算节点的对应关系,通过建立虚拟机所属的管理网络与目标计算节点的对应关系,实现打通了管理网络与私有云网络之间的连接,不需要构建复杂的云管理平台,就能打通公有云和私有云的资源壁垒。
可选的,创建虚拟机的装置可以为硬件设备,上文描述的模块、单元可以设置于创建虚拟机的装置内的功能模块。图16示出了创建虚拟机的装置的硬件结构框图,参照图16,创建虚拟机的装置可以包括:处理器1,通信接口2,存储器3和通信总线4;其中处理器1、通信接口2、存储器3通过通信总线4完成相互间的通信;可选的,通信接口2可以为通信模块的接口,如GSM模块的接口;
处理器1,用于执行程序;存储器3,用于存放程序;程序可以包括程序代码,所述程序代码包括计算机操作指令;
处理器1可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路;存储器3可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
其中,程序可具体用于:
接收虚拟机创建请求,所述创建请求中包含所述虚拟机的资源要求以及所属的OpenStack的管理网络,所述管理网络属于公有云网络;
获取第一私有云的节点集合中至少两个计算节点的资源信息;
基于所述至少两个计算节点的资源信息以及所述虚拟机的资源要求,选择目标计算节点;
在所述目标计算节点创建所述虚拟机;
将所述目标计算节点加入第二私有云的节点集合中,以建立所述虚拟机所属的管理网络与所述第二私有云的节点集合中所述目标计算节点的对应关系,所述第一私有云的节点集合包括所述第二私有云的节点集合。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种创建虚拟机的方法,其特征在于,应用于物理机控制节点,所述方法包括:
接收虚拟机创建请求,所述创建请求中包含所述虚拟机的资源要求以及所属的OpenStack的管理网络,所述管理网络属于公有云网络;
获取第一私有云的节点集合中至少两个计算节点的资源信息;
基于所述至少两个计算节点的资源信息以及所述虚拟机的资源要求,选择目标计算节点;
在所述目标计算节点创建所述虚拟机;
将所述目标计算节点加入第二私有云的节点集合中,以建立所述虚拟机所属的管理网络与所述第二私有云的节点集合中所述目标计算节点的对应关系,所述第一私有云的节点集合包括所述第二私有云的节点集合。
2.根据权利要求1所述的方法,其特征在于,所述基于所述至少两个计算节点的资源信息以及所述虚拟机的资源要求,选择目标计算节点,包括:
基于所述虚拟机的资源需求,从第一私有云的节点集合中筛选得到满足所述资源需求的第一计算节点集合,所述第一计算节点集合中包含至少两个计算节点;
按照预设的权责计算规则,计算所述第一计算节点集合中每个计算节点的权责;
选择权责数值最大的计算节点作为目标计算节点。
3.根据权利要求1所述的方法,其特征在于,还包括:
轮询所述虚拟机的状态;
基于所述虚拟机的状态是允许状态,确定所述虚拟机创建完成,执行所述将所述目标计算节点加入第二私有云的节点集合中步骤。
4.根据权利要求1所述的方法,其特征在于,所述将所述目标计算节点加入第二私有云的节点集合中,包括:
依据管理网络与私有云的节点集合的对应关系,选择与所述虚拟机所属的管理网络对应的第二私有云;
将所述目标计算节点的标识信息加入所述第二私有云的节点集合的节点列表中。
5.根据权利要求1所述的方法,其特征在于,还包括:
将所述管理网络中的镜像、所述虚拟机的数据盘和系统盘在分布式存储系统以快照存储。
6.根据权利要求1所述的方法,其特征在于,所述在所述目标计算节点创建所述虚拟机,包括:
将所述创建请求发送给所述目标计算节点,以使得所述目标计算节点的管理模块根据所述创建请求中的信息创建虚拟机。
7.根据权利要求5所述的方法,其特征在于,还包括:
接收虚拟机向系统盘和数据盘写入的数据,调用所述分布式存储系统的块设备库;
基于所述块设备库向所述分布式存储系统的存储节点写数据。
8.一种创建虚拟机的装置,其特征在于,应用于物理机控制节点,所述装置包括:
接收模块,用于接收虚拟机创建请求,所述创建请求中包含所述虚拟机的资源要求以及所属的OpenStack的管理网络,所述管理网络属于公有云网络;
获取模块,用于获取第一私有云的节点集合中至少两个计算节点的资源信息;
选择模块,用于基于所述至少两个计算节点的资源信息以及所述虚拟机的资源要求,选择目标计算节点;
创建模块,用于在所述目标计算节点创建所述虚拟机;以及将所述目标计算节点加入第二私有云的节点集合中,以建立所述虚拟机所属的管理网络与所述第二私有云的节点集合中所述目标计算节点的对应关系,所述第一私有云的节点集合包括所述第二私有云的节点集合。
9.一种创建虚拟机的设备,其特征在于,应用于物理机控制节点,包括:处理器和存储器;
所述处理器用于执行所述存储器中存储的计算机程序;
所述存储器用于存储计算机程序,所述计算机程序用于执行权利要求1-7任一项所述创建虚拟机的方法。
10.一种计算机可读存储介质,其特征在于,包括若干指令用以执行如权利要求1-7任一项所述的方法。
CN201910954568.XA 2019-10-09 2019-10-09 一种创建虚拟机的方法、装置、设备和存储介质 Active CN110704167B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910954568.XA CN110704167B (zh) 2019-10-09 2019-10-09 一种创建虚拟机的方法、装置、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910954568.XA CN110704167B (zh) 2019-10-09 2019-10-09 一种创建虚拟机的方法、装置、设备和存储介质

Publications (2)

Publication Number Publication Date
CN110704167A CN110704167A (zh) 2020-01-17
CN110704167B true CN110704167B (zh) 2023-09-19

Family

ID=69199644

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910954568.XA Active CN110704167B (zh) 2019-10-09 2019-10-09 一种创建虚拟机的方法、装置、设备和存储介质

Country Status (1)

Country Link
CN (1) CN110704167B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111343011B (zh) * 2020-02-16 2022-12-27 苏州浪潮智能科技有限公司 一种云管理平台融合Openstack网络控制方法及系统
CN111427666B (zh) * 2020-04-01 2022-04-12 浪潮云信息技术股份公司 一种OpenStack环境下虚拟机镜像快速导入方法及系统
CN111736948B (zh) * 2020-05-20 2023-10-31 上海仪电(集团)有限公司中央研究院 云计算平台自动化运维系统、方法、终端设备及存储介质
CN111641523B (zh) * 2020-05-25 2023-01-17 中国建设银行股份有限公司 用户数据管理方法、装置、系统及存储介质
CN111800340B (zh) * 2020-06-05 2022-08-12 北京京东尚科信息技术有限公司 数据包转发方法和装置
CN112748983B (zh) * 2020-12-29 2024-08-13 中国人寿保险股份有限公司上海数据中心 一种基于OpenStack的虚拟私有云系统及其搭建方法
CN112995273B (zh) * 2021-01-28 2022-03-04 腾讯科技(深圳)有限公司 网络打通方案生成方法、装置、计算机设备和存储介质
CN114629789B (zh) * 2022-03-10 2024-05-14 常州工程职业技术学院 一种基于OpenStack架构的私有云IaaS实践平台构建方法
CN114944971B (zh) * 2022-05-11 2023-07-21 安超云软件有限公司 Kubernetes部署网络的方法及装置、电子设备和存储介质
CN116405391A (zh) * 2023-04-10 2023-07-07 长扬科技(北京)股份有限公司 基于OpenStack的虚拟机节点筛选方法、系统和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103914266A (zh) * 2013-01-03 2014-07-09 魏泽群 分配云端数据并由群组打印端主动打印该云端数据的方法
CN104902005A (zh) * 2015-04-13 2015-09-09 中国联合网络通信集团有限公司 一种混合云中的资源调度方法、系统和私有云
CN108347493A (zh) * 2017-01-25 2018-07-31 华为技术有限公司 混合云管理方法、装置和计算设备
CN108614726A (zh) * 2018-03-22 2018-10-02 华为技术有限公司 虚拟机创建方法及装置
CN109889621A (zh) * 2019-01-18 2019-06-14 北京百度网讯科技有限公司 虚拟私有云服务的配置方法和装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9274818B2 (en) * 2013-02-06 2016-03-01 International Business Machines Corporation Reliable and scalable image transfer for data centers with low connectivity using redundancy detection
US10067780B2 (en) * 2015-10-06 2018-09-04 Cisco Technology, Inc. Performance-based public cloud selection for a hybrid cloud environment

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103914266A (zh) * 2013-01-03 2014-07-09 魏泽群 分配云端数据并由群组打印端主动打印该云端数据的方法
CN104902005A (zh) * 2015-04-13 2015-09-09 中国联合网络通信集团有限公司 一种混合云中的资源调度方法、系统和私有云
CN108347493A (zh) * 2017-01-25 2018-07-31 华为技术有限公司 混合云管理方法、装置和计算设备
CN108614726A (zh) * 2018-03-22 2018-10-02 华为技术有限公司 虚拟机创建方法及装置
CN109889621A (zh) * 2019-01-18 2019-06-14 北京百度网讯科技有限公司 虚拟私有云服务的配置方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
面向移动用户的多媒体分享系统向云迁移的设计与实现;陈略;《中国优秀硕士学位论文全文数据库 (信息科技辑)》;全文 *

Also Published As

Publication number Publication date
CN110704167A (zh) 2020-01-17

Similar Documents

Publication Publication Date Title
CN110704167B (zh) 一种创建虚拟机的方法、装置、设备和存储介质
CN109040276B (zh) 一种构建云平台的方法、装置、计算机存储介质及终端
CN103001992B (zh) 虚拟桌面实现系统及其使用方法
KR20170024606A (ko) 소프트웨어 정의 네트워크 중의 서비스 편성 방법 및 장치, 저장 매체
CN106302574B (zh) 一种业务可用性管理方法、装置及其网络功能虚拟化架构
CN105684357A (zh) 虚拟机中地址的管理
KR20190020073A (ko) 가속 자원 처리 방법 및 장치, 및 네트워크 기능 가상화 시스템
CN103595801B (zh) 一种云计算系统及其虚拟机实时监控方法
CN110784515B (zh) 基于分布式集群的数据存储方法、及其相关设备
CN109120444B (zh) 云资源管理方法、处理器以及存储介质
CN107111510B (zh) 一种针对vnf包进行操作的方法及装置
US20140359127A1 (en) Zero touch deployment of private cloud infrastructure
CN112748983B (zh) 一种基于OpenStack的虚拟私有云系统及其搭建方法
US8543680B2 (en) Migrating device management between object managers
CN114461376A (zh) 共享企业云
US20150128221A1 (en) Location based authentication of users to a virtual machine in a computer system
CN111371615B (zh) 在线服务器、运维工具的更新方法及系统和可读存储介质
CN115827223A (zh) 一种基于云原生平台的服务网格托管方法和系统
Levin et al. Hierarchical load balancing as a service for federated cloud networks
CN115098020A (zh) 一种存储管理方法、装置及存储介质
US10397071B2 (en) Automated deployment of cloud-hosted, distributed network monitoring agents
CN102929693B (zh) 整机柜服务器的性能评测方法及装置
US10608867B2 (en) Method and an electronic arrangement for providing demand-supply service of physical communication network resources
CN113300866B (zh) 节点能力管控方法、设备、系统及存储介质
WO2021013185A1 (zh) 虚机迁移处理及策略生成方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40020113

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant