计算巢服务通过获取账单中云资源的具体使用量,作为上报数据值推送至云市场。
使用说明
推送频次:1次/天。
服务类型:私有部署、全托管服务。
适用场景:本上报源适用大部分场景,但实时性较弱。
适用计量项:Unit、Memory、VirtualCpu、NetworkIn、NetworkOut。
原理说明
计算巢创建服务实例时,会将服务实例创建资源打上计算巢系统标签,这些系统标签也会同步打在账单上。
账单系统通过标签筛选,因此可通过标签筛选服务实例对应的所有账单。每条账单中除了费用外,还有云资源的具体使用量。
计算巢通过获取账单中云资源的具体使用量,作为上报数据值推送至云市场。
由于账单出账存在一定延时,因此云市场订单会在服务实例删除后一天关闭订单。
配置映射
服务商在计算巢中,需要配置推送计量项与账单中产品的映射关系,计算巢将读取配置的映射关系到对应账单项中取值,计算后推送至对应计量项。
映射关系表达式
计算巢预定义了如下映射关系表达式,若有特殊需求,欢迎联系计算巢官方增加映射关系表达式。
云市场计量项Unit支持所有的映射。
云市场计量项 | 单位 | 账单Code(BillingItemCode) | 单位 | 产品Code(ProductCode) | 映射关系表达式 |
NetworkOut | Bit | NetworkOut | GB |
| Usage * 1073741824 |
VirtualCpu | 无 | InstanceType | 无 |
| InstanceConfig.CPU * Usage |
VirtualCpu | 无 | cpu | 无 |
| Usage |
Storage | Byte | SystemDisk | GB |
| Usage * 1073741824 |
Storage | Byte | Disk | GB |
| Usage * 1073741824 |
Storage | Byte | Storage | GB |
| Usage * 1073741824 |
Memory | GB | mem | MB |
| Usage / 1024 |
上表中,账单Code、产品Code是与映射关系表达式中的变量,均为分账账单API DescribeSplitItemBill
的返回值,映射关系表达式为账单值与计量项值的映射计算方法。
示例
如下为API DescribeSplitItemBill
截取的部分返回值,本示例计算VirtualCpu的上报结果。
根据映射关系表达式表分析JSON代码可知:
VirtualCpu的映射关系表达式为
InstanceConfig.CPU * Usage
。从返回示例中可获取该参数的值为:2 * 15 = 30 核。
在云市场最终的上报结果为:
[{"InstanceId":"xxxx","StartTime":"xxxx","EndTime":"xxxx","Entities":[{"Key":"VirtualCpu","Value":"30","meteringAssit":"cmapi0006xxxx-VirtualCpu-1"}]}]
{
"Message":"Successful!",
"Data":{
"BillingCycle":"2023-12",
"Items":[
{
"ProductName":"云服务器 ECS",
"InstanceConfig":"I/O 优化实例:I/O 优化实例;操作系统位数:64位;实例规格族:企业级实例 g6;实例规格:2核 8GB;操作系统的类型:Linux;体检服务:是;地域:乌兰察布;可用区:可用区A;CPU:2核;系统盘种类:高效云盘;镜像平台:linux;公网带宽:10240Kbps;虚拟交换机:vsw-0jlueyydpuekou6m1s1nn;网络类型:专有网络;系统盘大小:200GB;实例系列:系列 V;操作系统:centos_7_9_x64_20G_alibase_20231109.vhd;内存:8GBMB;是否是按流量计费:按使用流量;操作系统许可费用:付费;挂载点:/dev/xvdaGB;管家服务:是(管家)",
"ProductCode":"ecs",
"ServicePeriodUnit":"秒",
"ServicePeriod":"54000",
"UsageUnit":"台",
"BillingItemCode":"InstanceType",
"CommodityCode":"ecs",
"Usage":"15.000000"
}
]
},
"Code":"Success",
"Success":true
}