一种支持多存储的云平台镜像管理系统的制作方法

未命名 07-20 阅读:101 评论:0


1.本发明设计云平台镜像管理技术领域,特别是一种支持多存储的云平台镜像管理系统。


背景技术:

2.随着云计算技术的发展,越来越多的企业都搭建了自己的云平台,很多云平台的镜像模板和云主机系统盘是使用同一套存储池存放,这样在创建云主机的时候就不需要从镜像管理中下载镜像模板,提高云主机的创建速度。但镜像管理组件只支持上传镜像到一个后端存储池,而在云平台大规模部署场景下,通常会划分多个availability zone(az,可用域),在每个az中部署独立的存储集群,因此当前的镜像管理组件无法很好支持这种大规模应用场景,导致创建云主机的时候,需要实时从镜像管理系统中下载镜像模板,并上传到本地az中的存储池中,无法满足快速创建云主机的需求。
3.因此,继续一种支持多存储的云平台镜像管理系统,用于解决现有镜像管理系统中,镜像模板的下载路径过长,导致的无法满足快速创建云主机的需求。


技术实现要素:

4.本发明提供一种支持多存储的云平台镜像管理系统,用于解决背景技术中所述的,因为镜像模板的下载路径过长,导致无法满足快速创建云主机的需求,的技术问题。其具体技术方案如下:
5.本发明公开一种支持多存储的云平台镜像管理系统,其特征在于,所述系统包括:镜像api、配置中心、az存储池;
6.所述镜像api与客户端连接,所述配置中心与所述镜像api连接,所述az存储池设置有多个,每个所述az存储池与所述配置中心连接;
7.所述客户端向所述镜像api上传镜像文件;所述镜像api调用配置中心,获取当前可用的az存储池信息;所述镜像api基于所述当前可用的az存储池信息,将处理后的镜像文件通过所述配置中心保存至所述当前可用的az存储池中;所述保存镜像的az存储池用于快速创建云主机。
8.本发明的另一种实施例中,在第一实施例的基础上,所述镜像api中设置有转换函数处理模块,所述转换函数处理模块用于,在所述镜像api接收所述镜像文件后,将所述镜像文件转换为所述处理后镜像文件,所述处理后的镜像文件为镜像数据流格式的文件。
9.本发明的另一种实施例中,在第一实施例的基础上,所述配置中心中设置有存储路径上传模块,所述存储路径上传模块用于,将保存镜像的az存储池的路径信息上传至所述镜像api。
10.本发明的另一种实施例中,在第一实施例的基础上,所述配置中心中还设置有az存储池配置模块,所述az存储池配置模块用于,存储az存储池配置信息,所述az存储池配置信心包括:主机地址、镜像存储az地址、可用az数量、az数据;所述配置中心基于所述az存储
池配置信息对多个所述az存储池进行调用。
11.本发明的另一种实施例中,在第一实施例的基础上,所述系统还包括:注册中心和数据库;
12.所述注册中心与所述镜像api连接;所述注册中心包括镜像注册模块、存储池注册模块、存储路径注册模块、删除镜像注册模块;
13.所述镜像注册模块用于注册新增的镜像信息,所述存储池注册模块用于注册和更新所有az存储池的信息,所述存储路径注册模块用于存储和管理镜像的存储路径和镜像id,所述删除镜像注册模块用于删除镜像信息。
14.本发明的另一种实施例中,在第五实施例的基础上,所述注册中心的所述镜像注册模块具体用于:将镜像文件中的注册信息存储至数据库中;
15.所述镜像api在接收所述镜像文件后,调用所述注册中心;所述镜像api将所述镜像文件中的所述注册信息发送至所述注册中心;所述镜像文件中的注册信息包含镜像的名称和镜像的配置信息;所述注册中心基于所述注册信息和所述路径信息执行新增操作。
16.本发明的另一种实施例中,在第五实施例的基础上,所述注册中心的所述存储池注册模块具体用于:将所述配置中心部署的az存储池配置信息存储到所述数据库中,并且,基于所述配置中心上传的az存储池变动信息,修改所述数据库中的az存储池配置信息。
17.本发明的另一种实施例中,在第五实施例的基础上,所述注册中心的所述存储路径注册模块具体用于:将所述镜像api接收的保存镜像的az存储池的路径信息保存至所述数据库中,存储相同镜像的所述路径信息对应唯一的镜像id。
18.本发明的另一种实施例中,在第五实施例的基础上,所述注册中心的所述删除镜像注册模块具体用于:提供待删除镜像的所有az存储池信息,并将成功删除的镜像的所述az存储池信息删除。
19.本发明的另一种实施例中,在第九实施例的基础上,所述镜像api中还设置有镜像删除模块,所述镜像删除模块用于:所述镜像删除模块基于客户端发送的镜像删除指令调用所述注册中心;所述注册中心获取所述数据库中包含待删除镜像的所有az存储池信息;所述镜像删除模块基于所述包含待删除镜像的所有az存储池信息,访问对应的az存储池,并删除对应的az存储池中的镜像数据。
20.发明效果:
21.本发明提供的一种支持多存储的云平台镜像管理系统,具有如下技术优势。(1)缩短云主机创建时间:云平台多az部署,镜像单一存储创建云主机时,需要实时从镜像管理系统中下载镜像模板,上传到本地az中的存储池中,无法满足快速创建云主机的需求。该方法中,上传的镜像同时存储于多个az的存储后端,与各个az的计算资源在同一个存储池,这样在创建云主机的时候可从本az存储池直接获取镜像,大大缩短了云主机创建时间;(2)为应用部署提供高可用支撑:云平台多az部署,镜像单一存储时,假设该存储down掉,其他az无法拉取镜像创建云主机,影响应用部署。该方法中,当某一个可用域关联的存储集群故障时,不会影响其它可用域运行,从而实现应用高可用部署架构支撑。
附图说明:
22.图1是本发明提供的一种支持多存储的云平台镜像管理系统的架构图。
23.具体实施方法
24.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
25.具体实施例1:
26.本发明提供一种支持多存储的云平台镜像管理系统,用于解决背景技术中所述的,因为镜像模板的下载路径过长,导致无法满足快速创建云主机的需求,的技术问题。其具体技术方案如下:
27.本发明公开一种支持多存储的云平台镜像管理系统,其特征在于,所述系统包括:镜像api、配置中心、az存储池;
28.所述镜像api与客户端连接,所述配置中心与所述镜像api连接,所述az存储池设置有多个,每个所述az存储池与所述配置中心连接;
29.所述客户端向所述镜像api上传镜像文件;所述镜像api调用配置中心,获取当前可用的az存储池信息;所述镜像api基于所述当前可用的az存储池信息,将处理后的镜像文件通过所述配置中心保存至所述当前可用的az存储池中;所述保存镜像的az存储池用于快速创建云主机。
30.本实施例中,公开一种支持多存储的云平台镜像管理系统,该系统包括镜像api、配置中心、az存储池。其中az存储池设置有多个,每个az存储池与配置中心连接,连接方式为电连接,用于实现信号传递。本实施例的具体过程如下:
31.1、客户端调用镜像api接口发起上传镜像操作,通过文件上传操作将镜像发送到镜像api模块;
32.2、镜像api调用镜像配置中心,执行查询操作,获取当前可用az存储池;
33.3、镜像api执行保存操作,通过配置中心提供的可用az存储池,将镜像数据流保存至所有可用的az存储池中,所述保存镜像的az存储池用于快速创建云主机。
34.该技术可以运用在云平台多az部署,镜像单一存储等场景中,用来实现多az快速提供云主机镜像、单一存储down掉依然能提供镜像服务等功能。提供镜像同时上传至多az后端存储的功能,可广泛用于公有云和私有云中镜像服务不佳、上层应用高可用架构要求较高等场景。
35.本发明的另一种实施例中,在第一实施例的基础上,所述镜像api中设置有转换函数处理模块,所述转换函数处理模块用于,在所述镜像api接收所述镜像文件后,将所述镜像文件转换为所述处理后镜像文件,所述处理后的镜像文件为镜像数据流格式的文件。
36.本实施例中,进一步公开镜像api具体结构,所述镜像api中设置有转换函数处理模块具体用于:
37.1、镜像api调用镜像转换函数将客户端提交镜像文件转换为镜像数据流格式。
38.通过将镜像文件转为数据流格式,加快了新增的镜像的信息在系统内的流动,缩短了信息传递的时间,进一步的提高了系统运行的效率。
39.本发明的另一种实施例中,在第一实施例的基础上,所述配置中心中设置有存储路径上传模块,所述存储路径上传模块用于,将保存镜像的az存储池的路径信息上传至所
述镜像api。
40.本实施例中,进一步公开配置中心的结构,配置中心设置有存储路径上传模块。该存储路径上传模块具体用于:
41.1、镜像配置中心返回保存成功,并将保存镜像的存储池路径等信息返回给镜像api;
42.2、镜像配置中心返回保存失败,客户端重新提交镜像信息重复s102。
43.通过将保存有镜像文件的az存储池的路径返回给镜像api,记录镜像文件和镜像文件的具体位置,为后续快速访问镜像文件提供条件。
44.本发明的另一种实施例中,在第一实施例的基础上,所述配置中心中还设置有az存储池配置模块,所述az存储池配置模块用于,存储az存储池配置信息,所述az存储池配置信息包括:主机地址、镜像存储az地址、可用az数量、az数据;所述配置中心基于所述az存储池配置信息对多个所述az存储池进行调用。
45.本实施例中,进一步公开配置中心的其他功能结构,配置中心还设置有az存储池配置模块。该模块用于配置各个az存储池,以便于更好的管理和使用az存储池。该az存储池配置模块具体用于:
46.1、在后端配置中心新增参数配置功能;
47.2、配置具体参数:主机地址、镜像存储az地址、可用az数量、az数据;
48.3、启动镜像服务;
49.4、读取配置中心配置的主机地址、镜像存储az地址、可用az数量、az数据参数信息。
50.本发明的另一种实施例中,在第一实施例的基础上,所述系统还包括:注册中心和数据库;
51.所述注册中心与所述镜像api连接;所述注册中心包括镜像注册模块、存储池注册模块、存储路径注册模块、删除镜像注册模块;
52.所述镜像注册模块用于注册新增的镜像信息,所述存储池注册模块用于注册和更新所有az存储池的信息,所述存储路径注册模块用于存储和管理镜像的存储路径和镜像id,所述删除镜像注册模块用于删除镜像信息。
53.本实施例中,进一步公开注册模块的功能结构,该注册模块用于将生成云主机的需要的镜像信息存储在数据库中。具体包括多种注册模块:像注册模块、存储池注册模块、存储路径注册模块、删除镜像注册模块。
54.本发明的另一种实施例中,在第五实施例的基础上,所述注册中心的所述镜像注册模块具体用于:将镜像文件中的注册信息存储至数据库中;
55.所述镜像api在接收所述镜像文件后,调用所述注册中心;所述镜像api将所述镜像文件中的所述注册信息发送至所述注册中心;所述镜像文件中的注册信息包含镜像的名称和镜像的配置信息;所述注册中心基于所述注册信息和所述路径信息执行新增操作。
56.本实施例中,进一步公开镜像注册模块的用途。该镜像注册模块具体用于:
57.1、镜像api调用镜像注册中心模块,发起注册操作,将镜像的名称、大小等数据,执行新增操作,将镜像数据在注册中心完成镜像注册;
58.2、镜像注册中心调用db数据库,执行新增操作,将新注册的镜像信息保存至db数
据库。
59.本发明的另一种实施例中,在第五实施例的基础上,所述注册中心的所述存储池注册模块具体用于:将所述配置中心部署的az存储池配置信息存储到所述数据库中,并且,基于所述配置中心上传的az存储池变动信息,修改所述数据库中的az存储池配置信息。
60.本实施例中,进一步公开存储池注册模块的用途,该存储池注册模块具体用于:
61.1、部署多个az存储池,将存储池信息(存储池名称、存储池地址、存储池状态)上传至配置中心;
62.2、配置中心将部署的az存储池信息注册到注册中心;
63.3、注册中心az将存储信息存储到数据库db;
64.4、用户发起上传镜像服务;
65.5、从注册中心获取可用az存储池信息;
66.6、将镜像上传至可用的az存储池;
67.7、更新配置中心az存储池信息;
68.8、更新注册中心和数据库db的az存储池信息。
69.本发明的另一种实施例中,在第五实施例的基础上,所述注册中心的所述存储路径注册模块具体用于:将所述镜像api接收的保存镜像的az存储池的路径信息保存至所述数据库中,存储相同镜像的所述路径信息对应唯一的镜像id。
70.1、镜像配置中心返回保存成功,并将保存镜像的存储池路径等信息返回给镜像api;
71.2、镜像api调用镜像注册中心将镜像的存储路径信息以一对多的形式保存至db数据库。
72.本发明的另一种实施例中,在第五实施例的基础上,所述注册中心的所述删除镜像注册模块具体用于:提供待删除镜像的所有az存储池信息,并将成功删除的镜像的所述az存储池信息删除。
73.本实施例中,进一步公开删除奖项注册模块的用途,该模块具体用于:
74.1、提供数据库中关于待删除镜像的所有az存储池信息;
75.2、当待删除镜像从所有az存储池中删除后,注册中心删除数据库中待删除镜像的信息;
76.3、注册中心更新数据库中的az存储池信息。
77.本发明的另一种实施例中,在第九实施例的基础上,所述镜像api中还设置有镜像删除模块,所述镜像删除模块用于:所述镜像删除模块基于客户端发送的镜像删除指令调用所述注册中心;所述注册中心获取所述数据库中包含待删除镜像的所有az存储池信息;所述镜像删除模块基于所述包含待删除镜像的所有az存储池信息,访问对应的az存储池,并删除对应的az存储池中的镜像数据。
78.1、获取注册中心所有az存储池信息;
79.2、选择想要删除的镜像,并获取包含该镜像的所有az数据池信息;
80.3、删除这些az数据池中目标镜像资源;
81.4、更新配置中心az存储池信息;
82.5、更新注册中心和数据库db的az存储池信息。
83.具体实施例2:
84.结合图1,对本发明一种支持多存储的云平台镜像管理系统,具体运行过程如下:
85.1、客户端调用镜像api接口发起上传镜像操作,通过文件上传操作将镜像发送到镜像api模块,执行2
86.2、镜像api调用镜像转换函数将客户端提交镜像转换为镜像数据流格式
87.3、镜像api调用镜像注册中心模块,发起注册操作,将镜像的名称、大小等数据,执行新增操作,将镜像数据在注册中心完成镜像注册,执行4
88.4、镜像注册中心调用db数据库,执行新增操作,将新注册的镜像信息保存至db数据库,执行5
89.5、镜像api调用镜像配置中心,执行查询操作,获取当前可用az存储池
90.6、镜像api执行保存操作,通过配置中心提供的可用az存储池,将镜像数据流保存至所有可用的az存储池中,执行7
91.7、镜像配置中心返回保存成功,并将保存镜像的存储池路径等信息返回给镜像api,执行过程9
92.8、镜像配置中心返回保存失败,客户端重新提交镜像信息重复2
93.9、镜像api调用镜像注册中心将镜像的存储路径信息以一对多的形式保存至db数据库。
94.10、云镜像生成完成。
95.此外,本发明提供的一种支持多存储的云平台镜像管理系统,在解决快速创建云主机的功能的同时,还具有如下功能,其具体功能实现过程如下:
96.(1)实现多存储后端访问参数配置功能
97.1、在后端配置中心新增参数配置功能
98.2、配置具体参数:主机地址、镜像存储az地址、可用az数量、az数据。
99.3、启动镜像服务
100.4、读取配置中心配置的主机地址、镜像存储az地址、可用az数量、az数据参数信息
101.(2)实现镜像在多个存储后端的自动上传
102.1、部署多个az存储池,将存储池信息(存储池名称、存储池地址、存储池状态)上传至配置中心
103.2、配置中心将部署的az存储池信息注册到注册中心
104.3、注册中心az将存储信息存储到数据库db
105.4、用户发起上传镜像服务
106.5、从注册中心获取可用az存储池信息
107.6、将镜像上传至可用的az存储池
108.7、更新配置中心az存储池信息
109.8、更新注册中心和数据库db的az存储池信息
110.(3)实现删除镜像时多个存储后端的数据清理
111.1、获取注册中心所有az存储池信息
112.2、选择想要删除的镜像,并获取包含该镜像的所有az数据池信息
113.3、删除这些az数据池中目标镜像资源
114.4、更新配置中心az存储池信息
115.5、更新注册中心和数据库db的az存储池信息
116.(4)实现镜像多个存储路径的管理
117.1、在数据库db中新增存储路径字段
118.2、存储路径和镜像id(唯一标识符)为多对一关系
119.3、上传镜像后在配置中心中更新az存储池信息
120.4、上传镜像后需要在注册中心更新az存储池信息并将镜像对应的az存储池地址以及镜像信息保存到数据库db中
121.5、使用镜像时对于根据镜像id检索到多个可用的az存储路径,选取检索到的第一个可用的存储路径提供服务。
122.本方案的技术效果为:
123.该技术可以运用在云平台多az部署,镜像单一存储等场景中,用来实现多az快速提供云主机镜像、单一存储down掉依然能提供镜像服务等功能。提供镜像同时上传至多az后端存储的功能,可广泛用于公有云和私有云中镜像服务不佳、上层应用高可用架构要求较高等场景。

