云成本优化是一种策略或一组策略,用于减少云支出并在消耗云资源时实现成本效益。这对您的云采用计划的成功至关重要,因为云成本会对您组织的底线产生巨大影响。在这篇文章中,我们将介绍四大云成本优化最佳实践,并讨论如何将它们应用到您的云环境中。
资源清理
云环境的主要优势之一是添加资源的便捷性和速度。问题是我们经常忘记在使用它们后删除/删除/终止这些资源。例如,经常看到 IT 人员启动一个 Amazon Elastic Compute Cloud (EC2) 实例,然后让它继续运行,即使它已经过时了。
有时,即使您确实终止了计算实例,您也可能忘记删除附加到它的任何存储卷。在您终止资源之前,您始终需要为此付费。
另一个导致超支的稍微类似的做法是让活跃但严重未充分利用的资源继续运行。使用不到 5% 的 CPU 或 100 GB 卷但仅保存 1 GB 数据的计算实例仍将花费等量的 CPU 或存储卷。
例如,如果您周围有数百个这样未充分利用的实例,您最终可能会每月浪费数十万美元来购买您实际上并未使用的资源。实际的做法是将这些整合到更少的实例中,以最大限度地利用资源,同时降低成本。这同样适用于存储和其他资源。
规模调整分析
确定您是否在资源上超支的一种方法是进行规模调整分析。它涉及比较使用情况和容量,以查看资源是否未充分利用并因此需要调整。一旦您确定某个资源确实未被充分利用,您就可以减少其容量以使其更接近实际使用情况。此过程称为调整大小。
您不必手动执行此操作。有一些工具可以帮助您,不仅可以查看您是否正在运行未充分利用的资源,还可以推荐合适的大小。例如,假设您正在使用 m4.xlarge(4 个 vCPU,16 GB)——在撰写本文时,它是一种 Amazon EC2 实例大小,对于美国东部的 Linux 操作系统,其按需每小时费率为 0.20 美元(俄亥俄州)地区。
然后,您可以运行一个工具来检查 CPU 和内存利用率等指标,然后推荐正确的实例。假设该工具最终推荐了一个较小的 m4.large (2 vCPU, 8 GB) 实例,目前对于相同的操作系统和区域,该实例的价格为每小时 0.10 美元。对于一个实例,这已经节省了 50%。
您可用于在 Amazon Web Services (AWS) 中正确调整大小的一些工具包括 Compute Optimizer、Cost Explorer 和 Trusted Advisor。在 Azure 中,您可以使用 Azure 顾问。也有第三方解决方案。
监控
您可以实施主动措施,例如监控以发现需求高峰和低谷。这将帮助您确定可以关闭某些资源的特定时间甚至几天。例如,如果您看到从晚上 9 点到早上 6 点的计算需求为零,您可以在这 9 小时内关闭您的实例。这已经是您总成本的 37.5%。
监控还将帮助您确定哪些特定服务构成了您的云支出的大部分。在这些地方,您可以开始寻找需要调整的区域,因为您所做的任何更改都会对成本产生重大影响。
监控还可以帮助您确定固定成本、可预测工作负载的基准,并确定可变成本工作负载。您可以将长期、可预测的工作负载分配给有权享受大折扣的预留实例,并将可变成本工作负载分配给按需实例,从而为您提供灵活的定价。这个想法是将您的工作负载与正确的定价模型相匹配,以获得云成本优化。
最后,监控可以帮助您快速发现异常值或使用异常,如果不加以检查,将导致过度收费。
自动化云成本优化
如果仅仅依靠手动方法,云成本优化是无法有效进行的。考虑到您的云基础设施有多么庞大和多样化,很难准确地确定成本的来源、分析和理解使用模式、检查实例和其他资源是否未充分利用和过度配置、实施更改等等。
进行云成本优化的最佳方法是利用每一个机会自动化。这不仅可以节省您的时间和金钱,还可以确保严格执行政策。例如,假设在监控您的云之后,您决定创建一个策略,要求用户在离开办公室之前关闭云资源。
如果您简单地使用自动关闭特定资源的调度程序(您的云提供商应该为此提供本机工具),那么您将更有可能实现 100% 执行此策略,而不是依赖用户自己关闭资源在指定的时间。
另一个有助于优化成本的自动化工具是自动缩放。该工具可根据需要动态增加和减少容量,从而防止过度配置,进而减少浪费。虽然非常有影响力,但自动缩放是一项高级功能,需要重新架构和重新设计您的应用程序,因此您需要专家指导才能使其正确。请联系您的云提供商寻求帮助。