AutoScaling 成本计量功能

简介: 弹性伸缩为用户带来弹性计算能力的同时,也为用户带来了弹性成本的优势。如何准确快速的计量弹性伸缩场景下的成本对用户的生产方式具有重要的指导意义。本文将详细阐述弹性伸缩是如何为用户进行成本计量。

弹性伸缩为用户带来弹性计算能力的同时,也为用户带来了弹性成本的优势。如何准确快速的计量弹性伸缩场景下的成本对用户的生产方式具有重要的指导意义。本文将详细阐述弹性伸缩是如何为用户进行成本计量。

成本计量的范围

弹性伸缩以伸缩组作为基本单元对用户的多个实例进行统一管理。一个伸缩组中的实例按照其加入的方式可以分为以下两种:

  1. 伸缩组负责创建的实例
  2. 用户手动加入的实例

由于用户手动加入的实例,其生命周期不由弹性伸缩进行管理,因此弹性伸缩进行成本计量时不包含手动添加进伸缩组的实例。

成本计量的方式

伸缩组完全的掌握组中每一个实例生命周期的开始时间和结束时间,因此伸缩组中的实例的生命周期是可计量的。对伸缩组中各实例的生命周期进行聚合,能够得到伸缩组中各时刻的使用量信息。实例的生命周期的开始和结束是随机的,不便于统计处理,将实例的生命周期按小时进行离散聚合,得到伸缩组历史时刻中每个小时的使用量情况。该情况准确的反映了伸缩组的使用量变化情况,而使用量,则是成本最直接的一个指标,一段时间内的使用量综合便是该伸缩组这段时间内的总体使用量。

弹性伸缩组使用量数据包含以下信息:
1.实例规格;
2.实例付费方式,表明实例为按量实例或竞价实例;
3.实例网络类型,经典网络或者VPC网络;

  1. 当前小时内实例总数;
  2. 当前小时内使用量总和

从使用量包含的数据我们可以知道,每一个使用量数据点表明了某一种特定类型(由规格,付费方式,网络类型确定)的实例在当前小时工作实例个数和累计使用量(精确到分钟)。

image

成本核算方式

弹性伸缩成本计量的整个过程中,始终关注的是伸缩组中各实例的使用量情况,但是实例价格是可能发生变化的,获取历史上各个时刻的实例价格并不现实,因此,难以根据伸缩组的使用量信息来映射出准确的成本。考虑到实例单价通常变化缓慢,同时,弹性伸缩的成本核算的主要目的是对比各配置情况下成本的相对情况,因此选择使用当前时刻的实例价格,通过回放使用量的历史数据来得近似准确的成本值。

通过调整使用量数据中各类型实例的付费方式的配比,可以获取到特定付费方式组合下的预估成本,通过与实际付费方案进行对比,进行成本对比。弹性伸缩目前为用户提供了与全部使用按量实例和全部使用包年包月实例的成本对比。

与全部使用按量实例比较

当您的伸缩组配置使用竞价实例或者部分使用竞价实例时,您可以假设历史使用量全部替换为按量付费实例,获取使用竞价实例为您带来的成本变化信息。

实际成本:

image

全部使用按量实例:

image

与全部使用包年包月实例比较

您也可以假设使用包年包月实例来满足历史使用量,对比与使用预付费比较时的成本变化信息。

确定对应的包年包月实例个数

伸缩组中实例使用量是随时间不断变化的,而包年包月实例一旦确定实例个数,其使用量是固定不变的,如何选取合适个数的包年包月实例来满足伸缩组的历史使用量是至关重要的。弹性伸缩要求选取的包年包月个数能够始终满足伸缩组的历史使用量。

image

当以小时作为离散粒度来统计所需包年包月实例个数时,可能出现第一列图的两种情况,可能会导致统计的实例个数过少或过多。导致这一问题的根本原因在于时间粒度过大。对该小时内的使用量进行取极限操作,将时间粒度不断切小,当近似连续时,某一小区块(5分钟)内的使用量数据便反映了该小时所需的峰值实例个数,即所需的包年包月实例个数。所有小时数据的最大值即为该时段内所需包年包月实例的个数。

确定所需包年包月实例个数之后,由于包年包月实例的最小购买周期为周。将根据对比区间的时长确定包年包月的时长购买方案,例如对比33天的数据,则最佳购买方案为:一个月加一周。

限制条件

  1. 成本计量的最小粒度为伸缩组,最大粒度为用户;
  2. 成本计量的统计任务采取T+1的方式,即当天统计前一天的使用量。因此,在当天,能够确保获取到使用量的是前天的使用量数据;
  3. 最多保存60天使用量数据,因此,您最多获取近60天成本趋势的对比;

最佳实践

控制台使用

image

在弹性伸缩控制台的详情页面,您可以查看到您伸缩组当前使用量与全部使用按量实例对比时的成本节省信息。

目录
相关文章
|
存储 Ubuntu 网络协议
如何本地部署Nextcloud结合cpolar搭建专属私有云盘远程访问(内网穿透)
如何本地部署Nextcloud结合cpolar搭建专属私有云盘远程访问(内网穿透)
479 0
如何本地部署Nextcloud结合cpolar搭建专属私有云盘远程访问(内网穿透)
|
安全 算法 编译器
【C++基础语法 枚举】C/C++ 中enum枚举量的介绍:介绍enum枚举量在C/C中的作用和使用方法
【C++基础语法 枚举】C/C++ 中enum枚举量的介绍:介绍enum枚举量在C/C中的作用和使用方法
533 2
|
数据库 Python
从零开始构建你的第一个Flask Web应
从零开始构建你的第一个Flask Web应
358 98
|
运维 算法 安全
异常检测算法及其在安全领域的应用
【6月更文挑战第4天】在数字化时代,数据安全至关重要,异常检测算法扮演着守护者角色。它能自动学习正常行为模式,及时发现网络攻击和欺诈行为。非监督式异常检测算法尤其重要,如基于距离的方法,通过计算数据点间距离识别偏离常规的点。Python的scikit-learn库可实现这一算法。异常检测不仅应用于金融领域的欺诈检测,还广泛用于工业监控、医疗诊断和社交媒体分析,为多领域数据安全提供保障。随着技术进步,异常检测将更智能、高效,成为数据安全的重要防线。
512 2
|
人工智能 自然语言处理 搜索推荐
高性价比| OpenSearch 智能问答版开箱即用 DeepSeek-R1
OpenSearch LLM智能问答版基于DeepSeek-R1一分钟搭建RAG系统。
1872 11
高性价比| OpenSearch 智能问答版开箱即用 DeepSeek-R1
|
存储 Kubernetes NoSQL
在K8S中,etcd是什么类型数据库?
在K8S中,etcd是什么类型数据库?
|
存储 JavaScript 前端开发
前端(十)——深入剖析 Vuex:Vue.js 应用的状态管理神器
前端(十)——深入剖析 Vuex:Vue.js 应用的状态管理神器
697 1
|
数据格式
如何绘制热图?ggplot2入门笔记
如何绘制热图?ggplot2入门笔记
|
存储 Linux Windows
制作Linux系统SD启动卡
【9月更文挑战第2天】这段内容介绍了一种制作 Linux 系统 SD 启动卡的方法,包括准备工作、安装写入软件、插入与识别 SD 卡、使用写入软件、写入后检查及设置启动设备等步骤。需选择高质量 SD 卡和可靠来源的镜像文件,避免误操作导致数据丢失。
576 4
|
Ubuntu Linux API
BPF CO-RE 示例代码解析
BPF CO-RE 示例代码解析
399 2

热门文章

最新文章