一种多云管理的云服务适配模块管理方法技术

技术编号:23399638 阅读:32 留言:0更新日期:2020-02-22 11:57
本发明专利技术涉及多云管理技术领域,特别涉及一种多云管理的云服务适配模块管理方法。本发明专利技术的方法是由多云管理主程序定义通用管理API,并提供云服务适配模块插件管理服务;所述多云管理主程序确定云服务适配模块代码权限的管理粒度并制定代码结构;然后编写云服务适配模块代码并打包成插件。本发明专利技术方法将云服务适配模块以插件方式进行管理;实现主程序与实现类的解耦,方便研发管理,提高开发效率,保障源码安全;可以用于多云管理的云服务适配模块管理。

A management method of cloud service adaptation module based on multi cloud management

【技术实现步骤摘要】
一种多云管理的云服务适配模块管理方法
本专利技术涉及多云管理
,特别涉及一种多云管理的云服务适配模块管理方法。
技术介绍
目前,云平台基本以云服务作为一个基础单元对外提供服务。多云管理为了屏蔽云间差异,通常会定义通用管理API;然后适配各类型云平台的实现,以云服务为最小单元封装成微服务对外提供通用的管理API。随着源码管理技术的发展和团队协同开发的需要,git源码管理工具逐渐成为业界主流。传统的微服务通常是将各代码模块打包成一个可运行的服务程序,例如基于SpringBoot的微服务将各代码模块编译成一个可运行的jar包。随着适配的云平台类型的增加,服务程序会变得越来越大。实际上每个客户环境所需要的云服务适配模块通常只是一小部分,这种方式的模块管理和程序打包方式会造成程序运行消耗更多的服务器资源。随着云平台的发展,特别是在私有云领域,云服务的API会出现不同的版本;单纯以云平台类型作为模块划分无法适应后续的扩展。git源码管理工具无法做细粒度的模块代码权限控制,必须整个服务代码同时开放;多云管理领域涉及适配模块较多,需要更多的研发人员参与。因此需要一种灵活的模块划分和高效的研发管理方法。
技术实现思路
本专利技术解决的技术问题在于提供一种多云管理的云服务适配模块管理方法;灵活地根据不同的客户需求定制多云管理所涉及的平台类型和API版本,减少适配程序的系统开销,提高服务性能。本专利技术解决上述技术问题的技术方案是:所述的方法是由多云管理主程序定义通用管理API,并提供云服务适配模块插件管理服务;所述多云管理主程序确定云服务适配模块代码权限的管理粒度并制定代码结构;然后编写云服务适配模块代码并打包成插件。所述的管理服务包括:多云管理主程序根据配置文件配置启动时加载的云服务适配模块,检测云服务适配模块完整性和冲突,并提供云服务适配模块插件上传、动态加载的管理功能。所述的定义云服务通用管理API包括:云管理所需的业务属性、通用管理API的版本、实现API的云平台类型、云服务类型和云服务API版本。所述的配置文件包括适配的云平台类型和云服务适配模块实现的插件程序包。所述的完整性检测是检查定义的所有云服务的通用管理API是否都能找到对应的实现类;冲突检测是检查云平台相同类型的服务是否同时提供了不同版本的实现类,如有,则择其一使用。所述的上传、动态加载指云服务适配模块编码完成后,编译成指定的文件格式,上传到多云管理主程序运行的服务器所指定的目录;当多云管理主程序检测到有新模块上传后自动加载新模块的实现类,并触发完整性和冲突检测。所述的方法中,根据云平台服务分类的差异,云服务适配模块的分类粒度与通用管理API相同或比通用管理API小;通用管理API的服务分类与云平台的服务是1对N的关系,N>=1。本专利技术的云服务适配模块管理方法,能够灵活地根据不同的客户需求定制多云管理所涉及的平台类型和API版本,最大限度地减少适配程序没必要的系统开销,提高服务性能。同时提供完整性和冲突检测,保障系统提供服务的完整性和正确性。采用插件方式的模块管理实现主程序与实现类的解耦,方便研发管理,提高开发效率,保障源码安全。附图说明下面结合附图对本专利技术进一步说明:图1是本专利技术方法的流程图;图2是本专利技术云服务适配模块插件管理服务各部件关系图。具体实施方式见图1、2所示,是本专利技术一个实施例中云服务适配模块管理方法的流程图。本专利技术的方法包括以下实现步骤:S10:多云管理主程序定义云服务通用管理API。云服务通用管理API是一套抽取异构云公共特性、用于异构云统一管理的API。定义云服务通用管理API除了包含云管理所需的业务属性,还包括通用管理API的版本、实现该API的云平台类型、云服务类型和云服务API版本。例如,实现弹性计算服务通用管理API集合定义的方法如下:V1版本集合目录:EcsCommonApis.V1该服务包括创建虚拟机、创建云盘等功能接口:CreateVmApi、CreateDiskApi、...,所有业务功能API继承ApiBase(包括:实现云平台的类型cloudType,云服务类型cloudserviceType,云服务API版本)。S20:多云管理主程序提供云服务适配模块插件管理服务。为能够最大限度节约运行多云管理程序的服务器资源,提供灵活的软件模块管理和实现多团队协同开发,云服务适配模块使用插件式开发和管理。多云管理主程序提供插件管理服务,满足不同的环境部署和管理需求。本实施例中提供云服务适配模块插件管理服务具体步骤如下:S21:根据配置文件配置多云管理主程序启动加载的云服务适配模块。定义多云管理主程序启动时加载的云服务适配模块,程序启动时加载通用管理API的实现类只会在配置文件配置的插件包中查找。配置文件主要包括适配的云平台类型和云服务适配模块实现的插件程序包。例如:CloudAdapterInit.confAliyun:EcsCommonApi-Aliyun-Ecs-V20140101-PluginOpenstack:EcsCommonApi-Openstack-Nova-V2-PluginEcsCommonApi-Openstack-Cinder-V3-PluginS22:多云管理主程序检测加载的云服务适配模块完整性和冲突。为保障主程序所有功能的正常运行,需要检测加载云服务适配模块完整性和冲突。完整性主要检查步骤S10中定义的所有云服务通用管理API是否都能找到对应的实现类;冲突主要检查云平台相同类型的服务是否同时提供了不同版本的实现类,由于版本间的差异,相同功能的不同版本实现类是不能混合使用的。例如:配置文件同时配置了EcsCommonApi-Openstack-Cinder-V2-Plugin和EcsCommonApi-Openstack-Cinder-V3-Plugin,同一套Openstack环境中Cinder的V2和V3版本通常是二选一使用的。多云管理主程序将检测到的完整性和冲突结果按云平台类型分类输出给用户,以便调整配置。S23:多云管理主程序提供云服务适配模块插件上传、动态加载等管理功能。云服务适配模块插件上传和动态加载是指云服务适配模块编码完成后,可以编译成指定的文件格式,上传到多云管理主程序运行的服务器所指定的目录。当主程序检测到有新模块上传后自动加载新模块的实现类,并触发S22的检测流程。使得主程序在不重启的情况下具备新模块的功能,保障多团队协同开发时不开放主程序源码权限实现接口适配的功能验证和测试。S30:确定云服务适配模块代码权限管理粒度制定代码结构。代码管理权限是指使用git或svn之类的主流软件源代码管理工具进行管理时需要确定权限控制的粒度,以便相对准确的确定云本文档来自技高网...

