CN111290712B - 块设备创建方法、装置、云计算管理系统及存储介质 - Google Patents

块设备创建方法、装置、云计算管理系统及存储介质 Download PDF

Info

Publication number
CN111290712B
CN111290712B CN202010073833.6A CN202010073833A CN111290712B CN 111290712 B CN111290712 B CN 111290712B CN 202010073833 A CN202010073833 A CN 202010073833A CN 111290712 B CN111290712 B CN 111290712B
Authority
CN
China
Prior art keywords
storage cluster
storage
component
target
feature information
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
CN202010073833.6A
Other languages
English (en)
Other versions
CN111290712A (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 CN202010073833.6A priority Critical patent/CN111290712B/zh
Publication of CN111290712A publication Critical patent/CN111290712A/zh
Application granted granted Critical
Publication of CN111290712B publication Critical patent/CN111290712B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

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

本申请实施例公开了一种块设备创建方法、装置、云计算管理系统及存储介质,属于计算机技术领域。该方法包括:通过Cinder组件,建立与多个存储集群的通信连接;通过Cinder组件,创建多个存储集群的特征信息;接收携带目标特征信息的目标指令,通过Nova组件、Glance组件或Cinder组件中的至少一个,在多个存储集群中确定与目标特征信息对应的目标存储集群,在目标存储集群中创建块设备。因此,根据特征信息,可在多个存储集群中的目标存储集群中创建块设备,多个存储集群均可作为云计算管理系统的后端存储系统,提高了存储系统的容量。并且可通过接入新的存储集群实现存储集群的扩充,提高了扩充存储集群的灵活性。

Description

块设备创建方法、装置、云计算管理系统及存储介质
技术领域
本申请实施例涉及计算机技术领域,特别涉及一种块设备创建方法、装置、云计算管理系统及存储介质。
背景技术
OpenStack平台(一种云计算管理平台,简称云平台)是一种基于硬件资源和软件资源的平台,可提供计算、网络通信和存储等服务。OpenStack平台中包括Cinder(块设备服务)组件、Nova(计算服务)组件和Glance(镜像服务)组件,可通过这三个组件来创建虚拟机,使虚拟机运行在OpenStack平台上。其中,Cinder组件、Nova组件和Glance组件仅提供管理能力不提供存储能力,因此OpenStack平台使用分布式存储集群来作为后端的存储系统。
相关技术中,OpenStack平台将一个Ceph(分布式)存储集群作为后端的存储系统,如图1所示,Cinder组件101、Nova组件102和Glance组件103分别与该Ceph存储集群104建立通信连接,在该Ceph存储集群104中创建块设备,在该块设备中存储数据。但是,上述相关技术仅能在一个存储集群中创建块设备,而不涉及多个存储集群的情况,导致存储系统的容量较小,无法进行存储集群的扩充,具有局限性。
发明内容
本申请实施例提供了一种块设备创建方法、装置、云计算管理系统及存储介质,可以提高扩充存储集群的灵活性。所述技术方案如下:
一方面,提供了一种块设备创建方法,云计算管理系统中包括Cinder组件、Nova组件和Glance组件,所述方法包括:
通过所述Cinder组件,建立与多个存储集群的通信连接;
通过所述Cinder组件,分别创建所述多个存储集群的特征信息;
接收携带目标特征信息的目标指令,所述目标指令至少指示执行创建块设备的操作;
响应于所述目标指令,通过所述Nova组件、所述Glance组件或所述Cinder组件中的至少一个,在所述多个存储集群中确定与所述目标特征信息对应的目标存储集群,在所述目标存储集群中创建块设备。
另一方面,提供了一种块设备创建装置,云计算管理系统中包括Cinder组件、Nova组件和Glance组件,所述装置包括:
连接建立模块,用于通过所述Cinder组件,建立与多个存储集群的通信连接;
第一信息创建模块,用于通过所述Cinder组件,分别创建所述多个存储集群的特征信息;
指令接收模块,用于接收携带目标特征信息的目标指令,所述目标指令至少指示执行创建块设备的操作;
块设备创建模块,用于响应于所述目标指令,通过所述Nova组件、所述Glance组件或所述Cinder组件中的至少一个,在所述多个存储集群中确定与所述目标特征信息对应的目标存储集群,在所述目标存储集群中创建块设备。
可选地,所述第一信息创建模块,包括:
信息获取单元,用于通过所述Cinder组件,从所述Cinder组件的配置文件中获取任一存储集群配置的存储集群标识和特征标签;
信息创建单元,用于通过所述Cinder组件,根据所述存储集群标识和所述特征标签,创建所述特征信息。
可选地,所述特征标签包括存储集群的类型标签、存储介质的类型标签或存储集群的用途标签中的至少一种。
可选地,所述第一信息创建模块,包括:
信息获取单元,用于通过所述Cinder组件,从所述Cinder组件的配置文件中获取任一存储集群配置的存储集群标识、特征标签和权重因子;
信息创建单元,用于通过所述Cinder组件,根据所述存储集群标识、所述特征标签和所述权重因子,创建所述特征信息。
可选地,所述存储集群的特征信息为二级特征信息,所述二级特征信息中包括至少一个特征标签,所述装置还包括:
第二信息创建模块,用于通过所述Cinder组件,根据所述多个存储集群的二级特征信息中的特征标签,创建至少一条一级特征信息,每条一级特征信息中包括一个特征标签。
可选地,所述目标特征信息为一级特征信息,所述块设备创建模块,包括:
集群标识确定单元,用于在所述多个存储集群的二级特征信息中,确定与所述一级特征信息匹配的二级特征信息中的存储集群标识;
第一集群确定单元,用于在所述多个存储集群中,确定与所述存储集群标识对应的目标存储集群。
可选地,所述目标指令为镜像数据存储指令,所述块设备创建模块,包括:
第一集群确定单元,用于通过所述Glance组件调用所述Cinder组件,在所述多个存储集群中确定与所述目标特征信息对应的目标存储集群;
块设备创建单元,用于在所述目标存储集群中创建第一块设备;
镜像数据存储单元,用于将虚拟机的镜像数据存储在所述第一块设备中。
可选地,所述目标指令为系统盘创建指令,所述块设备创建模块,包括:
第一集群确定单元,用于通过所述Nova组件调用所述Cinder组件,在所述多个存储集群中确定与所述目标特征信息对应的目标存储集群;
块设备创建单元,用于在所述目标存储集群中创建第二块设备作为虚拟机的系统盘;
镜像数据拷贝单元,用于将虚拟机的镜像数据拷贝到所述系统盘中;
虚拟机启动单元,用于通过所述Nova组件调用所述Cinder组件,根据所述系统盘中的虚拟机的镜像数据,启动所述虚拟机。
可选地,所述目标指令为数据盘创建指令,所述块设备创建模块,包括:
第一集群确定单元,用于通过所述Cinder组件,在所述多个存储集群中确定与所述目标特征信息对应的目标存储集群;
块设备创建单元,用于在所述目标存储集群中创建第三块设备作为虚拟机的数据盘。
可选地,所述块设备创建模块,包括:
第二集群确定单元,用于在所述多个存储集群中确定与所述目标特征信息对应的多个候选存储集群;
权重确定单元,用于分别确定所述多个候选存储集群的权重,将权重最大的候选存储集群作为目标存储集群。
可选地,所述权重确定单元,还用于对于每个候选存储集群,获取所述候选存储集群的容量和已创建的块设备数量;
所述权重确定单元,还用于按照所述容量和所述块设备数量的加权因子,对所述容量和所述块设备数量进行加权求和,得到所述候选存储集群的权重;或者,
所述权重确定单元,还用于按照所述容量和所述块设备数量的加权因子,对所述容量和所述块设备数量进行加权求和,得到所述候选存储集群的第一权重,根据所述候选存储集群的权重因子,对所述第一权重进行加权得到相对权重。
可选地,所述权重确定单元,还用于获取所述候选存储集群的原始容量和已创建的原始块设备数量;或者,
所述权重确定单元,还用于获取所述候选存储集群的原始容量和已创建的原始块设备数量,分别对所述原始容量和所述原始块设备数量进行加权,得到所述候选存储集群的相对容量和相对块设备数量。
另一方面,提供了一种云计算管理系统,所述云计算管理系统包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行以实现如所述块设备创建方法中所执行的操作。
再一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现如所述块设备创建方法中所执行的操作。
本申请实施例提供的方法、装置、云计算管理系统及存储介质,通过Cinder组件,建立与多个存储集群的通信连接,通过Cinder组件,分别创建多个存储集群的特征信息,接收携带目标特征信息的目标指令,响应于目标指令,通过Nova组件、Glance组件或Cinder组件中的至少一个,在多个存储集群中确定与目标特征信息对应的目标存储集群,在目标存储集群中创建块设备。通过Cinder组件,建立与多个存储集群的通信连接,根据存储集群的特征信息,可以在多个存储集群中的目标存储集群中创建块设备,因此多个存储集群均可作为云计算管理系统的后端存储系统,提高了存储系统的容量。并且,本申请实施例提供的方法,可通过接入新的存储集群来实现存储集群的扩充,提高了对存储集群进行扩充的灵活性。
并且,通过创建一级特征信息和二级特征信息,可以根据每个存储集群的特征来进行管理和调度,根据两级特征信息,从多个存储集群中选取对应的目标存储集群来创建块设备,提高了选取目标存储集群的灵活性。
并且,基于候选存储集群的容量、块设备数量以及加权因子和权重因子,来获取存储集群的权重,将权重最大的候选存储集群作为目标存储集群,可以使目标存储集群的选择过程更加合理,有效地平衡了各个存储集群承担的存储压力。而且可通过调整存储集群的权重因子来改变该存储集群被选为目标存储集群的概率,进一步提高了选取目标存储集群的灵活性。
并且,通过本申请实施例提供的方法,在云计算管理系统中接入新的存储集群来实现存储集群的扩充,无需进行数据迁移,能够保证扩充过程中云计算管理系统的稳定运行,提升了云计算管理系统的服务质量,增强了核心竞争力。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是相关技术提供的一种通信连接方式的示意图。
图2是本申请实施例提供的一种云计算管理系统的系统架构图。
图3是本申请实施例提供的一种块设备创建方法的流程图。
图4是本申请实施例提供的另一种通信连接方式的示意图。
图5是相关技术提供的一种集群匹配方式的示意图。
图6是本申请实施例提供的另一种集群匹配方式的示意图。
图7是本申请实施例提供的一种选取目标存储集群的示意图。
图8是本申请实施例提供的一种块设备创建装置的结构示意图。
图9是本申请实施例提供的另一种块设备创建装置的结构示意图。
图10是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
为了便于理解本申请实施例的技术过程,下面对本申请实施例所涉及的一些名词进行解释:
云技术(Cloud Technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
云计算(Cloud Computing)是分布式计算的一种,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务,并且可以随时获取,按需使用,随时扩展,按使用付费。云计算的基础能力提供商,建立云计算资源池,在资源池中部署多种类型的虚拟资源,供外部用户选择使用。云计算资源池中主要包括:计算设备(虚拟化机器,包含操作系统)、存储设备和网络设备。
云存储(Cloud Storage)是在云计算概念上延伸和发展出来的新概念,分布式云存储系统(简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量不同类型的存储设备(也称为存储节点)通过应用软件或应用接口集合起来协同工作,由一个存储设备或者多个存储设备构成一个存储集群,共同对外提供数据存储和业务访问功能。目前,存储系统的存储方法为:创建块设备。在创建块设备时,为每个块设备分配物理存储空间,该物理存储空间可能是某个存储设备或者某几个存储设备的磁盘组成。在块设备上存储数据,也就是将数据存储在文件系统上,文件系统将数据分成许多部分,每一部分是一个对象,文件系统将每个对象分别写入该块设备的物理存储空间,且文件系统会记录每个对象的存储位置信息,从而当请求访问数据时,文件系统能够根据每个对象的存储位置信息对数据进行访问。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种概念,但除非特别说明,这些概念不受这些术语限制。这些术语仅用于将一个概念与另一个概念区分。举例来说,在不脱离本申请的范围的情况下,可以将第一块设备称为第二块设备,且类似地,可将第二块设备称为第一块设备。
其中,至少一个是指一个或者一个以上,例如,至少一个组件可以是一个组件、两个组件、三个组件等任一大于等于一的整数个组件。多个是指两个或者两个以上,例如,多个存储集群可以是两个存储集群、三个存储集群等任一大于等于二的整数个存储集群。每个是指至少一个中的每一个,例如,每个候选存储集群是指多个候选存储集群中的每一个候选存储集群,若多个候选存储集群为3个候选存储集群,则每个候选存储集群是指3个候选存储集群中的每一个候选存储集群。
图2是本申请实施例提供的一种云计算管理系统的系统架构图。该云计算管理系统可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)以及大数据和人工智能平台等基础云计算服务的云服务器。
参见图2,该云计算管理系统包括业务层201、网关层202、基础云层203和存储层204。
业务层201中包括供用户直接操作的平台,例如自助平台211、监控平台221和运维平台231等。其中,自助平台211可以提供用户申请块设备资源的申请界面,供用户触发申请块设备资源的流程,监控平台221用于监控云计算管理系统中的资源使用情况,还可将资源使用情况展示给用户,运维平台231可以为运维人员提供控制界面,供运维人员控制该云计算管理系统,例如运维人员可以通过运维平台进行存储集群配置、宿主机迁移等操作。
网关层202包括云网关212、数据库222、IP(Internet Protocol,互联网协议)系统232和访问鉴权系统242。云网关212用于提供统一的资源接口,数据库222用于存储数据,IP系统232用于管理IP地址、路由表、路由规则等网络资源,访问鉴权系统242可以基于角色的权限访问控制(RBAC,Role-BasedAccessControl)进行访问用户的鉴权、认证等。其中,云网关212可以跟数据库222、IP系统232和访问鉴权系统242进行数据交互,例如,云网关212可将云计算管理系统中产生的交互数据存储于数据库222中。
基础云层203基于云平台提供IaaS服务(Infrastructure as a Service,基础设施即服务),可以实现私有云或者混合云的服务,该云平台可以是OpenStack平台(一种开源的云计算管理平台),还可以是基于OpenStack平台开发的其他平台。基础云层203中包括Cinder组件213、Nova组件223和Glance组件233,其中Cinder组件213用于管理虚拟机的数据盘的生命周期,Nova组件223用于管理虚拟机的系统盘的生命周期,Glance组件233用于管理虚拟机的镜像数据的生命周期。生命周期的管理包括查询、删除、创建等功能。
存储层204用于提供多个存储集群,该多个存储集群与Cinder组件213之间建立通信连接,Cinder组件213分别为多个存储集群创建特征信息,多个存储集群用于创建块设备。参见图2,该存储层204中包括Ceph存储集群214、Ceph存储集群224、Ipsan(InternetProtocol Storage Area Network,互联网协议存储局域网络)存储集群234和Fcsan(FibreChannel Storage Area Network,光纤通道存储局域网络)存储集群244。其中,存储层204中的多个存储集群可以是以Set(一组)方式搭建的存储集群,Set是指由3台至5台服务器组成的小存储集群。
其中,该云计算管理系统通过自助平台211接收到指示创建块设备的目标指令时,通过Cinder组件213、Nova组件223或Glance组件233中的至少一个,根据目标指令中携带的目标特征信息,在多个存储集群中确定目标存储集群,在该目标存储集群中创建块设备。
图3是本申请实施例提供的一种块设备创建方法的流程图。本申请实施例的执行主体为云计算管理系统,参见图3,该方法包括:
301、云计算管理系统通过Cinder组件,建立与多个存储集群的通信连接。
云计算管理系统是一种基于硬件资源和软件资源的平台,可提供计算、网络通信和存储等服务,Cinder组件是云计算管理系统中提供块设备服务的组件,用于进行块设备的创建和管理,如创建块设备、删除块设备、读取块设备中的数据等,通过创建块设备可以创建虚拟机的系统盘或者数据盘等。该Cinder组件可与多个存储集群建立通信连接。
存储集群是指由多个存储设备或者存储节点组成的用于存储的集群。其中,该存储集群可以为Ceph(分布式)存储集群,该Ceph存储集群是开源的分布式存储系统,能同时提供对象存储、块存储(块设备)、文件存储等存储服务。该存储集群还可以为Ipsan(Internet Protocol Storage Area Network,互联网协议存储局域网络)存储集群、Fcsan(Fibre Channel Storage Area Network,光纤通道存储局域网络)存储集群等,本申请实施例对此不做限定。可选地,该存储集群可以是以Set(一组)方式搭建的存储集群,Set是指由3台至5台服务器组成的小存储集群。
当云计算管理系统的后端存储系统容量不够时,可通过增加新的存储集群来扩充后端存储系统的容量。当运维人员搭建好新的存储集群,将该存储集群的IP地址、特征标签、存储集群标识等存储集群信息,添加至Cinder组件的配置文件中,Cinder组件即可通过查询配置文件中的存储集群信息,确定该存储集群信息对应的存储集群,与该存储集群建立通信连接。
因此,通过上述方式,即可建立与多个存储集群的通信连接,将该多个存储集群作为云计算管理系统的后端的存储系统。
302、云计算管理系统通过Cinder组件,从Cinder组件的配置文件中获取任一存储集群配置的存储集群标识和特征标签,根据存储集群标识和特征标签,创建特征信息。
通过Cinder组件,建立与多个存储集群的通信连接之后,该Cinder组件即可在多个存储集群的任一存储集群中创建块设备。为了便于对多个存储集群进行管理,Cinder组件可根据存储集群的标识和特征标签,为每个存储集群创建特征信息,后续即可根据存储集群的特征信息,来选取要创建块设备的存储集群,实现对多个存储集群的管理和调度。
因此,通过Cinder组件,从Cinder组件的配置文件中获取任一存储集群配置的存储集群标识和特征标签,根据存储集群标识和特征标签,创建该存储集群的特征信息。
特征信息中包括存储集群的特征标签和存储集群标识。可选地,该特征信息中还可以包括存储集群的权重因子、加权因子等信息,本申请对此不做限定。
其中,特征标签用于表示存储集群的特征,该特征标签包括存储集群的类型标签、存储介质的类型标签或存储集群的用途标签中的至少一种。其中,存储集群的类型标签用于表示存储集群的类型,该存储集群的类型标签可以为Ceph存储集群标签、Ipsan存储集群标签、Fcsan存储集群标签等。存储介质的类型标签用于表示存储集群的磁盘介质的类型,该存储介质的类型标签可以为SSD(Solid State Disk,固态硬盘)标签、HDD(Hard DiskDrive,电脑硬盘)标签、SATA(Serial Advanced Technology Attachment,串口硬盘)标签等。存储集群的用途标签用于表示存储集群的用途,存储集群可用于存储虚拟机的镜像数据、作为虚拟机的系统盘、作为虚拟机的数据盘等,则该存储集群的用途标签可以为镜像数据标签、系统盘标签、数据盘标签等。
本申请实施例中,特征信息可用volume_type(块设备_类型)字段表示,该volume_type字段可以包括cluster_type(集群_类型)字段、medium(介质)字段或volume_role(块设备_用途)字段中的至少一种。其中,cluster_type字段用于表示存储集群的类型,例如“cluster_type=ceph”表示存储集群为Ceph存储集群、“cluster_type=Ipsan”表示存储集群为Ipsan存储集群等;medium字段用于表示存储介质的类型,例如“medium=ssd”表示存储介质的类型为SSD、“medium=hdd”表示存储介质的类型为HDD等;volume_role字段用于表示存储集群的用途,该volume_role字段可以为system_volume(系统盘_块设备)字段、data_volume(数据盘_块设备)字段、image_volume(镜像数据_块设备)字段等,其中system_volume字段表示用于作为虚拟机的系统盘,data_volume字段表示用于作为虚拟机的数据盘,image_volume字段表示用于存储虚拟机的镜像数据。
其中,存储集群标识用于确定对应的存储集群,该存储集群标识可以为存储集群的名称、编号、IP地址等。本申请实施例中,该存储集群标识可以为存储集群的specs项(能力扩展项),该specs项可以为volume_backend_name(块设备_后端_名称)字段。例如,当存储集群为Ceph存储集群的时候,该Ceph存储集群对应的specs项可以为“volume_backend_name=ceph1”,或者“volume_backend_name=ceph2”等;当存储集群为Ipsan存储集群时,该Ipsan存储集群对应的specs项为“volume_backend_name=Ipsan1”;当存储集群为Fcsan存储集群时,该Fcsan存储集群对应的specs项为“volume_backend_name=Fcsan2”。
需要说明的是,本申请实施例仅以根据存储集群标识和特征标签,创建特征信息为例进行说明。而在另一实施例中,通过Cinder组件,从Cinder组件的配置文件中获取任一存储集群配置的存储集群标识、特征标签和权重因子,通过Cinder组件,根据该存储集群标识、特征标签和权重因子,创建该存储集群的特征信息。
该特征信息中包括存储集群的存储集群标识、特征标签和权重因子。该权重因子用于指示在存储集群中创建块设备的等级,等级越高,对应的存储集群创建块设备的概率越大。
303、存储集群的特征信息为二级特征信息,云计算管理系统通过Cinder组件,根据多个存储集群的二级特征信息中的特征标签,创建至少一条一级特征信息。
本申请实施例中,采用二级匹配的方式,将存储集群的特征信息作为二级特征信息,还会通过Cinder组件,获取多个二级特征信息的特征标签,根据多个特征标签创建一级特征信息,得到至少一条一级特征信息。
其中,每条二级特征信息对应一个存储集群,二级特征信息中包括至少一个特征标签。每条一级特征信息中包括一个特征标签,一级特征信息中的特征标签为存储集群的类型标签、存储介质的类型标签或存储集群的用途标签中的一种。当二级特征信息中的特征标签,与一级特征信息中的特征标签相同时,该一级特征信息与该二级特征信息相匹配。并且,一个一级特征信息可以匹配一个或者多个二级特征信息,一个二级特征信息也可以匹配一个或者多个一级特征信息。
例如,一级特征信息中的特征标签可以包括“cluster_type=Ipsan”,二级特征信息中的特征标签可以包括“cluster_type=Ipsan”,二级特征信息中的特征标签可还可以包括“cluster_type=Ipsan”和“medium=ssd”。
例如,一个一级特征信息中包括特征标签“cluster_type=ceph”,Ceph1存储集群的二级特征信息中包括特征标签“cluster_type=ceph”,Ceph2存储集群的二级特征信息中包括特征标签“cluster_type=ceph”,则该一级特征信息可以匹配Ceph1存储集群的二级特征信息和Ceph2存储集群的二级特征信息。
例如,一个二级特征信息包括特征标签“cluster_type=ceph”和“mediem=ssd”,则该二级特征信息可以匹配包括“cluster_type=ceph”的一级特征信息以及包括“mediem=ssd”的一级特征信息。
需要说明的是,上述步骤303为可选步骤,本申请实施例以存储集群的特征信息为二级特征信息为例,对根据二级特征信息创建一级特征信息的过程进行了说明。而在另一实施例中,还可以不执行上述步骤303。
304、云计算管理系统接收携带目标特征信息的目标指令。
用户可基于云计算管理系统申请块设备资源,例如用户需要云计算管理系统创建虚拟机时,云计算管理系统可以为用户存储虚拟机的镜像数据、创建虚拟机的系统盘、创建虚拟机的数据盘等,而存储虚拟机的镜像数据、创建虚拟机的系统盘、创建虚拟机的数据盘这些操作都需要在云计算管理系统连接的存储集群中创建块设备。因此当用户需要申请块设备资源时,可基于云计算管理系统,选择需要在何种存储集群中创建块设备。云计算管理系统根据用户的选择操作,确定接收携带到目标特征信息的目标指令。该目标指令至少指示执行创建块设备的操作,该目标特征信息指示创建块设备的存储集群应满足的特征信息。其中,该目标指令可以包括镜像数据存储指令、系统盘创建指令、数据盘创建指令等。
在一种可能实现方式中,目标特征信息为一级特征信息。云计算管理系统为用户提供多个存储集群的特征标签,该特征标签包括用于表示存储集群类型的Ceph存储集群标签、Ipsan存储集群标签和Fcsan存储集群,该特征标签还包括用于表示存储集群的存储介质类型的SSD标签、HDD标签和SATA标签,该特征标签还包括用于表示存储集群的用途的镜像数据标签、系统盘标签、数据盘标签等。
由于一级特征信息中仅包括一个特征标签,用户选取的特征标签与一级特征信息对应。因此当云计算管理系统检测到用户对任一特征标签的选取操作,即可确定与该特征标签对应的一级特征信息,也即是包括该特征标签的一级特征信息,则云计算管理系统根据用户的操作确定接收到包括该一级特征信息的目标指令。
在另一种可能实现方式中,参见图2所示的云计算管理系统的系统架构示意图,该云计算管理系统包括业务层201、网关层202、基础云层203和存储层204。业务层201中包括自助平台211,自助平台211可以提供用户申请块设备资源的申请界面。当自助平台211基于申请界面检测到用户的操作时,根据用户的操作生成包括目标特征信息的目标指令。云计算管理系统通过自助平台211将该目标指令发送给云计算管理系统的网关层202,网关层202将该目标指令传输至云计算管理系统的基础云层203,由基础云层203接收该目标指令。
305、目标特征信息为一级特征信息,云计算管理系统响应于目标指令,通过Nova组件、Glance组件或Cinder组件中的至少一个,在多个存储集群的二级特征信息中,确定与一级特征信息匹配的二级特征信息中的存储集群标识,在多个存储集群中,确定与存储集群标识对应的目标存储集群。
云计算管理系统中包括Cinder组件401、Nova组件402和Glance组件403,其中Cinder组件401用于管理虚拟机的数据盘的生命周期,Nova组件402用于管理虚拟机的系统盘的生命周期,Glance组件403用于管理虚拟机的镜像数据的生命周期。生命周期的管理包括查询、删除、创建等功能。
相关技术中,如图4所示,云平台中包括第一Cinder组件401、第一Nova组件402和第一Glance组件403,将一个Ceph存储集群作为后端的存储系统,第一Cinder组件401、第一Nova组件402和第一Glance组件403分别与该第一Ceph存储集群404建立通信连接,因此第一Cinder组件401、第一Nova组件402和第一Glance组件403分别在该Ceph存储集群404中创建对应的块设备。
而本申请实施例中,如图4所示,云平台中包括第二Cinder组件405、第二Nova组件406和第二Glance组件407,第二Cinder组件405与存储系统中的多个存储集群建立通信连接,多个存储集群包括第二Ceph存储集群408、Ipsan存储集群409和Fcsan存储集群410。第二Cinder组件405可在存储集群中创建块设备,第二Nova组件406和第二Glance组件407可调用第二Cinder组件405在存储集群中创建块设备,由此即可实现由第二Cinder组件405统一创建块设备。
当目标指令中的目标特征信息为一级特征信息时,云计算管理系统通过Nova组件、Glance组件或Cinder组件中的至少一个,确定该一级特征信息中的特征标签,根据该特征标签,在多个存储集群的二级特征信息中进行遍历,判断二级特征信息中包括的特征标签是否与该一级特征信息的特征标签相同。当二级特征信息中包括的特征标签与该一级特征信息的特征标签相同时,确定该二级特征信息与该一级特征信息匹配,当二级特征信息中包括的特征标签与该一级特征信息的特征标签不相同时,确定该二级特征信息与该一级特征信息不匹配。当确定与一级特征信息匹配的二级特征信息后,根据该二级特征信息中的存储集群标识,在多个存储集群中,确定与存储集群标识对应的目标存储集群,该目标存储集群即为要创建块设备的存储集群。
需要说明的是,本申请实施例中,存储集群的特征信息为二级特征信息,根据二级特征信息创建一级特征信息,接收到的目标特征信息为一级特征信息,采用二级匹配的方式来确定目标存储集群。而在另一实施例中,当云计算管理系统接收到携带目标特征信息的目标指令,响应于该目标指令,通过Nova组件、Glance组件或Cinder组件中的至少一个,在多个存储集群中确定与目标特征信息对应的目标存储集群。也即是通过目标特征信息,直接确定与该目标特征信息对应的目标存储集群。
可选地,目标特征信息中可以包括目标存储集群标识,根据该目标存储集群标识来确定目标存储集群。或者,目标特征信息中可以包括目标存储集群的类型,根据该目标存储集群的类型确定对应的目标存储集群,或者,还可以通过其他方式来确定目标特征信息对应的目标存储集群。
相关技术中,Cinder组件连接多个存储集群,在创建块设备时仅通过特征信息确定目标存储集群,该特征信息表示存储集群的类型,以此来区分不同类型的存储集群。如图5所示,特征信息分别为特征信息1、特征信息2和特征信息3,对应Cinder组件501连接的Ceph存储集群502、Ipsan存储集群503和Fcsan存储集群504,创建块设备时通过选择某一个特征信息即可在该特征信息对应的存储集群中创建块设备。因此,相关技术中,特征信息和存储集群是一对一的关系,用户仅可以通过特征信息选择特定类型的存储集群,缺乏灵活性。并且,当Cinder组件连接的多个存储集群均为同一种类型的存储集群时,多个存储集群的特征信息相同,则无法再通过该特征信息来区分存储集群。
而本申请实施例中,通过一级特征信息和二级特征信息来选取目标存储集群。如图6所示,根据用户选取的特征标签确定对应的一级特征信息,其中一级特征信息601中包括ceph存储集群标签,一级特征信息602中包括ssd存储介质标签,一级特征信息603中包括Ipsan存储集群标签;二级特征信息604中包括ceph存储集群标签,二级特征信息605中包括ceph存储集群标签和ssd存储介质标签,二级特征信息606中包括ssd存储介质标签,二级特征信息607中包括Ipsan存储集群标签,二级特征信息608中包括Ipsan存储集群标签。
则一级特征信息601分别与二级特征信息604和二级特征信息605匹配,一级特征信息602分别与二级特征信息605和二级特征信息606匹配,一级特征信息603分别与二级特征信息607和二级特征信息608匹配。
其中,二级特征信息604中包括存储集群标识ceph1,通过存储集群标识ceph1可确定Ceph存储集群609,二级特征信息605中包括存储集群标识ceph2,通过存储集群标识ceph2可确定Ceph存储集群610,二级特征信息606中包括存储集群标识ceph3,通过存储集群标识ceph3可确定Ceph存储集群611,二级特征信息607中包括存储集群标识Ipsan1,通过存储集群标识Ipsan1可确定Ipsan存储集群612,二级特征信息608中包括存储集群标识Ipsan2,通过存储集群标识Ipsan2可确定Ipsan存储集群613。
例如,参见图6中虚线所示的匹配路径,用户选择的特征标签为ceph存储集群标签,则根据该特征标签确定对应的一级特征信息601,一级特征信息601中包括ceph存储集群标签。根据该一级特征信息601对多个二级特征信息进行遍历,判断二级特征信息中的特征标签是否与该一级特征信息601中的特征标签相同。其中二级特征信息604和二级特征信息605中包括ceph存储集群标签,则确定二级特征信息604和二级特征信息605与该一级特征信息601匹配。然后根据二级特征信息604中的存储集群标识ceph1确定对应的Ceph存储集群609,根据二级特征信息605中的存储集群标识ceph2确定对应的Ceph存储集群610,将Ceph存储集群609和Ceph存储集群610作为候选存储集群。
在一种可能实现方式中,根据目标指令的类型,来确定由哪种组件来响应该目标指令。
可选地,目标指令为镜像数据存储指令,镜像数据存储指令用于指示创建块设备存储镜像数据。由于云计算管理系统中由Glance组件管理虚拟机的镜像数据的生命周期,而Glance组件未与存储集群直接建立通信连接,因此通过Glance组件调用Cinder组件,从而由Cinder组件在多个存储集群中确定与目标特征信息对应的目标存储集群。
可选地,目标指令为系统盘创建指令,系统盘创建指令用于指示创建块设备作为虚拟机的系统盘。由于云计算管理系统中由Nova组件管理虚拟机的系统盘的生命周期,而Nova组件未与存储集群直接建立通信连接,因此通过Nova组件调用Cinder组件,从而由Cinder组件在多个存储集群中确定与目标特征信息对应的目标存储集群。
可选地,目标指令为数据盘创建指令,数据盘创建指令用于指示创建块设备作为虚拟机的数据盘。由于云计算管理系统中由Cinder组件管理虚拟机的数据盘的生命周期,而Cinder组件与存储集群直接建立了通信连接,因此通过Cinder组件,在多个存储集群中确定与目标特征信息对应的目标存储集群。
在另一种可能实现方式中,在多个存储集群中确定与目标特征信息对应的多个候选存储集群,分别确定多个候选存储集群的权重,将权重最大的候选存储集群作为目标存储集群。
云计算管理系统通过Nova组件、Glance组件或Cinder组件中的至少一个,在多个存储集群的二级特征信息中,确定与目标特征信息(一级特征信息)匹配的二级特征信息中的多个存储集群标识,在多个存储集群中,确定与多个存储集群标识对应的多个候选存储集群。分别确定该多个候选存储集群的权重,将权重最大的候选存储集群作为目标存储集群。
在另一种可能实现方式中,对于每个候选存储集群,可通过以下两种方式获取候选存储集群的权重。
第一种方式:获取候选存储集群的容量和已创建的块设备数量,按照容量和块设备数量的加权因子,对容量和块设备数量进行加权求和,得到候选存储集群的权重。
云计算管理系统获取已设置的加权因子,该加权因子包括容量因子和块设备数量因子,容量因子用于对存储集群的容量进行加权,块设备数量因子用于对存储集群已创建的块设备数量进行加权。
例如,可通过以下公式来得到候选存储集群的权重:
W=C·Cf+N·Nf。
其中,W表示存储集群的权重,C表示存储集群的容量,Cf表示存储集群的容量因子,N表示存储集群已创建的块设备数量,Nf表示存储集群的块设备数量因子。
其中,容量因子和块设备数量因子可以由云计算管理系统默认设置,或者由云计算管理系统自行设置。例如,通过设置容量因子和块设备数量因子,使候选存储集群的容量越大权重越大,使候选存储集群已创建的块设备数量越大权重越小,则该容量因子可以为1,该块设备数量因子可以为-1。
可选地,该候选存储集群的容量和已创建的块设备数量可以为原始容量和原始块设备数量。该原始容量是指该候选存储集群的实际的容量,该原始块设备数量是指该候选存储集群已创建的实际的块设备数量。
可选地,该候选存储集群的容量和已创建的块设备数量可以为相对容量和相对块设备数量。获取候选存储集群的原始容量和已创建的原始块设备数量,分别对原始容量和原始块设备数量进行加权,得到候选存储集群的相对容量和相对块设备数量。其中,加权后得到的相对容量和相对块设备数量的范围在(0,1)之间,也即是,该相对容量和该相对块设备数量大于0且小于1。
对原始容量进行加权得到相对容量,包括:在多个候选存储集群的原始容量中确定最大原始容量和最小原始容量,将候选存储集群的原始容量与最小原始容量相减得到第一差值,将最大原始容量与最小原始容量相减得到第二差值,将第一差值与第二差值的商作为候选存储集群的相对容量。
例如,可通过以下公式来得到候选存储集群的相对容量:
Figure BDA0002377962850000171
其中,RC表示存储集群的相对容量,OC表示当前候选存储集群的原始容量,OCmin表示最小原始容量,OCmax表示最大原始容量。
对原始块设备数量进行加权得到相对块设备数量,包括:在多个候选存储集群的原始块设备数量中确定最大原始块设备数量和最小原始块设备数量,将候选存储集群的原始块设备数量与最小原始块设备数量相减得到第三差值,将最大原始块设备数量与最小原始块设备数量相减得到第四差值,将第三差值与第四差值的商作为候选存储集群的相对块设备数量。
例如,可通过以下公式来得到候选存储集群的相对块设备数量:
Figure BDA0002377962850000172
其中,RN表示存储集群的相对块设备数量,ON表示当前候选存储集群的原始块设备数量,ONmin表示最小原始块设备数量,ONmin表示最大原始块设备数量。
除此之外,还可以通过其他方法来获取候选存储集群的相对容量和相对块设备数量,本申请对此不做限定。
第二种方式:获取候选存储集群的容量和已创建的块设备数量,按照容量和块设备数量的加权因子,对容量和块设备数量进行加权求和,得到候选存储集群的第一权重,根据候选存储集群的权重因子,对第一权重进行加权得到相对权重。
该候选存储集群的第一权重的获取方法,与上述第一种方式中的候选存储集群的权重的获取方法类似,在此不再赘述。当确定候选存储集群的第一权重时,获取该候选存储集群的权重因子,根据候选存储集群的权重因子,对第一权重进行加权得到相对权重。候选存储集群的权重因子可以由云计算管理系统默认设置,或者由云计算管理系统自行设置。
可选地,该权重因子的取值范围在[0,2]之间,也即是权重因子不小于0且不大于2。其中,若不再需要使用某一候选存储集群创建块设备时,可以将该候选存储集群的权重因子设置为0;若想提高使用某一候选存储集群的概率时,可以将该候选存储集群的权重因子设置成大于1,且小于或者等于2;若想降低使用某一候选存储集群的概率时,可以将该候选存储集群的权重因子设置成大于0且小于1;若云计算管理系统没有为候选存储集群设置权重因子,则将该候选存储集群的权重因子默认为1,此时候选存储集群的相对权重与第一权重相等。
例如,可通过以下公式来得到候选存储集群的相对权重:
RW=Wf·W。
其中,RW表示存储集群的相对权重,Wf表示存储集群的权重因子,W表示存储集群的第一权重。
如图7所示,Cinder组件连接有第一Ceph存储集群701、第二Ceph存储集群702、Ipsan存储集群703和Fcsan存储集群704。通过一级特征信息和二级特征信息进行匹配,确定第一Ceph存储集群701和第二Ceph存储集群702为候选存储集群。获取第一Ceph存储集群701和第二Ceph存储集群702的权重,对权重进行排序,确定第一Ceph存储集群701的权重小,第二Ceph存储集群702的权重大,则将第二Ceph存储集群702作为目标存储集群。
在另一种可能实现方式中,在多个存储集群中确定与目标特征信息对应的一个候选存储集群,将该候选存储集群作为目标存储集群。
可选地,在实际应用中,若多个存储集群中仅存在一个候选存储集群与目标特征信息对应,则将该候选存储集群的相对容量和相对块设备数量确定为0,并按照上述获取多个候选存储集群的权重的方法,得到该候选存储集群的权重,且该权重为0。由于仅有一个候选存储集群,则该候选存储集群的权重即为最大权重,则将该候选存储集群作为目标存储集群。
306、在目标存储集群中创建块设备。
当在Cinder组件连接的多个存储集群中确定目标存储集群时,即可在该目标存储集群中创建块设备。
在一种可能实现的方式中,目标指令为镜像数据存储指令,镜像数据存储指令用于指示创建块设备存储镜像数据。因此通过Glance组件调用Cinder组件,在多个存储集群中确定与目标特征信息对应的目标存储集群之后,调用Cinder组件在目标存储集群中创建第一块设备。通过Glance组件调用Cinder组件获取云计算管理系统中预先存储的虚拟机的镜像数据,将该虚拟机的镜像数据拷贝到第一块设备中存储下来。
其中,虚拟机的镜像数据可以由云计算管理系统从其他设备中下载,或者由其他设备上传到云计算管理系统中,或者由运维人员存储于云计算管理系统中,或者还可以为其他来源的虚拟机的镜像数据。
虚拟机的镜像数据是指虚拟机的安装文件,镜像数据中包含安装好的操作系统。以该镜像数据作为模版,当需要创建虚拟机时,只需要对镜像数据进行拷贝,就可以将该镜像数据作为虚拟机的虚拟磁盘进行启动,无需执行安装操作系统的过程。
可选地,通过Glance组件调用Cinder组件,创建第一块设备,将虚拟机的镜像数据存储在第一块设备后,由Cinder组件向Glance组件反馈结果,来通知Glance组件镜像数据存储成功。
在另一种可能实现的方式中,目标指令为系统盘创建指令,系统盘创建指令用于指示创建块设备作为虚拟机的系统盘。因此通过Nova组件调用Cinder组件,在多个存储集群中确定与目标特征信息对应的目标存储集群之后,调用Cinder组件在目标存储集群中创建第二块设备,将该第二块设备作为虚拟机的系统盘。通过Nova组件调用Cinder组件获取第一块设备中的虚拟机的镜像数据,将该镜像数据拷贝到该虚拟机的系统盘中。后续即可通过Nova组件调用Cinder组件,根据系统盘中的虚拟机的镜像数据,启动虚拟机。
可选地,通过Nova组件调用Cinder组件,创建第二块设备,将该第二块设备作为虚拟机的系统盘,将镜像数据拷贝到该虚拟机的系统盘后,由Cinder组件向Nova组件反馈结果,来通知Nova组件虚拟机的系统盘创建成功。
在另一种可能实现的方式中,目标指令为数据盘创建指令,数据盘创建指令用于指示创建块设备作为虚拟机的数据盘。因此通过Cinder组件,在多个存储集群中确定与目标特征信息对应的目标存储集群之后,在目标存储集群中创建第三块设备,将该第三块设备作为虚拟机的数据盘。
需要说明的是,上述存储虚拟机的镜像数据、创建虚拟机的系统盘、创建虚拟机的数据盘这三个过程中,创建块设备的目标存储集群可能相同,也可能不同。并且,在本申请实施例中,对这三个过程执行的先后顺序不进行限定。在实际应用中,通过Glance组件调用Cinder组件,将虚拟机的镜像数据存储于第一块设备中。后续可通过Nova组件调用Cinder组件,创建多个第二块设备,作为多个虚拟机的系统盘,将该第一块设备中的镜像数据分别拷贝到多个第二块设备中,根据某一系统盘中的镜像数据,即可启动该系统盘对应的虚拟机。而通过Cinder组件创建第三块设备作为数据盘的过程,不受前两个过程的限制,可以在存储镜像数据之前或者之后创建数据盘,也可以在创建系统盘之前或者之后创建数据盘。当启动某一虚拟机后,若需要为该虚拟机挂载数据盘,则建立该数据盘与该虚拟机的映射关系,虚拟机即可将产生的数据存储于该数据盘中。
相关技术中,云计算管理系统进行存储集群扩充时,仅能通过对单个存储集群进行扩充,如增加存储集群中的服务器、增加磁盘等。通过相关技术提供的方法进行存储集群扩充时,即使是增加或者替换一个磁盘都需要进行数据迁移,导致大容量存储集群同时进行对外的数据读写和对内的数据迁移,处于高负载状态,对云计算管理系统中的虚拟机会产生不利影响,比如读写速度等。并且数据迁移耗费时间较长,容易出现奔溃性的错误,导致云计算管理系统无法运行。
而本申请实施例提供的方法,通过Cinder组件,建立与多个存储集群的通信连接,通过Cinder组件,分别创建多个存储集群的特征信息,接收携带目标特征信息的目标指令,响应于目标指令,通过Nova组件、Glance组件或Cinder组件中的至少一个,在多个存储集群中确定与目标特征信息对应的目标存储集群,在目标存储集群中创建块设备。通过Cinder组件,建立与多个存储集群的通信连接,根据存储集群的特征信息,可以在多个存储集群中的目标存储集群中创建块设备,因此多个存储集群均可作为云计算管理系统的后端存储系统,提高了存储系统的容量。并且,本申请实施例提供的方法,可通过接入新的存储集群来实现存储集群的扩充,提高了对存储集群进行扩充的灵活性。
并且,通过创建一级特征信息和二级特征信息,可以根据每个存储集群的特征来进行管理和调度,根据两级特征信息,从多个存储集群中选取对应的目标存储集群来创建块设备,提高了选取目标存储集群的灵活性。
并且,基于候选存储集群的容量、块设备数量以及加权因子和权重因子,来获取存储集群的权重,将权重最大的候选存储集群作为目标存储集群,可以使目标存储集群的选择过程更加合理,有效地平衡了各个存储集群承担的存储压力。而且可通过调整存储集群的权重因子来改变该存储集群被选为目标存储集群的概率,进一步提高了选取目标存储集群的灵活性。
并且,通过本申请实施例提供的方法,在云计算管理系统中接入新的存储集群来实现存储集群的扩充,无需进行数据迁移,能够保证扩充过程中云计算管理系统的稳定运行,提升了云计算管理系统的服务质量,增强了核心竞争力。
图8是本申请实施例提供的一种块设备创建装置的结构示意图。云计算管理系统中包括Cinder组件、Nova组件和Glance组件参见图8,该装置包括:
连接建立模块801,用于通过Cinder组件,建立与多个存储集群的通信连接;
第一信息创建模块802,用于通过Cinder组件,分别创建多个存储集群的特征信息;
指令接收模块803,用于接收携带目标特征信息的目标指令,目标指令至少指示执行创建块设备的操作;
块设备创建模块804,用于响应于目标指令,通过Nova组件、Glance组件或Cinder组件中的至少一个,在多个存储集群中确定与目标特征信息对应的目标存储集群,在目标存储集群中创建块设备。
本申请实施例提供的块设备创建装置,通过Cinder组件,建立与多个存储集群的通信连接,通过Cinder组件,分别创建多个存储集群的特征信息,接收携带目标特征信息的目标指令,响应于目标指令,通过Nova组件、Glance组件或Cinder组件中的至少一个,在多个存储集群中确定与目标特征信息对应的目标存储集群,在目标存储集群中创建块设备。通过Cinder组件,建立与多个存储集群的通信连接,根据存储集群的特征信息,可以在多个存储集群中的目标存储集群中创建块设备,因此多个存储集群均可作为云计算管理系统的后端存储系统,提高了存储系统的容量。并且,本申请实施例提供的方法,可通过接入新的存储集群来实现存储集群的扩充,提高了对存储集群进行扩充的灵活性。
可选地,参见图9,第一信息创建模块802,包括:
信息获取单元812,用于通过Cinder组件,从Cinder组件的配置文件中获取任一存储集群配置的存储集群标识和特征标签;
信息创建单元822,用于通过Cinder组件,根据存储集群标识和特征标签,创建特征信息。
可选地,参见图9,特征标签包括存储集群的类型标签、存储介质的类型标签或存储集群的用途标签中的至少一种。
可选地,参见图9,第一信息创建模块802,包括:
信息获取单元812,用于通过Cinder组件,从Cinder组件的配置文件中获取任一存储集群配置的存储集群标识、特征标签和权重因子;
信息创建单元822,用于通过Cinder组件,根据存储集群标识、特征标签和权重因子,创建特征信息。
可选地,参见图9,存储集群的特征信息为二级特征信息,二级特征信息中包括至少一个特征标签,装置还包括:
第二信息创建模块805,用于通过Cinder组件,根据多个存储集群的二级特征信息中的特征标签,创建至少一条一级特征信息,每条一级特征信息中包括一个特征标签。
可选地,参见图9,目标特征信息为一级特征信息,块设备创建模块804,包括:
集群标识确定单元814,用于在多个存储集群的二级特征信息中,确定与一级特征信息匹配的二级特征信息中的存储集群标识;
第一集群确定单元824,用于在多个存储集群中,确定与存储集群标识对应的目标存储集群。
可选地,参见图9,目标指令为镜像数据存储指令,块设备创建模块804,包括:
第一集群确定单元824,用于通过Glance组件调用Cinder组件,在多个存储集群中确定与目标特征信息对应的目标存储集群;
块设备创建单元834,用于在目标存储集群中创建第一块设备;
镜像数据存储单元844,用于将虚拟机的镜像数据存储在第一块设备中。
可选地,参见图9,目标指令为系统盘创建指令,块设备创建模块804,包括:
第一集群确定单元824,用于通过Nova组件调用Cinder组件,在多个存储集群中确定与目标特征信息对应的目标存储集群;
块设备创建单元834,用于在目标存储集群中创建第二块设备作为虚拟机的系统盘;
镜像数据拷贝单元854,用于将虚拟机的镜像数据拷贝到系统盘中;
虚拟机启动单元864,用于通过Nova组件调用Cinder组件,根据系统盘中的虚拟机的镜像数据,启动虚拟机。
可选地,参见图9,目标指令为数据盘创建指令,块设备创建模块804,包括:
第一集群确定单元824,用于通过Cinder组件,在多个存储集群中确定与目标特征信息对应的目标存储集群;
块设备创建单元834,用于在目标存储集群中创建第三块设备作为虚拟机的数据盘。
可选地,参见图9,块设备创建模块804,包括:
第二集群确定单元874,用于在多个存储集群中确定与目标特征信息对应的多个候选存储集群;
权重确定单元884,用于分别确定多个候选存储集群的权重,将权重最大的候选存储集群作为目标存储集群。
可选地,参见图9,权重确定单元884,还用于对于每个候选存储集群,获取候选存储集群的容量和已创建的块设备数量;
权重确定单元884,还用于按照容量和块设备数量的加权因子,对容量和块设备数量进行加权求和,得到候选存储集群的权重;或者,
权重确定单元884,还用于按照容量和块设备数量的加权因子,对容量和块设备数量进行加权求和,得到候选存储集群的第一权重,根据候选存储集群的权重因子,对第一权重进行加权得到相对权重。
可选地,参见图9,权重确定单元884,还用于获取候选存储集群的原始容量和已创建的原始块设备数量;或者,
权重确定单元884,还用于获取候选存储集群的原始容量和已创建的原始块设备数量,分别对原始容量和原始块设备数量进行加权,得到候选存储集群的相对容量和相对块设备数量。
需要说明的是:上述实施例提供的块设备创建装置在创建块设备时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将云计算管理系统的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的块设备创建装置与块设备创建方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图10是本申请实施例提供的一种服务器的结构示意图,该服务器1000可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(Central ProcessingUnits,CPU)1001和一个或一个以上的存储器1002,其中,所述存储器1002中存储有至少一条程序代码,所述至少一条程序代码由所述处理器1001加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
服务器1000可以用于执行上述块设备创建方法中云计算管理系统中的服务器所执行的步骤。
本申请实施例还提供了一种用于创建块设备的云计算管理系统,该云计算管理系统包括处理器和存储器,存储器中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行,以实现上述实施例的块设备创建方法中所具有的操作。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行,以实现上述实施例的块设备创建方法中所具有的操作。
本申请实施例还提供了一种计算机程序,该计算机程序包括至少一条程序代码,该至少一条程序代码由处理器加载并执行,以实现上述实施例的块设备创建方法中所具有的操作。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请实施例的可选实施例,并不用以限制本申请实施例,凡在本申请实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (13)

1.一种块设备创建方法,其特征在于,云计算管理系统中包括Cinder组件、Nova组件和Glance组件,所述方法包括:
通过所述Cinder组件,建立与多个存储集群的通信连接;
通过所述Cinder组件,分别创建所述多个存储集群的二级特征信息,所述二级特征信息中包括至少一个特征标签和存储集群标识;
通过所述Cinder组件,根据所述多个存储集群的二级特征信息中的特征标签,创建至少一条一级特征信息,每条一级特征信息中包括一个特征标签,其中,一条一级特征信息与至少一条二级特征信息匹配,一条二级特征信息与至少一条一级特征信息匹配;
接收携带目标特征信息的目标指令,所述目标指令至少指示执行创建块设备的操作,所述目标特征信息为一级特征信息;
响应于所述目标指令,通过所述Nova组件、所述Glance组件或所述Cinder组件中的至少一个,在所述多个存储集群的二级特征信息中,确定与所述目标特征信息匹配的二级特征信息中的存储集群标识,在所述多个存储集群中,确定与所述存储集群标识对应的目标存储集群,在所述目标存储集群中创建块设备。
2.根据权利要求1所述的方法,其特征在于,所述通过所述Cinder组件,分别创建所述多个存储集群的二级特征信息,包括:
通过所述Cinder组件,从所述Cinder组件的配置文件中获取任一存储集群配置的存储集群标识和特征标签;
通过所述Cinder组件,根据所述存储集群标识和所述特征标签,创建所述二级特征信息。
3.根据权利要求2所述的方法,其特征在于,所述特征标签包括存储集群的类型标签、存储介质的类型标签或存储集群的用途标签中的至少一种。
4.根据权利要求1所述的方法,其特征在于,所述通过所述Cinder组件,分别创建所述多个存储集群的二级特征信息,包括:
通过所述Cinder组件,从所述Cinder组件的配置文件中获取任一存储集群配置的存储集群标识、特征标签和权重因子;
通过所述Cinder组件,根据所述存储集群标识、所述特征标签和所述权重因子,创建所述二级特征信息。
5.根据权利要求1所述的方法,其特征在于,所述目标指令为镜像数据存储指令,所述响应于所述目标指令,通过所述Nova组件、所述Glance组件或所述Cinder组件中的至少一个,在所述多个存储集群的二级特征信息中,确定与所述目标特征信息匹配的二级特征信息中的存储集群标识,在所述多个存储集群中,确定与所述存储集群标识对应的目标存储集群,在所述目标存储集群中创建块设备,包括:
通过所述Glance组件调用所述Cinder组件,在所述多个存储集群的二级特征信息中,确定与所述目标特征信息匹配的二级特征信息中的存储集群标识,在所述多个存储集群中,确定与所述存储集群标识对应的目标存储集群;
在所述目标存储集群中创建第一块设备,将虚拟机的镜像数据存储在所述第一块设备中。
6.根据权利要求1所述的方法,其特征在于,所述目标指令为系统盘创建指令,所述响应于所述目标指令,通过所述Nova组件、所述Glance组件或所述Cinder组件中的至少一个,在所述多个存储集群的二级特征信息中,确定与所述目标特征信息匹配的二级特征信息中的存储集群标识,在所述多个存储集群中,确定与所述存储集群标识对应的目标存储集群,在所述目标存储集群中创建块设备,包括:
通过所述Nova组件调用所述Cinder组件,在所述多个存储集群的二级特征信息中,确定与所述目标特征信息匹配的二级特征信息中的存储集群标识,在所述多个存储集群中,确定与所述存储集群标识对应的目标存储集群;
在所述目标存储集群中创建第二块设备作为虚拟机的系统盘,将虚拟机的镜像数据拷贝到所述系统盘中;
通过所述Nova组件调用所述Cinder组件,根据所述系统盘中的虚拟机的镜像数据,启动所述虚拟机。
7.根据权利要求1所述的方法,其特征在于,所述目标指令为数据盘创建指令,所述响应于所述目标指令,通过所述Nova组件、所述Glance组件或所述Cinder组件中的至少一个,在所述多个存储集群的二级特征信息中,确定与所述目标特征信息匹配的二级特征信息中的存储集群标识,在所述多个存储集群中,确定与所述存储集群标识对应的目标存储集群,在所述目标存储集群中创建块设备,包括:
通过所述Cinder组件,在所述多个存储集群的二级特征信息中,确定与所述目标特征信息匹配的二级特征信息中的存储集群标识,在所述多个存储集群中,确定与所述存储集群标识对应的目标存储集群;
在所述目标存储集群中创建第三块设备作为虚拟机的数据盘。
8.根据权利要求1所述的方法,其特征在于,所述在所述多个存储集群的二级特征信息中,确定与所述目标特征信息匹配的二级特征信息中的存储集群标识,在所述多个存储集群中,确定与所述存储集群标识对应的目标存储集群,包括:
在所述多个存储集群的二级特征信息中,确定与所述目标特征信息匹配的二级特征信息中的多个存储集群标识,在所述多个存储集群中,确定与所述多个存储集群标识对应的多个候选存储集群;
分别确定所述多个候选存储集群的权重,将权重最大的候选存储集群作为目标存储集群。
9.根据权利要求8所述的方法,其特征在于,所述分别确定所述多个候选存储集群的权重,包括:
对于每个候选存储集群,获取所述候选存储集群的容量和已创建的块设备数量;
按照所述容量和所述块设备数量的加权因子,对所述容量和所述块设备数量进行加权求和,得到所述候选存储集群的权重;或者,
按照所述容量和所述块设备数量的加权因子,对所述容量和所述块设备数量进行加权求和,得到所述候选存储集群的第一权重,根据所述候选存储集群的权重因子,对所述第一权重进行加权得到相对权重。
10.根据权利要求9所述的方法,其特征在于,所述获取所述候选存储集群的容量和已创建的块设备数量,包括:
获取所述候选存储集群的原始容量和已创建的原始块设备数量;或者,
获取所述候选存储集群的原始容量和已创建的原始块设备数量,分别对所述原始容量和所述原始块设备数量进行加权,得到所述候选存储集群的相对容量和相对块设备数量。
11.一种块设备创建装置,其特征在于,应用于云计算管理系统,所述云计算管理系统中包括Cinder组件、Nova组件和Glance组件,所述装置包括:
连接建立模块,用于通过所述Cinder组件,建立与多个存储集群的通信连接;
第一信息创建模块,用于通过所述Cinder组件,分别创建所述多个存储集群的二级特征信息,所述二级特征信息中包括至少一个特征标签和存储集群标识;
第二信息创建模块,用于通过所述Cinder组件,根据所述多个存储集群的二级特征信息中的特征标签,创建至少一条一级特征信息,每条一级特征信息中包括一个特征标签,其中,一条一级特征信息与至少一条二级特征信息匹配,一条二级特征信息与至少一条一级特征信息匹配;
指令接收模块,用于接收携带目标特征信息的目标指令,所述目标指令至少指示执行创建块设备的操作,所述目标特征信息为一级特征信息;
块设备创建模块,用于响应于所述目标指令,通过所述Nova组件、所述Glance组件或所述Cinder组件中的至少一个,在所述多个存储集群的二级特征信息中,确定与所述目标特征信息匹配的二级特征信息中的存储集群标识,在所述多个存储集群中,确定与所述存储集群标识对应的目标存储集群,在所述目标存储集群中创建块设备。
12.一种云计算管理系统,其特征在于,所述云计算管理系统包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以实现如权利要求1至10任一所述的块设备创建方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现如权利要求1至10任一所述的块设备创建方法。
CN202010073833.6A 2020-01-22 2020-01-22 块设备创建方法、装置、云计算管理系统及存储介质 Active CN111290712B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010073833.6A CN111290712B (zh) 2020-01-22 2020-01-22 块设备创建方法、装置、云计算管理系统及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010073833.6A CN111290712B (zh) 2020-01-22 2020-01-22 块设备创建方法、装置、云计算管理系统及存储介质

Publications (2)

Publication Number Publication Date
CN111290712A CN111290712A (zh) 2020-06-16
CN111290712B true CN111290712B (zh) 2021-06-18

Family

ID=71030701

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010073833.6A Active CN111290712B (zh) 2020-01-22 2020-01-22 块设备创建方法、装置、云计算管理系统及存储介质

Country Status (1)

Country Link
CN (1) CN111290712B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111949473B (zh) * 2020-07-01 2024-07-12 北京思特奇信息技术股份有限公司 一种集群资源容量预测方法和装置
CN114064448A (zh) * 2020-08-05 2022-02-18 北京金山云网络技术有限公司 测试环境部署及冒烟测试方法、装置及电子设备
CN112162702B (zh) * 2020-09-25 2024-05-31 科大讯飞股份有限公司 分布式存储系统、虚拟机创建和数据卷扩容方法
CN112988468A (zh) * 2021-04-27 2021-06-18 云宏信息科技股份有限公司 虚拟化操作系统使用Ceph的方法和计算机可读存储介质
CN113721850B (zh) * 2021-08-26 2023-08-25 苏州浪潮智能科技有限公司 一种卷管理方法、系统、设备以及介质
CN114089917B (zh) * 2021-11-19 2024-08-09 中电信数智科技有限公司 分布式对象存储集群及其扩容方法、装置及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106209478A (zh) * 2016-08-31 2016-12-07 上海地面通信息网络有限公司 一种基于OpenStack的公有云网络构架系统
CN108234551A (zh) * 2016-12-15 2018-06-29 腾讯科技(深圳)有限公司 一种数据处理方法及装置
US10243959B1 (en) * 2017-01-25 2019-03-26 Sprint Communications Company L.P. Secure cloud computing framework
CN110138577A (zh) * 2018-02-08 2019-08-16 腾讯科技(深圳)有限公司 集群创建方法、第一服务器以及可读存储介质
CN110389836A (zh) * 2019-07-17 2019-10-29 腾讯科技(深圳)有限公司 一种多集群管理方法、装置、服务器及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050108375A1 (en) * 2003-11-13 2005-05-19 Michele Hallak-Stamler Method and graphical user interface for managing and configuring multiple clusters of virtualization switches
CN106034160B (zh) * 2015-03-19 2019-06-11 阿里巴巴集团控股有限公司 分布式计算系统和方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106209478A (zh) * 2016-08-31 2016-12-07 上海地面通信息网络有限公司 一种基于OpenStack的公有云网络构架系统
CN108234551A (zh) * 2016-12-15 2018-06-29 腾讯科技(深圳)有限公司 一种数据处理方法及装置
US10243959B1 (en) * 2017-01-25 2019-03-26 Sprint Communications Company L.P. Secure cloud computing framework
CN110138577A (zh) * 2018-02-08 2019-08-16 腾讯科技(深圳)有限公司 集群创建方法、第一服务器以及可读存储介质
CN110389836A (zh) * 2019-07-17 2019-10-29 腾讯科技(深圳)有限公司 一种多集群管理方法、装置、服务器及存储介质

Also Published As

Publication number Publication date
CN111290712A (zh) 2020-06-16

Similar Documents

Publication Publication Date Title
CN111290712B (zh) 块设备创建方法、装置、云计算管理系统及存储介质
JP4377369B2 (ja) リソース割当調停装置およびリソース割当調停方法
US7743142B2 (en) Verifying resource functionality before use by a grid job submitted to a grid environment
US20200382579A1 (en) Server computer management system for supporting highly available virtual desktops of multiple different tenants
EP3400535B1 (en) System and method for distributed resource management
US10789102B2 (en) Resource provisioning in computing systems
US9128765B2 (en) Assigning restored virtual machine based on past application usage of requesting user
CA2637749C (en) Method, system, and program product for deploying a platform dependent application in a grid environment
US20120096461A1 (en) Load balancing in multi-server virtual workplace environments
EP3442201B1 (en) Cloud platform construction method and cloud platform
US10761869B2 (en) Cloud platform construction method and cloud platform storing image files in storage backend cluster according to image file type
CN115604120B (zh) 一种多云集群资源共享方法、装置、设备及存储介质
CN111343262A (zh) 分布式集群登录方法、装置、设备和存储介质
JP2020123003A (ja) 仮想化基盤および仮想化基盤のスケーリング管理方法
CN114168307A (zh) 创建实例的方法、设备以及系统
US10938655B2 (en) Enterprise cloud garbage collector
US12028269B2 (en) Method for optimal resource selection based on available GPU resource analysis in large-scale container platform
CN105307130A (zh) 一种资源分配方法及系统
US11632299B1 (en) Cell management for services implemented at cloud computing environments
CN113691575B (zh) 通信方法、装置及系统
CN113760446A (zh) 资源调度方法、装置、设备及介质
CN111327663A (zh) 一种堡垒机分配的方法和设备
CN107168646B (zh) 一种分布式数据存储控制方法及服务器
CN118473679A (zh) 一种基于云原生的密码服务高可用集群系统及实现方法
Liu et al. Design of power information intelligent scheduling model based on Kubernetes

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40023247

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant