主页 topics 自动扩展 什么是自动扩展?
深入了解云成本优化
表示混合云基础架构的插图

发布日期:2023 年 12 月 12 日
撰稿人:Gita Jackson、Michael Goodwin

什么是自动扩展?

自动扩展(有时也称为“自动伸缩”)是一种云计算功能,可根据系统需求自动分配计算资源。

使用自动扩展功能可确保应用程序拥有保持一致可用性并实现性能目标所需的资源,还能促进云资源的高效利用,最大限度地降低云成本。根据 Infosys 2023 年的白皮书,迁移到云的组织浪费了大约 32% 的云成本。1 由于自动扩展注重资源的高效利用,因此成为了成功的 FinOps 实践中非常实用的组成部分。

组织在配置云基础架构时,会根据计算、存储和网络资源需求的“基线”配置资源。但是,需求会随着网络流量或应用程序使用量的激增或下降而波动。自动扩展功能可以根据 CPU 占用率或可用带宽等特定指标来扩展资源(无需人工干预),以满足实时需求。

自动扩展可根据组织的自动扩展策略,通过各种方式优化资源分配,如预测性扩展(使用历史数据预测未来需求)或动态扩展(实时响应资源需求)。自动扩展策略可自动执行云计算实例的生命周期,根据需要启动和停止虚拟机,协助解决资源需求。自动扩展通常与弹性负载均衡一起使用,以便充分利用可用的云资源。

体验交互式 IBM Turbonomic 演示

使用可自动化云成本优化工具控制云支出,同时保持应用程序性能。

相关内容

订阅 IBM 时事通讯

负载均衡与自动扩展

虽然自动扩展与负载均衡相关,但两者并不完全相同。这两个过程都会影响后端资源的分配,都可用于优化性能以及避免过度配置,并且经常结合使用。

负载均衡器将传入流量分配给多台服务器,以减少任何特定服务器上的负载。负载均衡器通常会提供运行状况检查等功能,帮助将流量从运行状况不良的实例引导到运行状况良好的实例。均衡流量负载有助于提高云环境中应用程序的性能。

相比之下,自动扩展会根据需求调整系统容量,从而保持一致的性能并避免过度配置资源(即仅使用所需的资源)。自动扩展可根据资源需求和组织制定的自动扩展策略新增(或终止)服务器或计算实例。

自动扩展的工作原理

大多数云供应商,如 IBM® Cloud、Amazon Web Services(有时称为 AWS Cloud)、Microsoft Azure 和 Oracle Cloud Infrastructure,都在自己的云平台上提供了自动扩展服务。这些服务可以帮助组织配置自动扩展策略,以满足组织的云计算需求和目标。

不同供应商和平台的功能和定价不同,组织可以使用的资源和用例有所差异,但自动扩展的工作原理通常如下:

该过程的第一步为启动配置或基线部署,基线部署是指部署一种(或多种)具有特定容量和性能功能的实例。这一步通常通过 API 调用和基础架构即代码 (IaC) 来完成,IaC 是利用代码根据预定义规范提供和配置 IT 基础架构元素的过程。

组织将根据实例的预期工作负载确定期望容量以及实例需要的属性类型。在设置自动扩展策略时,组织可以设置计算、存储或网络资源用量的目标和阈值,一旦达到这些目标和阈值,就会自动触发指定操作,从而更精确地满足当前资源需求。如果需要,可以将策略配置为每次启动扩展操作时发送通知。

自动扩展组

组织还可以建立实例组,为指定的工作负载维护最小或最大数量的实例,还可以将不同实例类型组合在一起,以便处理不同类型的工作负载。实例类型包括:2

通用型实例

通用型实例专为各种工作负载而设计,包括 Web 服务器、小型数据库以及开发和测试环境。

计算优化型实例

这类实例针对计算密集型工作负载(例如高性能计算、批处理和科学建模)进行了优化,使用 GPU 和高核数 CPU 最大限度提高了计算能力。

内存优化型实例

这类高内存实例针对内存密集型工作负载进行了优化,例如高性能数据库、分布式内存缓存和实时数据处理/大数据分析。

存储优化型实例

这类实例针对大数据、数据仓库和日志处理等存储密集型工作负载进行了优化,利用大容量缓存和固态硬盘 (SSD) 来支持工作负载的高强度读写活动。


利用具有混合实例类型的自动扩展组,CloudOps 和 DevOps 团队能够更加精确高效地满足资源需求。例如,如果带宽需求得到了适当满足,但 CPU 利用率已超过自动扩展策略中设置的阈值,则可以启动针对计算的实例,而专用于处理网络流量的实例将保持原样。

一旦团队了解了工作负载需求,他们甚至可以为新实例创建启动配置模板。这些模板可定义实例类型、配置参数和其他用于启动新实例的策略,以及这些策略如何对整个云环境做出贡献。这样组织就能完全自动执行虚拟机的生命周期。