【技术保护点】
1.一种多云管理的云服务适配模块管理方法,其特征在于:所述的方法是由多云管理主程序定义通用管理API,并提供云服务适配模块插件管理服务;所述多云管理主程序确定云服务适配模块代码权限的管理粒度并制定代码结构;然后编写云服务适配模块代码并打包成插件。/n

【技术特征摘要】
1.一种多云管理的云服务适配模块管理方法,其特征在于:所述的方法是由多云管理主程序定义通用管理API,并提供云服务适配模块插件管理服务;所述多云管理主程序确定云服务适配模块代码权限的管理粒度并制定代码结构;然后编写云服务适配模块代码并打包成插件。


2.根据权利要求1所述的方法,其特征在于:所述的管理服务包括:
多云管理主程序根据配置文件配置启动时加载的云服务适配模块,检测云服务适配模块完整性和冲突,并提供云服务适配模块插件上传、动态加载的管理功能。


3.根据权利要求1所述的方法,其特征在于:所述的定义云服务通用管理API包括:云管理所需的业务属性、通用管理API的版本、实现API的云平台类型、云服务类型和云服务API版本。


4.根据权利要求2所述的方法,其特征在于:所述的定义云服务通用管理API包括:云管理所需的业务属性、通用管理API的版本、实现API的云平台类型、云服务类型和云服务API版本。


5.根据权利要求2或4所述的方法,其特征在于:所述的配置文件包括适配的云平台类型和云服务适配模块实现的插件程序包。


6.根据权利要求2所述的方法,其特征在于:所述的
完整性检测是检查定义的所有云服务的通...

【专利技术属性】
技术研发人员:袁炯钟季统凯
申请(专利权)人:国云科技股份有限公司
类型:发明
国别省市:广东;44

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

1