计算巢简介
计算巢服务是阿里云开放给企业应用服务商与其客户的服务管理PaaS平台。服务商能够在计算巢上发布私有部署服务(资源部署在用户侧),为其客户提供云上软件一键部署的能力;同时也支持全托管模式的服务(资源部署在服务商侧),赋能服务商托管其客户资源。
服务商在计算巢创建服务(可理解为云资源、软件编排后的集合)并发布上线后,用户便可通过此服务创建服务实例(基于计算巢服务创建的服务实体)以获取具体服务内容,即商家创建服务,用户通过商家发布的服务创建服务实例。
当服务商在计算巢发布服务后,需要到云市场完成售卖配置,才可以真正实现售卖。目前,云市场支持按次付费、按周期付费(包年包月)和按量付费,服务商可以依据自己应用的特点选择任意一种或多种计费方式售卖。本文着重介绍按周期计费与按量计费。
按周期付费/包年包月
本案例采用MemVerge服务,本节仅介绍如何在计算巢发布按周期付费商品与许可证方案,包括许可证配置、云市场上架、绑定商品信息、校验许可证等流程,不涉及MemVerage具体配置及模版等内容。
背景简介
MemVerge是以存储量作为付费指标之一的服务,如160G标准版收费112元/月,480GB标准版收费336元/月,480GB高级版收费1680元/月(具体收费规则见:Memory Machine大内存软件(计算巢部署)),对于MemVerge应用/软件(后文统称为软件),其无法感知用户在计算巢购买的是何种规格的商品(即购买的容量与版本类型)与用户购买商品是否到期,需要计算巢提供相关内容,以便软件校验,以上问题正是计算巢许可证解决的核心问题。
在实际操作中,服务商可预先在许可证设置里依据不同模板/套餐定义不同许可证元数据内容,当服务商调用内部接口(CheckoutLicense)校验许可证时,计算巢将依据不同服务实例,返回服务商预先定义好的元数据内容,这样,服务商软件便可知道当前用户购买的是何种规格的商品,同时,校验许可证也会返回具体的过期时间,服务商软件也可依据此信息完成后续逻辑。
值得一提的是,计算巢许可证不走公网,即使离线状态下仍然可以完成校验,防止部分恶意用户通过断网等方式绕过许可证校验,出现盗版、破解版等情况。此外,计算巢许可证也加入了数字签名功能,防止请求被恶意篡改造成的损失。
计算巢服务配置流程
套餐简介:在创建计算巢服务过程中,如果模板中配置的参数较多,会提高用户的选配难度,并且可能无法选择最优的参数配置组合。为此计算巢提供了套餐设置,服务商可以选择将一部分参数作为套餐参数,并对其设置默认值。此外,套餐数量需与云市场商品规格数量一一对应。
MemVerage一共有10个商品规格,对应的也配置了10个套餐。
-
配置许可证信息
详细参考文档 许可证配置。
打开许可证设置开关将配置许可证相关内容。许可证默认天数用于自定义许可证,本节内容为云市场许可证,当服务上架云市场后,许可证天数由云市场管理,此项失效。
点击 新增元数据 可设置元数据内容,需要选择对应模板、套餐等内容,并填入对应的元数据内容。自定义元数据内容将会在校验许可证接口(CheckoutLicense)根据服务实例对应的模板/套餐返回。
许可证元数据设置完成
云市场商品配置流程
-
发布云市场商品
详细参考文档 将服务上架到云市场。
在服务商控制台-商品管理-发布商品,依据选项填入对应内容,在商品销售信息页面,选择按订购周期,选择新增规格添加商品规格并设置具体价格。
点击下一步,完成后续内容填写,并提交审核。
-
等待类目审核完成
当状态变更为预上架状态(下图),服务商可至计算巢绑定云市场商品规格,具体可见 将服务上架至云市场。
绑定商品规格,意为绑定云市场商品与计算巢模板/套餐的对应关系,在云市场购买对应规格时可转跳对应模板/套餐,并且也方便许可证元数据能正确返回对应规格数据。
-
完成后续审核,上线售卖
许可证校验方法
本节内容参考 计算巢接入许可证使用说明。
计算巢提供了内部接口 checkoutLicense 用于校验许可证是否过期以及返回许可证元数据,具体返回格式示例如下:
{
"code":200,
"requestId":"4ea52d12-8e28-440b-b454-938d0518xxxx",
"instanceId":"i-0jl1ej1czubkimg6xxxx",
"result":{
"RequestId":"CF54B4C9-E54C-1405-9A37-A0FE3D60xxxx",
"ServiceInstanceId":"si-85a343279cf341c2xxxx",
"LicenseMetadata":"{\"TemplateName\":\"模板一\",\"SpecificationName\":\"160GB标准版订阅\",\"CustomData\":\"{\"Capacity\":\"171798691840\",\"Type\":\"standard\"}\"}",
"Token":"21292abff855ab5c2a03809e0e4xxxx",
"ExpireTime":"2022-12-10T08:03:16Z"
}
}
Result为计算巢返回内容,ExpiredTime为服务实例应用的过期时间,LicenseMetadata为许可证元数据,Token为消息MD5加密之后的结果,用于防止篡改,具体加密算法参见文档:计算巢校验数字签名说明。服务商通过读取此内容,可获取用户购买的规格及相关信息,进而限制用户的行为(如MemVerge示例,总存储量不可以超过160GB,提供标准版对应的服务)。
购买页展示
按量付费
背景介绍
按量付费模式不存在许可证相关内容。按周期付费属于预付费,许可证的本质是限制用户行为,而按量付费属于后付费,不涉及限制用户行为,用户依据其具体使用量付费。目前,云市场支持9种资源量,分别为:Frequency、Period、Storage、NetworkOut、NetworkIn、Character、DailyActiveUser、PeriodMin、VirtualCpu,关于计量维度的详细信息,请参见PushMeteringData。
按量付费服务的数据上报方式分为服务商主动上报和计算巢自动上报两种,其中Period、PeriodMin、VirtualCpu、Storage四个维度的数据支持计算巢上报或者服务商主动上报两种方式,其他计量维度的数据当前仅支持服务商主动上报方式。
除了可以修改上报源,计算巢还支持针对多套餐多维度计量计费。以存储量与使用时长两个计量维度举例,若计算巢定义了标准版、高配版两个套餐,计算巢支持标准版存储量(1元/MB)与使用时长(3元/小时)计费,高配版存储量(3元/MB)与使用时长(5元/小时)计费。本节介绍修改上报源、上报数据、多维度计量配置等内容。
计算巢服务配置流程
云市场商品配置流程
-
发布云市场商品
在服务商控制台-商品管理-发布商品,依据选项填入对应内容,在商品销售信息页面,选择按量售卖,点击新增计费项,选择对应计费项及输入对应价格。
点击下一步,完成后续内容填写,并提交审核。
-
等待审核完成
当状态变更为预上架状态(下图),服务商可至计算巢绑定商品信息。
背景知识:每次上报计量数据还需要填入计量项ID,计量项ID与具体费用一一对应,如计量维度A 1元/分钟ID为xxx-1,计量维度A为2元/分钟ID为xxx-2,上报数据时,需要传入计量项A、计量项ID与具体用量,因此上报方需要记录具体计量项ID以便上报。
绑定商品信息,意为绑定云市场的多计量维度与计算巢模板/套餐的对应关系,若开启此能力,服务商上报数据时,计算巢会根据服务实例所对应套餐添加不同计量项ID,如服务商上报计量维度A与具体用量,计算巢发现其为套餐一的服务实例,则添加计量ID至上报信息中,此时,服务商无需记录具体应用规格、计量项ID信息,仅需上报数据即可,其余部分均由计算巢完成。
上报数据方法
本节内容参考 计算巢按量付费服务云市场上报数据说明 - 服务商上报数据说明。
计算巢提供了内部接口 pushMeteringData 用于服务商主动上报按量付费的数据,具体返回格式示例如下:
{
"code":200,
"requestId":"4ea52d12-8e28-440b-b454-938d0518xxxx",
"instanceId":"i-0jl1ej1czubkimg6xxxx",
"result":{
"RequestId":"9BA70950-7FAB-1BAA-8BD3-32D3CDFDxxxx",
"PushMeteringDataRequestId":"D2F63CAF-7F60-5AA5-A034-ED15A31Axxxx",
"Success":true,
"Token":"2099c6e9166b825b06bec2ceaf46xxxx"
}
}
Result为计算巢返回内容,RequestID为计算巢返回的requestID,PushMeteringDataRequestId为云市场返回的requestId(本质上计算巢的pushMeteringData也调用了云市场的pushMetering接口,这里返回云市场RequestID便于查错),Success为调用是否成功,Token为消息MD5加密之后的结果,用于防止篡改,具体加密算法参见文档:计算巢校验数字签名说明。
修改数据上报源
本节内容参考 计算巢按量付费服务云市场上报数据说明 - 修改上报方式。
对于按量付费计算巢服务,计算巢控制台会出现 编辑按量上报方式 按钮。由于部分资源服务商不希望通过计算巢主动上报,因此计算巢也开放了修改上报方式的功能供服务商选择。
打开后,服务商可以修改上报源,若为计算巢上报,服务商不可主动调用pushMeteringData接口上报数据。
购买页展示
结语
为方便服务商售卖计算巢服务,计算巢提供了丰富的售卖模式及售卖功能,以帮助多种类型服务更好地售卖其产品并简化上架商品的流程。计算巢售卖内容还在不断完善,希望未来能更好的服务服务商,帮助其成功。