汇量科技在阿里云上的成本优化实践
企业需求与痛点
如何快速迭代业务的同时保持最优成本
企业爆发式发展的时候,一般不太会关注到成本的影响,都会快速进行业务迭代,而云服务按需使用的特性,天然就像“水、电、气”,很容易造成浪费,同时对于一些产品的使用不当,也很容易造成多花钱。如何在快速迭代业务同时,将成本控制在一个合理的水平,非常考验企业的治理和优化能力,这也是我们一直非常关注的点。
业务高速迭代下,云产品和服务支撑能力能否跟上
当前很多企业都在使用多云,服务和产品不好的云商,很容易变成木桶效应中的那块短板,从而制约业务发展。因此我们在云商的选择上尤为的小心,不断的从成本、稳定性、产品技术能力等多方面考察、对比、测试,期望所选择的云商能长久支撑业务的快速发展。
如何更好的使用每朵云的特性,而非仅仅业务上云
这一点十分考验我们对于云的理解和使用能力。除了云产品和服务的多样,业务本身也有其特性,如何围绕自身业务,使用更好的云,和云商技术人员做更好的配合,帮助我们深度优化业务,能够在成本、稳定性、效率等多方面带来正向收益,显得十分关键。
成本优化措施
竞价实例大规模落地
依托阿里云强大的资源池和平台技术能力, 我们得以大规模使用了spot资源,比如在线广告业务SSP、DSP以及大数据平台等业务线当中的各个内部模块都基于spot资源在运行。通过大规模使用ECS spot实例,每年可节省极大的企业IT成本。我们结合阿里云抢占式实例spot开发了SpotMax,是一套稳定、可靠、高效、成熟的spot实例运行平台。通过不断地线上实践、数据积累和优化,我们对于spot的使用更加得心应手,也不断促进成本优化,可谓一举多得。
节省计划
除了在线伸缩模块,一般固定的机器部分通常会使用包年包月形式购买。我们经过充分的调研和测试,对比成本数据,发现将包年包月转成节省计划购买形式,成本能够得到大幅度缩减。同时节省计划能够无差别的匹配不同地区、不同机型,业务的灵活性也得到了很大的保障。通过SDK拿到节省计划的使用率、覆盖率的监控数据,通过数据变化,进行节省计划的灵活调整,将最大程度的优化总体成本。进一步的,我们基于业务的未来增量,也可以提前制定节省计划的购买计划,提前避免了因按量机器没有被节省计划覆盖而导致的成本上涨。
弹性伸缩
我们在线的非数据库依赖模块,全采用动态伸缩的形式进行资源调控,在高峰期时及时开放资源,低谷期时缩减资源,保障资源利用率始终在一个合理的水平,从而确保了成本的最优化。目前我们在虚机、ACK节点池都采用了围绕K8s实现底层node+pods的动态伸缩,可保障资源的及时扩缩容。
低资源使用率优化
我们对于非弹性伸缩的固定机器资源,通过阿里云提供的资源监控数据,可灵活的定制资源利用率报表,并配置相关预警,从而不断优化资源使用率低的机器,保障资源使用率始终在一个合理的水位上运行。
成本优化效果
在线计算广告平台和大数据平台,总体有72%的spot资源运行,达到成本极致优化的同时,线上稳定性也保持在一个非常高的水平。
通过一些成本优化手段,成本优化率可达80%+。
使用阿里云各种API和服务,我们的总体效率也得到了极大的提升,综合运维操作和管理的日常效率提高了90%+。