AMS 资源调度器快速入门 - AMS 高级应用程序开发者指南

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

AMS 资源调度器快速入门

使用此快速入门指南实现 AMS 资源调度器,这是一种基于标签的实例调度程序,可在 AMS Advanced 中节省成本。

AMS 资源计划程序基于 AWS 实例计划程序

AMS 资源调度器术语

在开始之前,最好先熟悉 AMS 资源调度器术语:

  • 周期:每个计划必须至少包含一个时间段,用于定义实例应运行的时间。一个时间表可以包含多个时段。当计划中使用多个时段时,当至少有一个周期规则为真时,资源调度器会应用相应的开始操作。

  • timezon e:有关将在稍后引用的DefaultTimezone参数中使用的可接受时区值列表,请参阅 TZ 数据库时区列表的 TZ 列。

  • hibernat e:设置为 true 时,启用休眠功能并满足休眠要求的 EC2 实例将被休眠 ()。suspend-to-disk检查 EC2 控制台以了解您的实例是否已启用休眠功能。对于运行亚马逊 Linux 的已停止亚马逊 EC2 实例,请使用休眠模式。 

  • 制:如果设置为 true,则根据定义的计划,如果资源在运行期之外手动启动,则资源调度器会停止该资源;如果资源在运行期间手动停止,则资源调度器会启动该资源。

  • r@@ etain_run ning:设置为 true 时,如果实例是在周期开始之前手动启动的,则防止资源调度器在运行周期结束时停止该实例。例如,如果配置的时间段为上午 9 点至下午 5 点的实例在上午 9 点之前手动启动,则资源调度器不会在下午 5 点停止该实例。

  • ssm-maintenance-window:将 AWS Systems Manager 维护时段作为运行周期添加到计划中。当您指定与您部署的堆栈位于同一账户和 AWS 区域中的维护时段名称来调度 Amazon EC2 实例时,如果没有其他运行周期指定该实例应运行,并且维护事件已完成,则资源调度器将在维护时段开始之前启动实例,并在维护时段结束时停止实例。

    资源调度器使用您在初始配置期间指定的 AWS Lambda 频率来确定在维护时段之前多久可以启动您的实例。如果将频率 AWS CloudFormation 参数设置为 10 分钟或更短,则资源计划程序会在维护时段前 10 分钟启动实例。如果您将频率设置为大于 10 分钟,则资源计划程序启动实例的时间与您指定的频率相同。例如,如果您将 Systems Manager 的维护时段频率设置为 30 分钟,则资源调度器会在维护时段前 30 分钟启动实例。

    有关更多信息,请参阅AWS Systems Manager 维护窗口

  • o@@ verride-stat us:暂时覆盖资源调度器配置的计划启动和停止操作。如果将该字段设置为 r unn ing,则资源调度器将启动但不会停止适用的实例。实例会一直运行,直到您手动将其停止。如果您将覆盖状态设置为已停止,则资源调度器会停止但不会启动适用的实例。除非您手动启动实例,否则该实例才会运行。

AMS 资源调度器实现

要部署 AMS 资源调度程序解决方案,请按照以下步骤操作。

  1. 提交部署 | AMS 资源调度器 | 解决方案 | 部署 (ct-0ywnhc8e 5k9z5) RFC 并提供以下参数:

    • SchedulingActive“是” 表示启用资源调度,“” 表示禁用。默认值为

    • ScheduledServices:输入以逗号分隔的服务列表,以便为其安排资源。有效值包括自动缩放ec2 和 rds 的组合默认为自动缩放、ec2、rds。

    • TagName:将资源计划架构与服务资源关联的标签密钥的名称。默认为 “计划”。

      注意

      您的资源调度器部署将仅对带有此标签的资源进行操作。

    • DefaultTimezone:将用作默认时区的时区名称,格式为 US/Pacific。默认为 UTC

  2. 在收到第一步中的 RFC 成功执行的确认后,您可以提交 Perio d | Add 变更类型。

  3. 最后,提交 RFC,为在第二步中创建的时间段添加时间表。使用 “时间表” | “添加更改类型”。

AMS 资源调度程序的实现和使用 FAQs

有关 AMS 资源调度程序的常见问题。

:如果我启用了休眠但 EC2 实例不支持休眠会怎样?

:休眠会将实例内存 (RAM) 中的内容保存到您的亚马逊 Elastic Block Store (Amazon EBS) 根卷中。如果将此字段设置为 true,则当资源调度器停止实例时,实例将处于休眠状态。

如果您将 Resource Scheduler 设置为使用休眠,但您的实例未启用休眠功能,或者它们不符合休眠先决条件,则资源调度器会记录警告,并且实例将在不进入休眠状态的情况下停止。有关更多信息,请参阅休眠您的实例。

:如果我同时设置了 o verride_status 和强制执行会发生什么?

:如果您将 o verride_stat us 设置为正在运行并将强制设置为 true(防止在运行期之外手动启动实例),则资源调度器会停止该实例。

如果您将 o verride_stat us 设置为已停止,并将强制设置为 true(防止实例在运行期间被手动停止),则资源调度器会重新启动该实例。

注意

如果强制执行false,则应用配置的覆盖行为。

:部署 AMS 资源调度器后,如何在我的账户中禁用或启用资源调度器?

:要禁用或启用 AMS 资源调度器,请执行以下操作:

  • 用:使用 “状态” | “禁用” 创建 RFC。请务必将设置为 “SchedulerState用”

  • 用:使用 “状态” | “启用” 创建 RFC。请务必将设置为 “SchedulerState用”

问:如果 AMS 资源调度程序期限在我的修补维护窗口内,会发生什么?

:资源调度器根据其配置的计划运行。如果将其配置为在进行修补时停止实例,则它将停止该实例,除非在修补开始之前将修补窗口添加为计划中的一段时间。换句话说,除非配置了指定的时段,否则资源调度器不会自动启动任何已停止的实例进行修补。为避免与修补维护时段发生冲突,请将分配给修补的时间窗口作为周期添加到资源调度器计划中。要向现有计划添加周期,请使用周期 | 添加创建 RFC。

问:如果我需要为不同的 EC2 实例设置不同的计划,我能否在我的账户中设置多个计划?

:是的,您可以创建多个计划。根据要求,每个时间表可以有多个时段。在账户中启用 AMS 资源调度器后,将配置标签密钥。例如,如果标签键为 “计划”,则标签值可能会因与 AMS 资源调度器的计划名称相对应的不同计划而有所不同。要添加新计划,您可以使用管理 | AMS 资源调度器 | 计划 | 添加 (ct-2bxelbn765ive) 更改类型创建 RFC,请参阅计划 | 添加。

:在哪里可以找到 AMS 资源调度器支持的所有不同更改类型?

:AMS 有资源调度器更改类型,用于将 AMS 资源调度器部署到您的账户;启用或禁用它;定义、添加、更新和删除要与之配合使用的计划和时段;以及描述(获取详细描述)计划和时段。