自动扩展的类型

有几种不同类型的扩展以及不同自动扩展方法:

水平扩展

水平扩展也称为“横向扩展”,需要向云计算环境添加更多机器或节点。还可以进行缩减,减少环境中的节点数。

垂直扩展

垂直扩展也称为“纵向扩展”,是指增加当前云计算环境中现有节点的处理能力(例如 RAM、CPU、存储)的过程。

自动扩展可采用预测性、动态或计划性扩展策略。

预测性扩展

预测性扩展策略是利用人工智能 (AI) 和机器学习并根据历史利用率来预测未来的资源需求。

例如,通过预测性自动扩展策略,电子商务公司可以在假日购物季来临前确定网络流量增加的可能性,并根据设定的策略进行横向或纵向扩展。这有助于主动减少网络延迟和停机时间。

动态扩展

动态扩展策略是指在出现资源需求时做出反应,根据实时利用率调整资源分配。通过动态扩展策略,组织可以向特定节点或自动扩展组发送更多资源,或者在达到特定阈值(例如 CPU 使用百分比)时启动更多实例。

例如,如果组织运行的 Web 应用程序会不定期消耗大量资源,则可以使用动态扩展策略来根据需要调整资源可用性。动态扩展通常伴随着冷却期,在此期间,如果出现额外的流量高峰,仍然可以增加可用资源。

计划性扩展

计划性自动扩展策略根据预定计划来分配资源。例如,如果组织知道晚上的流量或资源需求比早上高得多,则可以设置自动扩展策略来满足该需求。

自动扩展的优点

只要实施得当,自动扩展就能在优化组织的云计算环境和降低总体云成本方面发挥重要作用。

通过建立稳健的自动扩展策略,组织可以降低对手动配置的依赖,确保系统具有更一致的性能。

最大限度减少基础架构的手动配置

自动扩展支持云环境实时响应资源需求,无需人工干预。这比手动扩展效率更高。自动扩展有助于减轻员工倦怠,提高配置和供应的一致性,让员工能够腾出时间来完成更有价值的任务。

提高可扩展性

自动扩展让组织能够更无缝地扩展其云计算环境和功能,无需专门安排额外人员来监控和配置资源。

提供一致的性能

自动扩展可确保云环境拥有所需的计算、网络和存储资源,无论活动或需求如何,都有助于云服务保持一致、可靠的性能。

改善用户体验

Web 应用程序和网络性能的一致性更高,则用户服务水平更加一致。

降低云计算成本

依靠手动资源配置时,组织通常会将过度配置作为预防措施,只是为了确保在需求高峰时有可用资源。如果使用可以自动扩展计算、网络和存储资源以满足实时需求的平台,组织可以避免过度配置,仅使用需要的资源,从而降低云服务费并提高投资回报率。

相关解决方案
使用 IBM Turbonomic 助力云成本优化

IBM Turbonomic 平台的 AI 自动化和云优化解决方案能够协助您持续确保传统和云原生应用程序性能并优化成本。该平台的云成本管理工具适用于公共云、私有云、多云和混合云环境以及所有主要云供应商。

深入了解如何使用 IBM Turbonomic 助力云成本优化 免费试用 Turbonomic

IBM Turbonomic

可以利用 IBM Turbonomic 混合云成本优化平台,持续实时地自动执行关键操作,从而主动为堆栈每一层的应用程序提供最有效的计算、存储和网络资源。

探索 IBM Turbonomic 试用交互式演示
资源 Carhartt:一家传奇品牌打破假日销售记录

了解 Carhartt 如何使用 IBM Turbonomic 混合云成本优化软件来帮助其混合云基础设施应对急剧增长的新需求。

选择云优化解决方案的最佳实践

阅读这份独家 PeerPaper 报告,了解基于行业专家洞察的最佳实践以及经过验证的 IBM Turbonomic 用户评论。

更先进的智能运维

将 AI 驱动的自动化应用到您的企业中,帮助确保应用程序性能。

实施 FinOps 自动化

阅读这份快速指南,探索快速发展的 FinOps 云财务管理。

IBM Turbonomic 概述

了解应用资源管理如何通过 AI 驱动的自动化,将可观测性转化为操作。

IBM Turbonomic 文档

探索 IBM Turbonomic 平台所有版本的文档。

采取后续步骤

借助 IBM Turbonomic,可通过经济高效的方式无缝、持续运行应用程序,帮助实现高效的应用程序性能,同时降低成本。

探索 Turbonomic 预订免费演示
脚注

Cloud cost optimization”(ibm.com 外部链接),Sarika Nandwani,Infosys.com,2023

AWS EC2 instance types: Challenges and best practices for hosting your application in AWS”,Christopher Graham,2023 年 8 月 23 日