裸金属服务器实现分布式存储卷启动的装置及方法制造方法及图纸

技术编号:35991189 阅读:50 留言:0更新日期:2022-12-17 23:06
本发明专利技术公开了裸金属服务器实现分布式存储卷启动的装置及方法,属于云计算技术领域,要解决的技术问题为如何实现裸金属服务器的分布式存储卷启动。包括控制器模块、驱动模块以及智能网卡模块;控制器模块用于对卷启动实例创建请求中包含的实例信息和系统卷信息进行数据处理,并将实例信息和系统卷信息发送至驱动模块进行卷实例创建;驱动模块用于查询智能网卡模块的服务状态并对智能网卡模块进行上电操作,用于将实例信息和系统卷信息更新至裸金属服务器节点信息的属性中,并将系统卷信息发送至智能网卡模块,并基于智能网卡模块的反馈对裸金属服务器进行下电和上电操作;智能网卡模块提供有rpc service、卷管理服务和IO模拟服务。模拟服务。模拟服务。

【技术实现步骤摘要】
裸金属服务器实现分布式存储卷启动的装置及方法


[0001]本专利技术涉及云计算
,具体地说是裸金属服务器实现分布式存储卷启动的装置及方法。

技术介绍

[0002]随着云计算领域的发展,裸金属服务器的使用场景越来越广泛,如Oracle RAC、大数据、私有云搭建等。传统的裸金属服务器受限于硬件架构,多以裸金属服务器本地盘作为系统盘使用,实例创建时存在镜像拷贝到本地盘速度慢、系统盘做私有镜像、快照、备份困难等缺点。
[0003]目前一种裸金属服务器实现卷启动的方式是依赖FC

SAN集中式存储来实现,裸金属服务器安装HBA卡,数据中心搭建集中存储,通过FC

SAN协议为裸金属服务器提供系统卷,进行卷启动,一定程度上解决了系统卷做私有镜像、快照以及备份的问题,但是集中式存储的高昂成本就注定了这不是一个经济可行的通用场景。
[0004]传统裸金属硬件架构下服务器只能依赖本地盘启动或者依赖集中式存储卷启动,如何实现裸金属服务器的分布式存储卷启动,是需要解决的技术问题。

技术实现思路

