1.本发明属于计算机信息技术领域,尤其涉及一种微服务架构下混合云的计费管理方法。
背景技术:2.云计算的快速发展,公有云技术的更新迭代和价格的普惠,使得很多公司企业逐步从传统的自建机房和设备购买,转向购买公有云厂商的资源作为微服务应用部署的基础设施。但由于数据的敏感性与安全性问题,企业内部仍然需要构建自己的私有云存储隐私数据,混合云逐渐成为各企业的主要选择。
3.随着公有云平台的增多,公有云产品的多样性增加,企业对于公有云的最佳选择无法集中在某一个公有云平台上,大多数的企业可能同时选择多个不同公有云的不同产品,这种使用方式使得混合云的构成更加复杂。
4.微服务架构(通常简称为微服务)是指开发应用所用的一种架构形式。通过微服务,可将大型应用分解成多个独立的组件,其中每个组件都有各自的责任领域。
5.微服务在混合云上的使用比传统的单体架构更为契合,微服务下的应用可以根据功能需求选择合适的公有云/私有云资源进行部署,所述特点使得微服务和混合云的结合使用愈加广泛。
6.在这些广泛使用的背后,用户对微服务架构下混合云资源的花费情况越来越关注,需要对这些使用的混合云资源进行统一计费管理。应用作为微服务的最小单位,在混合云资源的统一计费上有如下难点:
7.应用对资源的独占性和多个应用共用资源的情况同时存在;
8.公有云和私有云作为不同的云,资源的使用和计费方式完全不同;
9.不同公有云的计费方式存在差异,同一公有云的不同产品的计费方式也存在不同。
技术实现要素:10.有鉴于此,本发明提出了一种微服务架构下混合云的计费管理方法。本发明整理微服务的应用使用的资源及其分摊比例;从多个不同公有云平台的每个公有云平台中,分别获取所述资源在所述每个公有云平台中的原始计费数据;制定私有云计费标准,计算私有云平台资源的计费数据;将所述计费数据中统一处理为应用费用模型的形式并储存至数据库中,所述应用费用模型包括唯一标识、计费月份、资源名称、资源标识、云类型、资源原始费用、资源所属应用、应用分摊比例、应用分摊费用;后端具有读取和分析费用模型数据并提供api接口的能力;图形化界面的前端展示。本发明通过整理应用的资源使用情况,整合并统一混合云环境中不同云的计费数据,有效提升微服务架构下混合云资源的费用查询效率。
11.本发明第一方面公开的一种微服务架构下混合云的计费管理方法,包括以下步
骤:
12.统一整理并规范在用混合云资源名称和标识;
13.整理微服务下应用的在用资源,并区分应用的独占型资源和共享型资源,针对共享型资源,计算出资源在不同应用下的分摊比例;
14.从不同公有云平台中不同类型不同格式的账单原始数据中获取公有云资源的原始计费数据;
15.制定私有云平台上资源的计费标准,计算出私有云平台资源的计费数据;
16.将所述数据统一整理并处理成应用费用模型的形式并储存至数据库中,所述应用费用模型包括唯一标识、计费月份、资源名称、资源标识、云类型、资源原始费用、资源所属应用、应用分摊比例、应用分摊费用;
17.读取并分析处理所述应用费用数据,并对外提供接口功能;
18.通过对外接口输出可视化图形界面和/或账单类报表。
19.进一步的,从与本方法归属于同一微服务架构下的其他三方应用获取应用、公有云和私有云资源相关信息;
20.使用公有云平台自子账户下云产品的使用信息和私有云资源管理应用中的申请审批信息来计算共享型资源在不同应用下的分摊比例。
21.进一步的,所述从不同公有云平台中不同类型不同格式的账单原始数据中获取公有云资源的原始计费数据,包括:
22.利用每个公有云平台中所具有账单权限的云帐号,基于应用程序接口方式访问公有云获取到公有云资源的原始计费数据;
23.对所述原始计费数据进行计费数据预处理,整理成四元组,包括:计费月份、公有云平台名称、资源标识、资源费用。
24.进一步的,将私有云资源产品名称和公有云产品名称进行统一或对标,方便后续费用计算;
25.使用资产成本、维护、安装和折旧率计算方法,来制定私有云平台基础设施硬件资产的花费,所述私有云平台基础设施硬件资产包括服务器、网络设备和机房;
26.制定私有云资源计费单位,选定常用的cpu核数、内存大小、硬盘大小、网络流量作为计费单位,将私有云平台基础设施硬件的月花费映射为私有云平台资源的花费;
27.计算私有云平台资源的原始计费数据,同样预处理成四元组:计费月份、平台名称、资源标识、资源费用,其中的平台名称字段的值固定为私有云平台。
28.进一步的,使用资产成本、维护、安装和折旧率计算方法,来制定私有云平台基础设施硬件资产的花费,包括:
[0029][0030]
其中c为资产成本,m为维护费用,i为安装费用,γ为折旧率,t为折旧年限,a、b、c分别为资产成本、维护费用、安装费用的调整因子。
[0031]
进一步的,将所述数据统一整理成应用费用模型的形式并储存至数据库的表中,所述数据使用应用程序进行读取、分析和处理,结果以接口的形式对用户或者其他应用提供;
[0032]
所述计费管理方法还包括,关联应用费用中的应用信息和应用负责人/部门信息,进一步计算出内部人员的资源使用成本、内部部门的资源花费情况;
[0033]
所述计费管理方法还包括,根据企业内部需求制定不同的计费周期。
[0034]
进一步的,有了数据接口后,增加了图形化前端进行可视化的展示。
[0035]
本发明第二方面公开的微服务架构下混合云的计费管理系统,使用微服务框架定义的应用进一步地拆分成粒度更小的应用。
[0036]
本发明的有益效果如下:
[0037]
本发明通过整理应用的资源使用情况,整合并统一混合云环境中不同云的计费数据,有效提升微服务架构下混合云资源的费用查询效率。
附图说明
[0038]
图1本发明的计费管理方法流程图;
[0039]
图2本发明的微服务架构下混合云计费管理应用模块结构图。
具体实施方式
[0040]
下面结合附图对本发明作进一步的说明,但不以任何方式对本发明加以限制,基于本发明教导所作的任何变换或替换,均属于本发明的保护范围。
[0041]
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
[0042]
申请人发现:随着微服务架构的广泛应用,原来单体架构的应用逐渐被重构并拆分成管理粒度单元更小的微服务应用,所属管理粒度单元包括但不限于应用的代码、应用构建、应用的部署环境;同时容器(一种虚拟化技术)的发展进一步推动应用的微服务化。
[0043]
应用部署在混合云环境中时,其中一个明显的特点是应用使用到的资源种类明显增多;一方面是因为云技术的发展推动了云产品的多样化,另一方面是针对的不同场景,用户/应用负责人愿意使用更契合的云产品提高应用的运行效率。
[0044]
上述变化带来了应用提升的同时,也给企业的最终资源计费提出了难题:
[0045]
大多数企业在选择公有云服务时会同时选择多个公有云供应商共同提供服务,目前各个公有云厂商相互独立,无法实现统一整合的费用统计。同时企业私有云也是不可缺少的资源;不同云所使用的计费模型并不太一样,对于混合云环境下统一的费用管理就提出了挑战。
[0046]
如图1所示,本发明提供了一种微服务架构下的混合云资源计费管理方法的流程图,包含101-106共6个流程步骤,其中101-103这3个流程节点可同时进行,也可按101、102、103的顺序来执行,对所述实施的最终结果没有影响。
[0047]
步骤101:整理混合云资源列表,规范资源命名和标识后,将应用下的资源规范列出,并标志独占型和共享型,共享型资源必须计算分摊比例。
[0048]
所述混合云资源列表,在本实施方案中可从公有云平台使用的产品中和私有云在用资源中,整理得到。更进一步地,类型会随着应用的使用情况增加或减少。
[0049]
在这里,公有云平台通常指第三方提供商为用户提供的能够使用的云平台,可通过互联网公网访问并使用。比如,公有云平台可以包括:阿里云、腾讯云、华为企业云、百度
云、京东云、金山云、aws、微软azure、青云、ucloud,等等。
[0050]
本实施方案中,步骤101中原始数据来源为三方应用,所述三方应用为和本应用在同一微服务架构下的其他应用。包括:
[0051]
微服务的应用列表有应用管理应用提供,所述应用可实时准确的获取到在线应用列表。
[0052]
应用在用的私有云资源,由私有云资源管理应用提供,所述应用负责私有云资源的申请、审批、资源生命周期管理。
[0053]
类似地,应用在用的公有云资源是由公有云资源管理应用提供。
[0054]
实施方案中,应用和资源的原始关系数据在本应用汇总后,本应用主要负责计算分摊比例。
[0055]
示例性地,私有云资源申请mysql(一种关系型数据库)和redis(一种内存型数据库),私有云资源管理应用要求使用者填写使用的应用及应用使用占比,使用者会预估使用量填写比例;如果使用者无法预估且没有填写应用使用占比,本发明自动按应用数量进行平均分摊。
[0056]
示例性地,公有云的对象存储(一种云存储资源)的使用,应用需要使用不同的公有云子账户,从公有云的子账户账单数据中可以获取到对应应用的使用量,计算出使用量的占比即得到了该资源的分摊比例。
[0057]
步骤102,从不同的公有云平台使用具有相应权限的账户获取计费原始数据。
[0058]
示例性地,在本实施方案中,阿里云公有云平台主账户以及子账户有114个,本实施方案使用其中一个被授予可以查看全部账户账单权限子账户进行费用获取。
[0059]
示例性地,在阿里云公有云平台中,该平台提供了多种账单类型,包括但不限于交易类型账单、实例类型账单、结算账单、分账账单、月账单和详细账单;本实施方案中,出于从资源角度的考虑,选择使用阿里云共有云平台的实例账单。
[0060]
目前公有云账单的获取方式主要为远程api(一种接口)调用和账单文件下载,本实施方案中主要采用了账户access id和access key的签名认证方式,调用公有云平台的远程账单api来获取账单。
[0061]
示例性地,京东云公有平台的账单api只有2个,一个账单总览和一个账单明细,该情况下,本实施方案会调用2个api。
[0062]
步骤103,需要确定私有云的计费标准,计算出私有云资源的月费用,用于混合云总费用的计算。
[0063]
本实施方案中,所述计费管理方法原理上是从应用使用的资源角度进行的计费管理。所以,在步骤101中的资源整理时,已将私有云资源整合到规范的所有资源中,其中,主要的适配方式为私有云适配公有云资源名称。例如,私有云管理应用中提供的vm(一种虚拟机)资源,在资源规范整理时会被映射为弹性服务器ecs(一种公有云虚拟机)。
[0064]
名称统一后,还需统一计费方案。私有云的计费特点是云由企业私建,相关设备或设施的花费大多在设备购置和安装时已经产生,设备购置部分的费用属于先付费,后使用。
[0065]
本实施例中,借鉴了财务部门计算资产的方案,参考私有云设备的购买、安装、维护和折旧率等参数,计算出机房服务器(一种物理主机)、路由器(一种网络设备)、交换机(一种网络设备)等基础设施的月花费。
[0066]
在一些实施例中,使用资产成本、维护、安装和折旧率计算方法,来制定私有云平台基础设施硬件资产的花费,包括:
[0067][0068]
其中c为资产成本,m为维护费用,i为安装费用,γ为折旧率,t为折旧年限,a、b、c分别为资产成本、维护费用、安装费用的调整因子。
[0069]
在所述基础设施月花费的基础上,制定私有云资源计费单位,选定常用的cpu核数、内存大小(单位g)、硬盘大小(单位g)、网络流量(单位m)作为计费单位,将基础设施月花费映射为计量单位费用,从而可以用于私有云资源费用计算。
[0070]
示例性地,本实施例计算1核cpu的月费用为1.4元,1g内存的月费用为12元,1g硬盘月费用为0.25元,那么一台1核1g内存40g硬盘的vm(一种虚拟机)私有云资源的费用为1.4+12+0.25*100=38.4元,流量费用另外计算。
[0071]
本实施方案中私有云资源的计费方式,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
[0072]
申请人发现,不同企业的私有云会和各自企业的财务管理和组织管理有关,不同企业的设备和维护方式也不一定相同,需根据企业内部需要制定合适的私有云计费标准。
[0073]
步骤104,将上述步骤中得到的结果进行汇总处理,统一成应用费用模型的形式,并存储到本应用对应的数据库的表中。
[0074]
本实施方案中,需要统一的数据源均来自本应用内部,来自前述步骤的数据格式和内容可以预先定义;所述实施方案中采用的设计为将许多需要统一的数据格式和数据形式在前述步骤中已经进行了预处理,所述预处理为本步骤的数据统一屏蔽了很多差异化的数据处理过程。
[0075]
应用资源及其分摊比例,在步骤101后统一按资源的维度输出为若干个四元组,包括:资源名称、资源标识、所属应用、应用分摊比例;独占型资源只有一条四元组数据,共享型资源则会有大于一条的数据。
[0076]
来自不同公有云平台的账单,在步骤102获取到不同公有云平台的账单后,在步骤102中统一处理输出成公有云资源费用四元组,包括:计费月份、公有云平台名称、资源标识、资源费用。
[0077]
私有云计费数据和公有云数据输出格式保持一致,方便后续统一计算。
[0078]
步骤104汇总所述所有数据后,首先进行数据整理,使用资源标识关联应用中的资源和账单,然后按应用和应用比例进行分摊费用的计算,计算出的结果可以存入本应用数据库的账单表中。
[0079]
步骤105和步骤106属于关联性步骤,步骤105属于本应用的后端,提供的后端能力包括但不限于:直接读取应用账单表中的数据,同时可以转化为不同形式的格式,例如json(一种数据格式)和xml(一种数据格式),以满足不同用户的格式需求。
[0080]
同时步骤105采用java(一种高级编程语言)编写的应用后端,更进一步地,本应用可以编写代码分析应用账单数据。
[0081]
例如,从应用管理中获取到应用的负责人及其所在部门,可以在本步骤中将账单关联到公司部门架构上;在所述数据基础上,可以计算各个层级的部门月度/年度总花费,
同级部门总花费占比,指定月份花费对比。
[0082]
本实施方案中,步骤105的分析能力仍在不断扩展中,目前分析能力包括但不限于:公有云平台运维人员账单核对,私有云资源出账和成本核算,应用负责人资源成本管理,资源月账单报表,资源费用明细导出。
[0083]
步骤106是步骤105的一个扩展,在步骤105的后端分析能力下,增加前端显示界面,为用户实时展示数据、图表,能提供给用户更加直观的体验。
[0084]
本发明的有益效果如下:
[0085]
本发明通过整理应用的资源使用情况,整合并统一混合云环境中不同云的计费数据,有效提升微服务架构下混合云资源的费用查询效率。
[0086]
本文所使用的词语“优选的”意指用作实例、示例或例证。本文描述为“优选的”任意方面或设计不必被解释为比其他方面或设计更有利。相反,词语“优选的”的使用旨在以具体方式提出概念。如本技术中所使用的术语“或”旨在意指包含的“或”而非排除的“或”。即,除非另外指定或从上下文中清楚,“x使用a或b”意指自然包括排列的任意一个。即,如果x使用a;x使用b;或x使用a和b二者,则“x使用a或b”在前述任一示例中得到满足。
[0087]
而且,尽管已经相对于一个或实现方式示出并描述了本公开,但是本领域技术人员基于对本说明书和附图的阅读和理解将会想到等价变型和修改。本公开包括所有这样的修改和变型,并且仅由所附权利要求的范围限制。特别地关于由上述组件(例如元件等)执行的各种功能,用于描述这样的组件的术语旨在对应于执行所述组件的指定功能(例如其在功能上是等价的)的任意组件(除非另外指示),即使在结构上与执行本文所示的本公开的示范性实现方式中的功能的公开结构不等同。此外,尽管本公开的特定特征已经相对于若干实现方式中的仅一个被公开,但是这种特征可以与如可以对给定或特定应用而言是期望和有利的其他实现方式的一个或其他特征组合。而且,就术语“包括”、“具有”、“含有”或其变形被用在具体实施方式或权利要求中而言,这样的术语旨在以与术语“包含”相似的方式包括。
[0088]
本发明实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以多个或多个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。上述提到的存储介质可以是只读存储器,磁盘或光盘等。上述的各装置或系统,可以执行相应方法实施例中的存储方法。
[0089]
综上所述,上述实施例为本发明的一种实施方式,但本发明的实施方式并不受所述实施例的限制,其他的任何背离本发明的精神实质与原理下所做的改变、修饰、代替、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
技术特征:1.一种微服务架构下混合云的计费管理方法,其特征在于,包括以下步骤:统一整理并规范在用混合云资源名称和标识;整理微服务下应用的在用资源,并区分应用的独占型资源和共享型资源,针对共享型资源,计算出资源在不同应用下的分摊比例;从不同公有云平台中不同类型不同格式的账单原始数据中获取公有云资源的原始计费数据;制定私有云平台上资源的计费标准,计算出私有云平台资源的计费数据;将所述数据统一整理并处理成应用费用模型的形式并储存至数据库中,所述应用费用模型包括唯一标识、计费月份、资源名称、资源标识、云类型、资源原始费用、资源所属应用、应用分摊比例、应用分摊费用;读取并分析处理所述应用费用数据,并对外提供接口功能;通过对外接口输出可视化图形界面和/或账单类报表。2.根据权利要求1所述的微服务架构下混合云的计费管理方法,其特征在于,从与本方法归属于同一微服务架构下的其他三方应用获取应用、公有云和私有云资源相关信息;使用公有云平台自子账户下云产品的使用信息和私有云资源管理应用中的申请审批信息来计算共享型资源在不同应用下的分摊比例。3.根据权利要求1所述的微服务架构下混合云的计费管理方法,其特征在于,所述从不同公有云平台中不同类型不同格式的账单原始数据中获取公有云资源的原始计费数据,包括:利用每个公有云平台中所具有账单权限的云帐号,基于应用程序接口方式访问公有云获取到公有云资源的原始计费数据;对所述原始计费数据进行计费数据预处理,整理成四元组,包括:计费月份、公有云平台名称、资源标识、资源费用。4.根据权利要求1所述的微服务架构下混合云的计费管理方法,其特征在于,将私有云资源产品名称和公有云产品名称进行统一或对标,方便后续费用计算;使用资产成本、维护、安装和折旧率计算方法,来制定私有云平台基础设施硬件资产的花费,所述私有云平台基础设施硬件资产包括服务器、网络设备和机房;制定私有云资源计费单位,选定常用的cpu核数、内存大小、硬盘大小、网络流量作为计费单位,将私有云平台基础设施硬件的月花费映射为私有云平台资源的花费;计算私有云平台资源的原始计费数据,同样预处理成四元组:计费月份、平台名称、资源标识、资源费用,其中的平台名称字段的值固定为私有云平台。5.根据权利要求4所述的微服务架构下混合云的计费管理方法,其特征在于,使用资产成本、维护、安装和折旧率计算方法,来制定私有云平台基础设施硬件资产的花费,包括:其中c为资产成本,m为维护费用,i为安装费用,γ为折旧率,t为折旧年限,a、b、c分别为资产成本、维护费用、安装费用的调整因子。6.根据权利要求1所述的微服务架构下混合云的计费管理方法,其特征在于,将所述数据统一整理成应用费用模型的形式并储存至数据库的表中,所述数据使用应用程序进行读
取、分析和处理,结果以接口的形式对用户或者其他应用提供;所述计费管理方法还包括,关联应用费用中的应用信息和应用负责人/部门信息,进一步计算出内部人员的资源使用成本、内部部门的资源花费情况;所述计费管理方法还包括,根据企业内部需求制定不同的计费周期。7.根据权利要求1所述的微服务架构下混合云的计费管理方法,其特征在于,有了数据接口后,增加了图形化前端进行可视化的展示。8.一种采用如权利要求1-7任一所述方法的微服务架构下混合云的计费管理系统,其特征在于,使用微服务框架定义的应用进一步地拆分成粒度更小的应用。
技术总结本发明公开了一种微服务架构下混合云的计费管理方法,包括:统一整理并规范在用混合云资源名称和标识;整理微服务下应用的在用资源;从不同公有云平台中不同类型不同格式的账单原始数据中获取公有云资源的原始计费数据;制定私有云平台上资源的计费标准,计算出私有云平台资源的计费数据;将所述数据统一整理并处理成应用费用模型的形式并储存至数据库中;读取并分析处理所述应用费用数据,并对外提供接口功能;通过对外接口输出可视化图形界面和/或账单类报表。本发明通过整理应用的资源使用情况,整合并统一混合云环境中不同云的计费数据,有效提升微服务架构下混合云资源的费用查询效率。用查询效率。用查询效率。
技术研发人员:曾一晶 袁辉华 陈勇
受保护的技术使用者:湖南兴盛优选网络科技有限公司
技术研发日:2022.07.18
技术公布日:2022/11/1