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

创建运行脚本的运行手册(控制台)

创建运行脚本的运行手册

以下过程介绍了如何在 Amazon Systems Manager 控制台中使用文档生成器创建运行您提供的脚本的自定义运行手册。

  1. 访问 https://console.aws.amazon.com/systems-manager/,打开 Amazon Systems Manager 控制台。

  2. 在导航窗格中,选择 文档

    -或者-

    如果首先打开 Amazon Systems Manager 主页,选择菜单图标 ( ) 以打开导航窗格,然后在导航窗格中选择文档

  3. 选择创建自动化

  4. 对于名称,为运行手册输入一个描述性名称。

  5. 对于文档描述,请提供运行手册的 markdown 样式描述。您可以提供使用运行手册的说明、编号的步骤或描述运行手册的任何其他类型的信息。请参阅默认文本以了解设置内容格式的信息。

    提示

    隐藏预览显示预览之间切换,以便在编写时查看描述内容的效果。

  6. (可选)对于担任角色,请输入代表您执行操作的服务角色的 Amazon Resource Name (ARN)。如果未指定角色,则自动化使用调用自动化的用户的访问权限。

    重要

    对于不归 Amazon 所有并使用 aws:executeScript 操作的运行手册,必须指定一个角色。有关信息,请参阅 使用运行手册的权限

  7. (可选)对于输出,请输入执行自动化的任何输出以供其他进程使用。

    例如,如果文档创建新的 AMI,您可以指定 ["CreateImage.ImageId"],然后使用该输出在后续自动化中创建新的实例。

  8. (可选)展开输入参数部分,然后执行以下操作。

    1. 对于参数名称,请输入要创建的运行手册参数的描述性名称。

    2. 对于类型,请选择参数的类型,例如 StringStringList

    3. 对于必需,请执行以下操作之一。

      • 如果必须在运行时提供该运行手册参数的值,请选择

      • 如果该参数不是必需的,请选择,然后(可选)在默认值中输入默认参数值。

    4. 对于描述,请输入运行手册参数的描述。

    注意

    要添加更多运行手册参数,请选择添加参数。要删除运行手册参数,请选择 X(删除)按钮。

  9. (可选)展开目标类型部分,然后选择一种目标类型以定义运行手册可以在其中运行的资源的类型。例如,要在 EC2 实例上运行一个运行手册,请选择 /AWS::EC2::Instance

    注意

    如果指定“/”值,则可以在所有类型的资源上运行此运行手册。有关有效资源类型列表,请参阅Amazon CloudFormation 用户指南 中的 Amazon 资源类型参考

  10. 步骤 1 部分中,提供以下信息。

    • 对于步骤名称,请输入自动化的第一步的描述性名称。

    • 对于操作类型,请选择运行脚本 (aws:executeScript)。

    • 对于描述,请输入自动化步骤的描述。您可以使用 Markdown 设置文本格式。

  11. 展开输入部分,然后提供以下信息。

    • 对于运行时,请选择要添加的脚本类型。自动化支持 Python 3.6、Python 3.7 和 PowerShell Core 6.0。

    • 对于处理程序,请输入脚本中的函数名称。(对于 PowerShell 不是必需的。)

      重要

      您必须确保在处理程序中定义的函数具有两个参数:eventscontext。例如,如果脚本以下列内容开头,则应输入 launch_instance

      def launch_instance(events, context): import boto3 ec2 = boto3.client('ec2') [...truncated...]
    • 对于脚本,请选择一种为运行手册提供脚本的方法。

      • 要将脚本嵌入运行手册中,请在文本框区域中输入脚本代码。

        –或者–

      • 对于附件,请选择存储在我的计算机上上传 S3 文件 URL

        如果选择存储在我的计算机上:对于 Amazon S3 URL,请输入要在您的账户中存储上传附件的 S3 存储桶位置,然后选择上传以浏览到并选择该文件。

        如果选择上传 S3 文件 URL,请提供以下信息:

        • S3 文件 URL:输入在您的账户中存储该文件的 S3 存储桶位置。

        • 文件名:输入该文件的名称。

        • 文件校验和:使用 sha256 算法输入文件的校验和。

          提示

          可以使用 Linux 中的 shasum 等工具通过 sha256 计算文件的校验和。例如:“shasum -a 256 /path/to/file”。在 Windows 中,您可以使用 Get-FileHash PowerShell cmdlet 获取相同的信息。ETag 或 md5 校验和不适用于此值。

  12. (可选)展开其他输入,然后执行以下操作。

    • 适用于输入名称,选择 InputPayload。- YAML 格式的函数输入。

    • 对于输入值,请使用 YAML 格式输入脚本输入。

  13. (可选)展开 Outputs(输出),然后输入从此步骤中创建的任何输出的 Name(名称)、Selector(选择器)和 Type(类型)。可以在运行手册的后续步骤中使用步骤输出。以下是几个说明示例。

    Name: myInstance | Selector: $.InstanceInformationList[0].InstanceId | Type: String

    Name: platform | Selector: $.Reservations[0].Instances[0].Platform | Type: String

    Name: message | Selector: $.Payload.message | Type: String

    有关输出的更多信息,请参阅使用输入和输出

    提示

    要添加更多输出,请选择添加输出

  14. (可选)展开通用属性部分,然后指定所有自动化操作的通用操作属性。例如,对于超时秒数,您可以提供一个值以指定步骤在停止之前可以运行多长时间(以秒为单位)。

    有关更多信息,请参阅 所有操作共享的属性

    注意

    要添加更多步骤,请选择添加步骤,然后重复创建步骤的过程。要删除步骤,请选择删除步骤

  15. 选择创建文档以保存运行手册。