本指南介绍如何使用弹性负载均衡(ELB)在异构自动扩缩组之间高效分配流量。当扩展基于 CPU 利用率或 RAM 等指标时,可能会形成热点,较小的实例达到其全部容量,而较大的实例仍未得到充分利用。使用现有的路由算法,ELB 无法按比例将请求路由到具有不同权重或大小的目标。本指南提供了一种平衡的分配方法,该方法考虑了各个目标组的容量。这样,您就可以最大限度地减少热点和超时,提高扩展阈值限制,并降低计算成本和 CO2 排放量。

请注意:[免责声明]

架构图

[架构图描述]

下载架构图 PDF 

Well-Architected 支柱

当您在云中构建系统时,AWS Well-Architected Framework 可以帮助您了解所做决策的利弊。框架的六大支柱使您能够学习设计和操作可靠、安全、高效、经济高效且可持续的系统的架构最佳实践。使用 AWS 管理控制台中免费提供的 AWS Well-Architected Tool,您可以通过回答每个支柱的一组问题,根据这些最佳实践来检查您的工作负载。

上面的架构图是按照 Well-Architected 最佳实践创建的解决方案示例。要做到完全的良好架构,您应该遵循尽可能多的 Well-Architected 最佳实践。

  • EventBridge 按指定的间隔执行 Lambda 函数,以便您可以自动使用自动扩缩组中的异构实例。CloudWatch 监控并记录事件,例如 Amazon EC2 竞价型实例中断,您可以在竞价型实例中断仪表板中进一步配置这些事件。

    阅读卓越运营白皮书 
  • AWS Identity and Access Management(IAM)仅授予 Lambda 修改指定 ELB ARN 和侦听器 ARN 上的侦听器权重所需的权限。通过使用最低权限原则,您可以更好地控制对 AWS 资源的访问。

    阅读安全性白皮书 
  • 本指南是建立在可靠架构上的增强型优化解决方案。它使用 ELB 进行流量分配,以免出现单点故障。ELB 使用同步松耦合来避免将流量引导到过载的 Amazon EC2 实例,从而降低应用程序发生故障的可能性。因此,您可以最大限度地减少停机错误。此外,本指南使用由自动扩缩组支持的多个加权目标组。这额外增加了一层可靠性,因为即使一个自动扩缩组无法获得足够的 Amazon EC2 实例,其他自动扩缩组也可以支持入站流量,帮助您避免应用程序故障。

    阅读可靠性白皮书 
  • 本指南通过平衡使用较大和较小的 Amazon EC2 实例来帮助您避免异构集群中的热点。此外,AWS 最佳实践是在单个自动扩缩组中混合使用各种实例大小和类型,并使用竞价型实例作为多样化策略。但是,这种做法可能会导致利用率不均衡,因此本指南使用具有类似功能的多个自动扩缩组,并调整 ELB 侦听器转发器的权重以最大限度地提高资源利用率。

    阅读性能效率白皮书 
  • 以前,为了避免超时和热点,您可能需要人为地将利用率保持在 40% 以下。现在,通过使用本指南,您可以通过从 ELB 使用动态加权路由分配流量来提高资源利用率。根据您的应用程序和要求,您甚至可以实现 60% 到 70% 的利用率,从而大幅节省 Amazon EC2 成本。此外,与 Amazon EC2 按需定价相比,竞价型实例可提供高达 90% 的折扣。最后,自动扩缩组会根据流量和使用模式纵向扩展和缩减,以优化资源利用率,而且在动态加权路由解决方案中使用多个自动扩缩组可以额外提供一层资源优化,最终实现成本节省。

    阅读成本优化白皮书 
  • 本指南使用自动扩缩组自动横向缩减或终止闲置资源。此外,使用多个具有类似功能的 Amazon EC2 实例的同类自动扩缩组有助于消除热点、提高利用率并减少浪费、电力和冷却。自动扩缩组中的竞价型实例利用率也会直接影响可持续性,因为这些实例消耗的能源资源与按需型实例相同,否则它们将不会被使用。

    阅读可持续性白皮书 

实施资源

示例代码为起点。它经过行业验证,是规范性但不是决定性的,可以帮助您开始。

[内容类型]

[标题]

此[博客文章/电子书/指南/示例代码]演示了如何 [插入简短描述]。

免责声明

示例代码;软件库;命令行工具;概念验证;模板;或其他相关技术(包括由我方人员提供的任何前述项)作为 AWS 内容按照《AWS 客户协议》或您与 AWS 之间的相关书面协议(以适用者为准)向您提供。您不应将这些 AWS 内容用在您的生产账户中,或用于生产或其他关键数据。您负责根据特定质量控制规程和标准测试、保护和优化 AWS 内容,例如示例代码,以使其适合生产级应用。部署 AWS 内容可能会因创建或使用 AWS 可收费资源(例如,运行 Amazon EC2 实例或使用 Amazon S3 存储)而产生 AWS 费用。

本指南中提及第三方服务或组织并不意味着 Amazon 或 AWS 与第三方之间存在认可、赞助或从属关系。AWS 的指导是一个技术起点,您可以在部署架构时自定义与第三方服务的集成。

此页内容对您是否有帮助?