云计算·大数据 频道

如何解决云资源浪费问题,进一步优化云成本?

  从企业上云之初开始,云服务商就在承诺,可以在几秒钟内实现云的弹性部署,让用户实现规模化经济效益。省钱省力还能快速部署,并且在诸多数字化转型成功案例的光环照耀下,任何CIO或者企业IT高管都不会拒绝云带来的诱惑。

  十多年过去了,很多商业领袖的的确确看到云带来的优势,但却陷入另一个境遇,那就是与不断上升的云成本在做斗争。

  安德森·霍洛维茨曾在2021年的一篇文章中提到一个词,叫做“云悖论”。该文章认为,随着时间的推移,云计算给公司利润率带来的压力可能会超过其带来的好处。

  另外,Azul发布了《2023年Java现状调查报告》,这是一项针对2000多名Java用户的独立研究。研究发现,90%使用Java(用于构建企业应用程序的最主要编程语言)构建应用程序的公司,正在将其应用部署在公共云、私有云或混合云环境中。几乎所有企业(95%)都在上一年(2022-2023年)采取措施,降低云成本。

  当然,每家企业都希望为客户提供无缝体验,因为客户的最终满意度决定了云运营是否成功。但是现实情况是,企业一直在以规模化的速度配置云实例,很少考虑云计算实例的成本问题。

  Gartner表示:“有少量企业,或者说大部分企业根本没有云成本优化计划,他们通常急于进行云技术投资。”“这些企业最终在云服务上超支了70%,没有从中获得预期价值。”

  那么,如何解决云成本不断攀升这一难题呢?现实情况非常具有挑战性!因为,每家公司的情况都不一样,还要看这家公司所处的行业,取决于公司有哪些可用资源以及应用需求是什么。Java现状调查和报告显示,企业已经采用了许多策略来解决云应用中持续飙升的计算成本问题,包括适当调整资源规模(48%),使用高性能Java平台(46%),以便更有效地使用云资源,或者重新构建应用程序(41%)。

  以下是充分利用云资源并且能有效节约云成本的关键步骤:

  在Java现状调查和报告中,参与者选择在云中运行他们的应用程序的主要原因包括:

  对业务不那么关键的应用程序,或者说在这些应用程序中,可伸缩性、灵活性和弹性对业务成功的可能不是那么重要,应用程序所有者可能会在本地运行一些系统,这样他们可以更容易地管理成本。至于,哪些资源应该迁移到云上,这需要业务部门和IT领导者进行合理的IT投资规划,综合评估投资结果。

  多年来,企业一直试图在不改变应用程序或基础设施的情况下减少云计算费用。其实,在重构应用程序或将其新架构定义为云原生架构之前,企业就应该首先探求一些基本的路径。

  在《Java现状调查》中,当被问及去年采取了哪些措施来降低公有云成本时,受访者的回答是:

  通常考虑和实现的其他步骤包括优化现实环境以及保留计算实例和存储类型。总的来说,这些步骤对许多企业来说还不够,云利益相关者还应该寻求其他更多途径。

  由于业务需求而导致的云计算资源供应过剩几乎是普遍现象,因为需要满足SLA,确保客户满意。但是,企业领导者必须要问问自己,满足这些需求是否以一种更有效、更低成本的方式来完成。由于不可预测的工作负载而导致的过度配置意味着云资源浪费。为了控制云计算资源的过度供应,需要提高每个计算实例的CPU利用率水平,但要以可预测且不牺牲SLA的方式提高。

  一般来说,公司会从充分理解现有工作负载的计算利用率水平开始,提升云资源利用率。但他们发现,利用率明显低于预期。了解了这一点,他们就可以设置更高的利用率阈值,以便使用相同的计算能力完成更多的工作,或者用更少的计算实例处理相同的工作负载。预计会出现一些供应过剩的情况,但在Java状态调查中,超过40%的参与者说,他们使用的云资源不到他们支付的云资源的60%。这是一笔很大的浪费!

  公司一直在寻找各种提高应用程序性能的方法,通常通过为其云计算实例使用更快、更高效的cpu来实现,不仅可以提高应用程序性能,还可以减少计算资源量,满足工作负载运行需求。

  用数学公式来表达:更少的云计算资源=更低的云成本。

  例如,Arm平台,如AWS提供的gravon3,越来越受欢迎,因为它们价格诱人,也是因为更节能,并且具有在云中良好运行的灵活性。

  根据Gartner数据显示,“到2025年,基于arm的服务器出货量将占全球(中国除外)基础设施即服务(IaaS)能力的20%左右,以及超大规模服务提供商平台即服务(PaaS)能力的55%。

  由于部署在云中的大多数企业应用程序都是基于Java的,因此使用性能更高的Java运行时还可以提高应用程序性能并减少所需的计算实例。

  同样用一个简单的计算公式来表达,更快的Java =更少的云计算资源=更低的云成本。

  性能更高的Java,在运行时可以在不牺牲SLA的情况下,提高利用率水平,降低应用承载力。另外,还可以通过降低应用程序底层操作系统和硬件的负担来实现,从而提高硬件的利用率,让用户在使用相同资源的情况下完成更多的工作,或者关闭/使用少的实例。同时,性能更高的Java在运行时还带来了其他好处,包括消除延迟异常值、缩短应用程序预热时间以及避免持续的调优工作。

  总之,减少云浪费和优化云成本,对于企业在云中获得竞争优势至关重要。当然,这也是一个复杂的更具挑战性的工作,但是聪明的IT领导者不会放过任何降本增效的机会。

0
相关文章