技术特征:
1.一种支持多存储的云平台镜像管理系统,其特征在于,所述系统包括:镜像api、配置中心、az存储池;所述镜像api与客户端连接,所述配置中心与所述镜像api连接,所述az存储池设置有多个,每个所述az存储池与所述配置中心连接;所述客户端向所述镜像api上传镜像文件;所述镜像api调用配置中心,获取当前可用的az存储池信息;所述镜像api基于所述当前可用的az存储池信息,将处理后的镜像文件通过所述配置中心保存至所述当前可用的az存储池中;所述保存镜像的az存储池用于快速创建云主机。2.如权利要求1所述的一种支持多存储的云平台镜像管理系统,其特征在于,所述镜像api中设置有转换函数处理模块,所述转换函数处理模块用于,在所述镜像api接收所述镜像文件后,将所述镜像文件转换为所述处理后镜像文件,所述处理后的镜像文件为镜像数据流格式的文件。3.如权利要求1所述的一种支持多存储的云平台镜像管理系统,其特征在于,所述配置中心中设置有存储路径上传模块,所述存储路径上传模块用于,将保存镜像的az存储池的路径信息上传至所述镜像api。4.如权利要去1所述的一种支持多存储的云平台镜像管理系统,其特征在于,所述配置中心中还设置有az存储池配置模块,所述az存储池配置模块用于,存储az存储池配置信息,所述az存储池配置信心包括:主机地址、镜像存储az地址、可用az数量、az数据;所述配置中心基于所述az存储池配置信息对多个所述az存储池进行调用。5.如权利要求1所述的一种支持多存储的云平台镜像管理系统,其特征在于,所述系统还包括:注册中心和数据库;所述注册中心与所述镜像api连接;所述注册中心包括镜像注册模块、存储池注册模块、存储路径注册模块、删除镜像注册模块;所述镜像注册模块用于注册新增的镜像信息,所述存储池注册模块用于注册和更新所有az存储池的信息,所述存储路径注册模块用于存储和管理镜像的存储路径和镜像id,所述删除镜像注册模块用于删除镜像信息。6.如权利要求5所述的一种支持多存储的云平台镜像管理系统,其特征在于,所述注册中心的所述镜像注册模块具体用于:将镜像文件中的注册信息存储至数据库中;所述镜像api在接收所述镜像文件后,调用所述注册中心;所述镜像api将所述镜像文件中的所述注册信息发送至所述注册中心;所述镜像文件中的注册信息包含镜像的名称和镜像的配置信息;所述注册中心基于所述注册信息和所述路径信息执行新增操作。7.如权利要求5所述的一种支持多存储的云平台镜像管理系统,其特征在于,所述注册中心的所述存储池注册模块具体用于:将所述配置中心部署的az存储池配置信息存储到所述数据库中,并且,基于所述配置中心上传的az存储池变动信息,修改所述数据库中的az存储池配置信息。8.如权利要求5所述的一种支持多存储的云平台镜像管理系统,其特征在于,所述注册中心的所述存储路径注册模块具体用于:将所述镜像api接收的保存镜像的az存储池的路径信息保存至所述数据库中,存储相同镜像的所述路径信息对应唯一的镜像id。9.如权利要求5所述的一种支持多存储的云平台镜像管理系统,其特征在于,所述注册
中心的所述删除镜像注册模块具体用于:提供待删除镜像的所有az存储池信息,并将成功删除的镜像的所述az存储池信息删除。10.如权利要求9所述的一种支持多存储的云平台镜像管理系统,其特征在于,所述镜像api中还设置有镜像删除模块,所述镜像删除模块用于:所述镜像删除模块基于客户端发送的镜像删除指令调用所述注册中心;所述注册中心获取所述数据库中包含待删除镜像的所有az存储池信息;所述镜像删除模块基于所述包含待删除镜像的所有az存储池信息,访问对应的az存储池,并删除对应的az存储池中的镜像数据。

技术总结
本发明提供了一种支持多存储的云平台镜像管理系统,该系统包括:镜像api、配置中心、AZ存储池。所述客户端向所述镜像api上传镜像文件;所述镜像api调用配置中心,获取当前可用的AZ存储池信息;所述镜像api基于所述当前可用的AZ存储池信息,将处理后的镜像文件通过所述配置中心保存至所述当前可用的AZ存储池中;所述保存镜像的Az存储池用于快速创建云主机。本发明中,上传的镜像同时存储于多个AZ的存储后端,与各个AZ的计算资源在同一个存储池,这样在创建云主机的时候可从本AZ存储池直接获取镜像,大大缩短了云主机创建时间。大大缩短了云主机创建时间。大大缩短了云主机创建时间。


技术研发人员:杜笑天 杨永军 温万里 林华 张冲 王莹
受保护的技术使用者:航天科工网络信息发展有限公司
技术研发日:2023.03.15
技术公布日:2023/7/18
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