View a markdown version of this page

开始使用 Amazon Batch 以及使用向导的 Amazon ECS 托管实例 - Amazon Batch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)。

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

开始使用 Amazon Batch 以及使用向导的 Amazon ECS 托管实例

亚马逊 ECS 托管实例提供完全托管的 Amazon EC2 容量,与 Fargate 相比具有更高的计算灵活性,包括 GPU 实例、裸机和任意 vCPU/memory组合。Amazon ECS 代表您处理实例配置、扩展和终止。有关更多信息,请参阅 Amazon ECS 托管实例计算环境。

概述

本教程演示如何使用向导 Amazon Batch 进行设置以配置 Amazon ECS 托管实例并运行Hello World。

目标受众

如果您设置、测试或部署 Amazon Batch 工作负载,则本教程适合您。

使用的功能

本教程向您展示如何使用 Amazon Batch 控制台向导来:

  • 创建和配置 Amazon ECS 托管实例计算环境

  • 创建作业队列

  • 创建任务定义

  • 创建并提交要运行的作业

  • 在中查看作业的输出 CloudWatch

所需时间

完成本教程大约需要 10—15 分钟。

区域限制

使用此解决方案没有任何国家/地区或区域限制。

资源使用成本

创建 Amazon 账户不收取任何费用。但是,通过实施此解决方案,您可能会产生下表中列出的部分或全部费用。

说明 费用(美元)
定价基于亚马逊 ECS 托管实例启动的亚马逊 EC2 实例类型。对于预置的实例,您需要按标准 Amazon EC2 On-Demand 或现货定价向您收费。 有关定价的更多信息,请参阅 Amazon EC2 定价。

先决条件

开始前的准备工作:

  • Amazon Web Services 账户 如果你没有,请创建一个。

  • 创建 Amazon ECS 基础设施角色——一个具有信任策略的 IAM 角色ecs.amazonaws.com。有关更多信息,请参阅《亚马逊弹性容器服务开发人员指南》中的 A mazon ECS 基础设施 IAM 角色。

  • 创建一个 Amazon EC2 实例配置文件,该配置文件使用托AmazonECSInstanceRolePolicyForManagedInstances管策略和的信任策略ec2.amazonaws.com。

  • 您的 IAM 委托人必须具有基础设施角色的iam:PassRole权限,条件为iam:PassedToService: ecs.amazonaws.com。

  • 一个 VPC,其子网具有出站互联网访问权限(公有 IP 分配或 NAT 网关)。

  • 创建 Amazon ECS 任务执行角色——具有AmazonECSTaskExecutionRolePolicy托管策略和信任策略的 IAM 角色ecs-tasks.amazonaws.com。此角色允许亚马逊 ECS 代理代表您 Amazon 拨打电话,例如从 Amazon ECR 提取容器镜像。有关更多信息,请参阅《Amazon Elastic Container Service 开发人员指南》中的 Amazon ECS 任务执行 IAM 角色。

第 1 步:创建计算环境

重要

本教程包含的步骤均使用默认设置,以助您尽可能简单快速地入门。在创建用于生产用途之前,我们建议您熟悉所有设置。使用符合您要求的设置进行部署。

要为 Amazon ECS 托管实例创建计算环境,请执行以下操作:

  1. 打开 Amazon Batch 控制台首次运行向导。

  2. 对于配置任务和编排类型,选择 ECS 托管实例。

  3. 选择下一步。

  4. 在名称的计算环境配置部分,为您的计算环境指定唯一名称。名称长度不超过 128 个字符。可以包含大小写字母、数字、连字符(-)和下划线(_)。

  5. 对于基础设施角色,选择您在先决条件中创建的 Amazon ECS 基础设施角色。

  6. 对于实例配置文件,选择您在先决条件中创建的 Amazon EC2 实例配置文件。

  7. 对于最大 vCPU,输入计算环境可以扩展到的最大 vCPU 数量。默认值为 256。

  8. 对于子网,选择 Amazon ECS 启动托管实例的一个或多个子网。子网必须具有出站互联网访问权限(公有 IP 分配或 NAT 网关)。

  9. 对于安全组,选择一个或多个与托管实例关联的安全组。

  10. 注意

    对于所有其他配置选项,您可以保留默认值。

    选择下一步。