[0005]本专利技术的技术任务是针对以上不足,提供裸金属服务器实现分布式存储卷启动的装置及方法,来解决如何实现裸金属服务器的分布式存储卷启动的技术问题。
[0006]第一方面,本专利技术一种裸金属服务器实现分布式存储卷启动的装置,包括控制器模块、驱动模块以及智能网卡模块;
[0007]控制器模块,所述控制器模块用于对外提供裸金属服务器卷启动服务的入口,用于接收卷启动实例创建请求,对所述卷启动实例创建请求中包含的实例信息和系统卷信息进行数据处理,并将实例信息和系统卷信息发送至驱动模块进行卷实例创建,并用于查询卷实例创建结果;
[0008]所述驱动模块用于查询智能网卡模块的服务状态并基于服务状态对所述智能网卡模块进行上电操作,在智能网卡模块的服务启动时,用于将接收的实例信息和系统卷信息更新至裸金属服务器节点信息的属性中,并将系统卷信息发送至所述智能网卡模块,并基于所述智能网卡模块的反馈对裸金属服务器进行下电和上电操作;
[0009]所述智能网卡模块提供有rpc service、卷管理服务和IO模拟服务,用于通过rpc service接收系统卷信息并进行系统卷挂载和IO模拟,并将执行成功的成功信息返回所述驱动模块,用于伴随着裸金属服务器同步开机并执行卷管理服务和IO模拟服务。
[0010]作为优选,所述实例信息包括实例名称、实例ID、用户密码、租户网络、系统镜像信息,所述系统卷信息包括系统卷大小以及系统卷存储后端类型;
[0011]所述控制器模块用于将实例ID和系统卷信息发送至驱动模块进行卷实例创建,并用于根据实例ID、通过轮询的方式查询卷实例创建结果;
[0012]对所述卷启动实例创建请求中包含的实例信息和系统卷信息进行数据处理,包括如下操作:
[0013]将系统镜像信息写入系统卷信息当中;
[0014]将实例信息的状态变更为创建中;
[0015]将实例信息、系统卷信息持久化到数据库中。
[0016]作为优选,所述驱动模块用于将实例ID更新到裸金属服务器节点信息的instance_uuid属性中,将系统卷信息更新到裸金属服务器节点信息的bootable_volume属性中,并将裸金属服务器节点信息的属性状态更新为deploying,开始执行卷实例创建过程;
[0017]对于所述卷实例创建过程,所述驱动模块用于执行如下:
[0018]轮询所述智能网卡模块rpc service的服务状态,
[0019]如果rpc service未存活,用于通过IPMI命令对裸金属服务器进行上电操作,裸金属服务器开机的过程所述智能网卡模块同步开机,智能网卡模块提供的rpc service服务自启动;
[0020]轮询到所述智能网卡模块的rpc service启动后,用于进行服务调用,将系统卷信息发送至所述智能网卡模块,并等待智能网卡模块的返回结果。
[0021]作为优选,其特征在于,所述rpc service用于将接收的系统卷信息持久化到卷管理服务的初始化脚本中,将挂载盘信息持久化到IO模拟服务的初始化脚本中去,并将执行成功的成功信息返回至所述驱动模块;
[0022]所述智能网卡模块上电后,用于随着裸金属服务器同步开机,按照服务启动顺序执行卷管理服务和IO模拟服务,卷管理服务启动时加载初始化脚本,执行系统卷到智能网卡操作系统的内核级挂载操作,得到块设备/dev/rbd0;卷管理服务启动后,IO模拟服务启动,执行IO模拟服务初始化脚本中的内容。
[0023]作为优选,所述智能网卡模块用于通过如下操作按照服务启动顺序执行卷管理服务和IO模拟服务:
[0024]建立SPDK bdev到rbd块设备的数据通道,基于Linux AIO建立SPDK AIO bdev设备到内核块设备/dev/rbd0设备的映射关系;
[0025]初始化虚拟PCI设备,向virtio PCI配置空间写入VIRTIO_F_IOMMU_PLATFORM、VIRTIO_VENDOR_ID、VIRTIO_DEVICE_ID标识,连接到智能网卡模块的硬件PCI桥,将块设备连接到虚拟PCI设备,裸金属加载PCI设备驱动,发现系统卷,开机即可进入操作系统。
[0026]第二方面,本专利技术的一种裸金属服务器实现分布式存储卷启动的方法,裸金属服务器通过如第一方面任一项所述的裸金属服务器实现分布式存储卷启动的装置实现分布式存储卷启动,所述方法包括如下步骤:
[0027]通过控制器模块接收卷启动实例创建请求,对所述卷启动实例创建请求中包含的实例信息和系统卷信息进行数据处理,并将实例信息和系统卷信息发送至驱动模块进行卷实例创建,并查询卷实例创建结果;
[0028]通过驱动模块查询智能网卡模块的服务状态并基于服务状态对智能网卡模块进行上电操作,在智能网卡模块的服务启动时,通过驱动模块将实例信息和系统卷信息更新至裸金属服务器节点信息的属性中,并将系统卷信息发送至智能网卡模块;
[0029]通过智能网卡模块提供的rpc service接收系统卷信息并进行系统卷挂载和IO模拟,并将执行成功的成功信息返回所述驱动模块,并基于智能网卡模块的反馈、通过驱动模块对裸金属服务器进行下电和上电操作,智能网卡模块伴随着裸金属服务器同步开机,并执行卷管理服务和IO模拟服务,以实现分布式存储卷的启动。
[0030]作为优选,所述实例信息包括实例名称、实例ID、用户密码、租户网络、系统镜像信息,所述系统卷信息包括系统卷大小以及系统卷存储后端类型;
[0031]通过控制器模块将实例ID和系统卷信息发送至驱动模块进行卷实例创建,并根据实例ID、通过轮询的方式查询卷实例创建结果;
[0032]对所述卷启动实例创建请求中包含的实例信息和系统卷信息进行数据处理,包括如下操作:
[0033]将系统镜像信息写入系统卷信本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种裸金属服务器实现分布式存储卷启动的装置,其特征在于,包括控制器模块、驱动模块以及多个智能网卡模块;控制器模块,所述控制器模块用于对外提供裸金属服务器卷启动服务的入口,用于接收卷启动实例创建请求,对所述卷启动实例创建请求中包含的实例信息和系统卷信息进行数据处理,并将实例信息和系统卷信息发送至驱动模块进行卷实例创建,并用于查询卷实例创建结果;所述驱动模块用于查询智能网卡模块的服务状态并基于服务状态对所述智能网卡模块进行上电操作,在智能网卡模块的服务启动时,用于将接收的实例信息和系统卷信息更新至裸金属服务器节点信息的属性中,并将系统卷信息发送至所述智能网卡模块,并基于所述智能网卡模块的反馈对裸金属服务器进行下电和上电操作;所述智能网卡模块提供有rpc service、卷管理服务和IO模拟服务,用于通过rpc service接收系统卷信息并进行系统卷挂载和IO模拟,并将执行成功的成功信息返回所述驱动模块,用于伴随着裸金属服务器同步开机并执行卷管理服务和IO模拟服务。2.根据权利要求1所述的裸金属服务器实现分布式存储卷启动的装置,其特征在于,所述实例信息包括实例名称、实例ID、用户密码、租户网络、系统镜像信息,所述系统卷信息包括系统卷大小以及系统卷存储后端类型;所述控制器模块用于将实例ID和系统卷信息发送至驱动模块进行卷实例创建,并用于根据实例ID、通过轮询的方式查询卷实例创建结果;对所述卷启动实例创建请求中包含的实例信息和系统卷信息进行数据处理,包括如下操作:将系统镜像信息写入系统卷信息当中;将实例信息的状态变更为创建中;将实例信息、系统卷信息持久化到数据库中。3.根据权利要求2所述的裸金属服务器实现分布式存储卷启动的装置,其特征在于,所述驱动模块用于将实例ID更新到裸金属服务器节点信息的instance_uuid属性中,将系统卷信息更新到裸金属服务器节点信息的bootable_volume属性中,并将裸金属服务器节点信息的属性状态更新为deploying,开始执行卷实例创建过程;对于所述卷实例创建过程,所述驱动模块用于执行如下:轮询所述智能网卡模块rpc service的服务状态,如果rpc service未存活,用于通过IPMI命令对裸金属服务器进行上电操作,裸金属服务器开机的过程所述智能网卡模块同步开机,智能网卡模块提供的rpc service服务自启动;轮询到所述智能网卡模块的rpc service启动后,用于进行服务调用,将系统卷信息发送至所述智能网卡模块,并等待智能网卡模块的返回结果。4.根据权利要求1

