AWS Systems Manager Change Manager - AWS Systems Manager

AWS Systems Manager Change Manager

Change Manager 是 AWS Systems Manager 的一个功能,这是一个企业更改管理框架,用于请求、批准、实施和报告应用程序配置和基础架构的操作变更。如果您使用 AWS Organizations,可从单个委托管理员账户管理多个 AWS 账户 和整个 AWS 区域中的更改。或者,也可使用本地账户管理单个 AWS 账户 的更改。使用 Change Manager 可管理对 AWS 资源和本地部署资源的变更。要开始使用 Change Manager,请打开 Systems Manager 控制台。在导航窗格中,选择 Change Manager

借助 Change Manager,您可以使用预先批准的更改模板,帮助自动完成对资源的更改过程,并帮助避免在进行操作更改时出现意外结果。每个更改模板指定以下内容:

  • 在创建更改请求时,有一个或多个自动化运行手册可供用户选择。对您的资源进行的更改将在自动化 Runbook 中定义。您可以将自定义运行手册或 AWS 托管运行手册包含在您创建的更改模板中。当用户创建更改请求时,他们可以选择要在该请求中包含哪一个可用的运行手册。此外,您还可以创建更改模板,让提出请求的用户在更改请求中指定任何运行手册。

  • 账户中的用户,必须审核使用该更改模板提出的更改请求。

  • Amazon Simple Notification Service (Amazon SNS) 主题,用于通知指定审批人员,更改请求已准备好进行审核。

  • Amazon CloudWatch 告警,用于监控运行手册工作流。

  • Amazon SNS 主题,用于针对使用更改模板创建的更改请求,发送有关状态变化的通知。

  • 要应用于更改模板的标签,用于对更改模板进行分类和筛选。

  • 是否可以在没有批准步骤的情况下运行从更改模板创建的更改请求(自动批准的请求)。

通过与 Systems Manager 的另一项功能 Change Calendar 集成,Change Manager 还可以帮助您安全地实施更改,同时避免计划与重要业务事件发生冲突。Change Manager 与 AWS Organizations 和 AWS IAM Identity Center 集成,可帮助您使用现有的身份管理系统从单个账户管理整个组织中的更改。您可以从 Change Manager 监控更改进度,并审核整个组织中的操作更改,从而提高可见性、改善问责制。

Change Manager 为您的持续集成 (CI) 实践和持续交付 (CD) 方法补充了安全控制措施。Change Manager 不适用于作为自动发布流程(例如 CI/CD 管道)的组成部分进行的更改,除非存在例外情况,或者需要批准。

Change Manager 的工作原理

在确定需要标准或紧急操作更改时,组织中的某个人员会根据为在您的组织或账户中使用而创建的更改模板之一创建更改请求。

如果请求的更改需要手动批准,Change Manager 将通过 Amazon SNS 通知来通知指定的审批人员,更改请求已准备好供其审核。您可以在更改模板中为更改请求指定审批者,也可以让用户在更改请求本身中指定审批者。您可以将不同的审核人员分配给不同的模板。例如,分配一个用户、用户组或 AWS Identity and Access Management (IAM) 角色,他们必须批准对托管式节点的更改请求;而对数据库更改,则分配另一个用户、组或 IAM 角色。如果更改模板允许自动审批,并且请求者的用户策略不禁止它,则用户还可以选择为其请求运行自动化运行手册,而无需审核步骤(更改冻结事件除外)。

对于每个更改模板,您可以添加最多五个级别的审批人员。例如,您可能要求技术审核人员先批准根据更改模板创建的更改请求,然后需要一个或多个经理的第二级批准。

Change Manager 已与 AWS Systems Manager Change Calendar 集成。当请求的更改获得批准后,系统将首先确定该请求是否与其他已计划的业务活动冲突。如果检测到冲突,Change Manager 可以阻止更改,或在启动运行手册工作流之前要求进行额外批准。例如,您可能只允许在工作时间进行更改,以确保团队可以管理任何意外问题。对于请求在上述时间以外运行的任何更改,您可以要求更高级别的管理人员以更改冻结审批人员的形式批准。对于紧急更改,Change Manager 可以跳过检查 Change Calendar 是否存在冲突或在批准更改请求后阻止事件的步骤。

当需要实施已批准的更改时,Change Manager 将运行在关联的更改请求中指定的自动化运行手册。在运行手册工作流运行时,只允许在已批准的更改请求中定义的操作。这种方法有助于您避免在实施更改时出现意外结果。

除了限制在运行手册工作流运行时可以进行的更改之外,Change Manager 还可以帮助您控制并发和错误阈值。您可以选择运行手册工作流一次可在多少个资源上运行,更改一次可在多少个账户中运行,以及在停止流程和(如果运行手册包含回滚脚本)回滚之前允许多少次故障。您还可以使用 CloudWatch 告警监控正在进行的更改的进度。

运行手册工作流完成后,您可以查看有关所做更改的详细信息。这些详细信息包括更改请求的原因、使用的更改模板、请求和批准更改的人员,以及更改的实施方式。

更多信息

AWS 新闻博客介绍 AWS Systems ManagerChange Manager

我的操作如何从 Change Manager 获益?

Change Manager 具有以下优势:

  • 降低服务中断和停机风险

    Change Manager 可以确保在运行手册工作流运行时,仅实施已批准的更改,从而使操作更改更安全。您可以阻止计划外和未经审核的更改。Change Manager 可以帮助您避免由于人为错误导致的多种类型的意外结果,这些结果需要花费宝贵时间进行研究和回溯。

  • 获取更改历史记录的详细审核和报告

    Change Manager 提供了一种一致的问责制方法,用于报告和审核在整个组织中所做的更改、更改的目的,以及与批准和实施这些更改的人员有关的详细信息。

  • 避免计划冲突或违规

    Change Manager 可以根据您的组织的活动更改日历来检测计划冲突,例如假日事件或新产品上市。您可以允许运行手册工作流仅在工作时间运行,也可以仅在获得额外批准的情况下才允许它们运行。

  • 使更改要求适应不断变化的业务

    在不同的业务期间,您可以实施不同的更改管理要求。例如,在月末报告、纳税季节或其他关键业务期间,您可以阻止更改,或对可能带来不必要的运营风险的更改要求董事级批准。

  • 集中管理多个账户的更改

    通过与 Organizations 集成,Change Manager 使您可以通过单个委托管理员账户管理所有组织单位 (OU) 中的更改。您可以启用 Change Manager,与您的整个组织一起使用,也可以仅与您的部分 OU 一起使用。

谁应该使用 Change Manager?

Change Manager 适用于以下 AWS 客户和组织:

  • 任何希望改善对其云环境或本地环境所做操作更改的安全性和治理性的 AWS 客户。

  • 希望提高多个团队间的协作和可见性,通过避免停机提高应用程序可用性,以及降低与手动和重复性任务相关的风险的组织。

  • 必须遵循更改管理的最佳做法的组织。

  • 对于其应用程序配置和基础设施所做的更改,需要完全可审核的历史记录的客户。

Change Manager 的主要功能是什么?

Change Manager 包含以下主要功能:

  • 对更改管理最佳做法的综合支持

    借助 Change Manager,您可以将所选择的更改管理最佳做法应用于您的操作。您可以选择启用选项:

    • 检查 Change Calendar,以查看事件当前是否受到限制,以便仅在已打开日历期间进行更改。

    • 在获得更改冻结审批人员额外批准的情况下,允许在受限事件期间进行更改。

    • 要求为所有更改模板指定 CloudWatch 告警。

    • 要求在您的账户中创建的所有更改模板经过审核和批准,然后才能使用它们创建更改请求。

  • 针对已关闭日历期间和紧急更改请求的不同批准路径

    您可以允许一个选项来检查受限事件的 Change Calendar,并阻止已批准的更改请求,直到事件完成为止。但是,您也可以指定第二组审批人员,即更改冻结审批人员,即使日历已关闭,他们也可以允许进行更改。您还可以创建紧急更改模板。从紧急更改模板创建的更改请求仍然需要常规批准,但不受日历限制的约束,也不需要更改冻结批准。

  • 控制如何以及何时开始运行手册工作流

    运行手册工作流可以根据计划开始,也可以在批准完成后立即开始(受日历限制规则约束)。

  • 内置通知支持

    指定您的组织中应该审核和批准更改模板及更改请求的人员。将 Amazon SNS 主题分配给更改模板,以便向该主题的订阅者发送与使用该更改模板创建的更改请求的状态变化有关的通知。

  • 与 AWS Systems Manager Change Calendar 集成

    Change Manager 允许管理员限制在指定时间段内的计划更改。例如,您可以创建一个策略,该策略仅允许在工作时间进行更改,以确保团队有时间处理任何问题。您还可以在重要业务活动期间限制更改。例如,零售业务可在大型销售活动期间限制更改。您还可以在受限时段期间内要求获得额外批准。

  • 与 AWS IAM Identity Center 和 Active Directory 支持集成

    借助 IAM Identity Center 集成,您的组织成员可以访问 AWS 账户,并使用 Systems Manager 基于通用用户身份管理其资源。使用 IAM Identity Center,您可以分配对整个 AWS 中账户的用户访问权限。

    通过与 Active Directory 集成,可以指定 Active Directory 账户中的用户担任为 Change Manager 操作创建的更改模板的审批人员。

  • 与 Amazon CloudWatch 告警集成

    Change Manager 与 CloudWatch 告警集成。Change Manager 可在运行手册工作流期间侦听 CloudWatch 告警,并执行为相应告警定义的任何操作,包括发送通知。

  • 与 AWS CloudTrail Lake 集成

    通过在 AWS CloudTrail Lake 中创建事件数据存储,您可以查看有关您的账户或组织中运行的变更请求所做更改的可审批信息。存储的事件信息包括以下详细信息:

    • 运行的 API 操作

    • 这些操作所包含的请求参数

    • 运行该操作的用户

    • 在此过程中更新的资源

  • 与 AWS Organizations 集成

    使用 Organizations 提供的跨账户功能,您可以使用委托管理员账户来管理您的组织内 OU 中的 Change Manager 操作。在您的 Organizations 管理账户中,可以指定哪个账户作为委托管理员账户。您还能够控制可在您的哪些 OU 中使用 Change Manager。

