概览
AWS 上的实例调度器可自动启动和停止各种 AWS 服务,包括 Amazon Elastic Compute Cloud(Amazon EC2)、Amazon EC2 自动扩缩组和 Amazon Relational Database Service(Amazon RDS)实例。自动化此过程有助于根据需要停止和启动资源,从而降低运营成本。此 AWS 解决方案根据您定义的时间表,使用资源标签和 AWS Lambda 自动停止和启动实例,并且可以在多个 AWS 区域进行部署。
与让所有实例以充分的利用率持续运行的设置(即使这些资源没有被使用)相比,此解决方案可以通过将您的工作负载与 AWS Well-Architected 成本优化最佳实践保持一致来显著节省成本。
优势
此解决方案包含的模板可用于创建在二级账户中启动和停止实例所需的 AWS Identity and Access Management (IAM) 角色。
此解决方案可自动向其启动和停止的所有实例添加标记。此解决方案还包含宏,允许您向标签添加变量信息。
此解决方案包含的命令行界面 (CLI) 可提供用于配置计划和期限的命令。通过 CLI,客户可以估计指定计划的成本节约金额。
对于 EC2 实例,此解决方案可使用在该实例的相同 AWS 区域中定义的 Systems Manager 维护时段,并针对维护时段开启和停止实例。
技术详情
您可以使用实施指南和随附的 AWS CloudFormation 模板自动部署该架构,也可以使用以下资源开始:
第 1 步
此 AWS 解决方案部署具有可配置调度间隔的 Amazon EventBridge 规则。此调度间隔定义解决方案运行,并采取措施来调度实例的频率。
第 2 步
每个调度间隔都会调用 AWS Lambda 编排函数。这将确定需要调度的 AWS 账户、区域和服务清单。然后,编排工具将并行调用多个调度请求 Lambda 函数来执行调度活动。
第 3 步
计划和周期的集合存储在 Amazon DynamoDB 配置表中,以控制此解决方案的调度行为。您可以在此表中配置任意数量的时间表或周期,解决方案将相应地调度实例。
第 4 步
每个调度请求都会检查其特定目标(账户、区域、服务)中的资源,以使用解决方案配置表中定义的计划来查找已标记为调度的资源。然后,调度请求处理程序会检查配置的计划并执行所需的调度操作。
第 5 步
如果启用了自动扩缩组(ASG)调度,AWS 上的实例调度器会部署每小时 EventBridge 规则和相关资源来管理标记的 Amazon EC2 Auto Scaling 组的计划扩缩操作。
第 6 步
除了每小时扫描外,该解决方案还会跟踪配置表中计划的更新。更新计划时,将调用辅助编排 Lambda 函数,以便 ASG 计划的扩展操作与最新的计划配置保持同步。
第 7 步
该解决方案提供了多种在解决方案配置表中创建或更新计划的方法,并提供了几种示例计划作为起点。配置方法包括:DynamoDB 控制台、调度器命令行界面(CLI)和 AWS CloudFormation 自定义资源。
第 8 步
如果启用了 AWS Orgs 模式并在部署解决方案时提供了有效的组织 ID,则 AWS 上的实例调度器会自动向解决方案中心堆栈注册新部署的分支堆栈。中心和分支堆栈必须部署在同一区域以及属于同一 AWS Organization 的成员账户中。
相关内容
借助 AWS Systems Manager 的“快速设置”功能,您可以配置资源调度器以自动启动和停止跨 AWS 账户和区域的 EC2 实例。资源调度器提供了一个简单的用户界面(UI)。
要了解有关资源调度器的更多信息,请查看实施指南中的相关资源。
在 AWS 上构建现代化、可扩展的应用程序,实现组织转型,同时通过 AWS 成本优化来优化成本。AWS 提供多种定价选项,您可以按照特定工作负载需求来灵活设计购买计划。
该存储库包含动手实验室格式的文档和代码,可帮助您使用 Well-Architected 最佳实践来学习、衡量和构建成本优化的工作负载。
您可以在此处了解更多信息。
本指南可帮助您设置云财务管理(CFM) 功能,以管理和优化云服务费用。该功能包括近乎实时的可见性以及成本和使用情况分析,旨在支持支出仪表板、优化、支出限制、退款以及异常检测和响应等主题的决策。