第 2 步:创建作业队列

作业队列会存储您提交的作业,直到 Amazon Batch 调度器在计算环境中的资源上运行作业为止。若要创建作业队列:

  1. 在 “名称” 的 “作业队列配置” 部分中,为您的任务队列指定一个唯一的名称。名称长度不超过 128 个字符。可以包含大小写字母、数字、连字符(-)和下划线(_)。

  2. 在优先级中,为作业队列输入 900。

  3. 注意

    对于所有其他配置选项,您可以保留默认值。

    选择下一步。

步骤 3:创建任务定义

创建作业定义:

  1. 在常规配置部分:

    1. 在 “名称” 中,为您的作业定义指定一个唯一的名称。名称长度不超过 128 个字符。可以包含大小写字母、数字、连字符(-)和下划线(_)。

  2. 在容器配置部分:

    1. 对于图像,保留默认public.ecr.aws/amazonlinux/amazonlinux:2023图像或指定自己的容器镜像。

    2. 对于命令,您可以将 hello world 更改为某个自定义消息,也可保留原样。

    3. 对于 vCPU,指定容器的 vCPU 数量。默认为 1。

    4. 对于内存,指定容器的内存量(以 MiB 为单位)。默认值为 2048。

  3. 对于执行角色,选择一个任务执行角色,允许 Amazon ECS 代理代表您 Amazon 拨打电话,例如从 Amazon ECR 提取容器镜像。

  4. 注意

    对于所有其他配置选项,您可以保留默认值。

    选择下一步。

第 4 步:创建作业

要创建作业,请执行以下操作:

  1. 在作业配置部分的名称中,为该作业指定一个唯一的名称。名称长度不超过 128 个字符。可以包含大小写字母、数字、连字符(-)和下划线(_)。

  2. 注意

    对于所有其他配置选项,您可以保留默认值。

    选择下一步。

第 5 步:审核并创建

在查看和创建页面上,检查配置步骤。如果需要进行更改,请选择 Edit(编辑)。完成后,选择创建资源。

第 6 步:查看作业的输出

要查看作业的输出,请执行以下操作:

  1. 在导航窗格中,选择作业。

  2. 在作业队列下拉列表中,选择您为本教程创建的任务队列。

  3. 任务表列出了您的所有任务及其当前状态。在任务的状态为成功后,选择任务名称以查看其详细信息。

  4. 在详细信息窗格中,选择日志流名称。任务 CloudWatch 控制台将打开,并且应该有一个包含消息hello world或您的自定义消息的事件。

注意

首次启动实例时,Amazon ECS 托管实例可能需要几分钟才能预置容量。这是预期的行为——当实例已经可用时,后续任务通常会更快地启动。

第 7 步:清理教程资源

在 Amazon EC2 实例运行期间,您需要为其付费。您可以删除资源以停止产生费用。

要删除您创建的资源,请执行以下操作:

  1. 在导航窗格中,选择作业队列。

  2. 在作业队列表中,选择您为本教程创建的作业队列。

  3. 选择禁用。在 “任务队列状态” 变为 “禁用” 后,您可以选择删除。

  4. 删除任务队列后,在导航窗格中选择计算环境。

  5. 选择您为本教程创建的计算环境,然后选择禁用。计算环境可能需要 1—2 分钟才能完全禁用。

  6. 计算环境的 “状态” 变为 “禁用” 后,选择删除。删除计算环境可能需要 1—2 分钟。

其他资源

完成本教程后,您可以探索以下主题: