创建运行脚本的运行手册 - Amazon Web Services Systems Manager
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

创建运行脚本的运行手册

Automation Runbook 支持将脚本作为自动化的一部分运行。自动化是Amazon Web Services Systems Manager。通过使用 Runbook,您可以直接运行脚本Amazon而无需创建单独的计算环境来运行脚本。由于 Runbook 可以将脚本步骤与其他自动化步骤类型(例如批准)一起运行,因此您可以在紧急或不明确的情况下手动进行干预。

使用运行手册的权限

要使用 Runbook,Systems Manager 必须使用 AWS Identity and Access Management (IAM) 角色的权限。Automation 用于确定使用哪个角色的权限的方法取决于一些因素,以及步骤是否使用 aws:executeScript 操作。

对于不使用aws:executeScript,Automation 使用两种权限来源之一:

  • 在 Runbook 中指定或作为参数传递的 IAM 服务角色或担任角色的权限。

  • 如果没有指定 IAM 服务角色,则为启动自动化的 IAM 用户的权限。

当运行手册中的步骤包含aws:executeScript操作,但是,如果为操作指定的 Python 或 PowerShell 脚本调用任何AmazonAPI 操作。Automation 按以下顺序检查该角色:

  • 在 Runbook 中指定或作为参数传递的 IAM 服务角色或担任角色的权限。

  • 如果找不到任何角色,则 Automation 尝试在没有任何权限的情况下运行为 aws:executeScript 指定的 Python 或 PowerShell 脚本。如果脚本调用AmazonAPI 操作(例如 Amazon EC2CreateImage操作),或者尝试对Amazon资源(例如 EC2 实例),则包含脚本的步骤将失败,Systems Manager 将返回一条错误消息以报告失败。

有关如何使用使用 IAM 服务角色或更高级的委托管理形式的委托管理的 Runbook 的更多信息,请参阅使用 IAM 服务角色运行 Automation

将脚本添加到 Runbook

您可以通过内联方式将脚本作为 Runbook 中的步骤的一部分,从而将其添加到 Runbook 中。您还可以从本地计算机中上传脚本或指定脚本所在的 Amazon Simple Service (Amazon S3) 存储桶,以将脚本附加到 Runbook。在运行脚本的步骤完成后,脚本的输出将作为 JSON 对象提供,您可以将其作为 Runbook 中的后续步骤的输入。

运行簿的脚本限制

Automation 操作aws:executeScript当前支持运行 Python 3.6、Python 3.7 和 PowerShell Core 6.0 脚本。

Runbook 强制执行 5 个文件附加文件的限制。脚本可以采用 Python 脚本 (.py) 或 PowerShell Core 脚本 (.ps1) 的形式,也可以作为 .zip 文件中的内容附加。

在使用 Automation 运行脚本时,将向您的账户收费。使用 aws:executeScript 操作的 Automation 步骤被视为特殊步骤。特殊步骤没有步骤限制,但根据步骤数和脚本执行持续时间向您的账户收费。有关更多信息,请参阅Amazon Web Services Systems Manager 定价页面。

以下主题介绍了如何创建运行脚本的 Runbook。