使用 Change Manager 是否需要收取费用?

是的。Change Manager 是按使用量付费的。您仅需按实际用量付费。有关更多信息,请参阅 AWS Systems Manager 定价

Change Manager 的主要组件是什么?

用于管理组织或账户中的更改过程的 Change Manager 组件包括以下内容:

委托管理员账户

如果您在整个组织中使用 Change Manager,则将使用委托管理员账户。此 AWS 账户被指定为管理包括 Change Manager 在内的整个 Systems Manager 中的操作活动的账户。委托管理员账户可以管理整个组织中的更改活动。在将组织设置为使用 Change Manager 时,可以指定您的哪些账户以此角色提供服务。委托管理员账户必须是其分配到的组织单位 (OU) 的唯一成员。如果您仅将 Change Manager 用于单个AWS 账户,则不需要委托管理员账户。

重要

如果您在整个组织中使用 Change Manager,我们建议始终从委托管理员账户进行更改。虽然您可以从组织中的其他账户进行更改,但这些更改不会在委派管理员账户中报告,也无法从该账户查看。

更改模板

更改模板是 Change Manager 中的一个配置设置集合,它定义了所需的批准、可用的运行手册和更改请求的通知选项等内容。

您可以要求您的组织或账户中的用户创建的更改模板经过批准流程,然后才能使用这些模板。

Change Manager 支持两种类型的更改模板。对于基于紧急更改模板,请求的更改可以进行,即使在 Change Calendar。对于基于标准更改模板,则无法进行请求的更改,如果 Change Calendar 除非收到指定的额外批准更改冻结事件审批。

更改请求

更改请求是 Change Manager 中的一个请求,旨在运行更新您的 AWS 或本地环境中一个或多个资源的自动化运行手册。更改请求是使用更改模板创建的。

在创建更改请求时,您的组织或账户中的一个或多个审批人员必须审核和批准该请求。如果没有获得所需的批准,则不允许运行应用您请求的更改的运行手册工作流。

在系统中,更改请求是 AWS Systems Manager OpsCenter 中一种类型的 OpsItem。不过,/aws/changerequest 类型的 OpsItems 不会显示在 OpsCenter 中。作为 OpsItems,更改请求与其他类型的 OpsItems 一样,也受相同强制配额的约束。

此外,要以编程方式创建更改请求,不能调用 CreateOpsItem API 操作,而应使用 StartChangeRequestExecution API 操作。但必须先批准更改请求,而不能立即运行,并且 Change Calendar 中不能有任何阻止性事件阻碍工作流运行。当收到批准并且日历未被阻止(或者已经获得绕过阻止性日历事件的权限)时,StartChangeRequestExecution 操作才能完成。

运行手册工作流

运行手册工作流是对您的云环境或本地环境中的目标资源进行所请求的更改的过程。每个更改请求都将指定一个自动化运行手册,用于进行所请求的更改。在获得所有所需的批准后,并且 Change Calendar 中不存在阻止性事件的情况下,运行手册工作流才能发生。如果已为特定日期和时间安排更改,即便已经获得所有批准并且日历未被阻止,运行手册工作流也将在到达计划时间后才会开始。