3任一项所述的裸金属服务器实现分布式存储卷启动的装置,其特征在于,所述rpc service用于将接收的系统卷信息持久化到卷管理服务的初始化脚本中,将挂载盘信息持久化到IO模拟服务的初始化脚本中去,并将执行成功的成功信息返回至所述驱动模块;所述智能网卡模块上电后,用于随着裸金属服务器同步开机,按照服务启动顺序执行
卷管理服务和IO模拟服务,卷管理服务启动时加载初始化脚本,执行系统卷到智能网卡操作系统的内核级挂载操作,得到块设备/dev/rbd0;卷管理服务启动后,IO模拟服务启动,执行IO模拟服务初始化脚本中的内容。5.根据权利要求4所述的裸金属服务器实现分布式存储卷启动的装置,其特征在于,所述智能网卡模块用于通过如下操作按照服务启动顺序执行卷管理服务和IO模拟服务:建立SPDK bdev到rbd块设备的数据通道,基于Linux AIO建立SPDK AIO bdev设备到内核块设备/dev/rbd0设备的映射关系;初始化虚拟PCI设备,向virtio PCI配置空间写入VIRTIO_F_IOMMU_PLATFORM、VIRTIO_VENDOR_ID、VIRTIO_DEVICE_ID标识,连接到智能网卡模块的硬件PCI桥,将块设备连接到虚拟PCI设备,裸金属加载PCI设备驱动,发现系统卷,开机即可进入操作系统。6....

【专利技术属性】
技术研发人员:韩同江燕蔡卫卫
申请(专利权)人:浪潮云信息技术股份公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1