

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

# 常见错误和故障排除
<a name="bestpractice7"></a>

Amazon Batch 中的错误通常发生在应用程序级别，或者是由不符合您的特定作业要求的实例配置引起的。其他问题包括作业卡在 `RUNNABLE` 状态或计算环境陷入 `INVALID` 状态。有关故障排除在 `RUNNABLE` 状态中卡住的作业的更多信息，请参阅 [作业在`RUNNABLE`状态卡住](job_stuck_in_runnable.md)。有关对陷入 `INVALID` 状态的计算环境进行故障排除的信息，请参阅 [`INVALID` 计算环境](invalid_compute_environment.md)。
+ **查看 Amazon EC2 竞价型 vCPU 限额** – 验证您当前的服务限额是否符合作业要求。例如，假设您当前的服务限额为 256 个 vCPU，而作业需要 10,000 个 vCPU。则服务限额不符合作业要求。有关更多信息和疑难解答说明，请参阅 [Amazon EC2 服务限额](https://docs.amazonaws.cn/AWSEC2/latest/UserGuide/ec2-resource-limits.html)和[如何增加 Amazon EC2Resources 的服务限额？](https://www.amazonaws.cn/premiumsupport/knowledge-center/ec2-instance-limit/) 。
+ **作业在应用程序运行之前失败** – 有些作业可能因为 `DockerTimeoutError` 错误或 `CannotPullContainerError` 错误而失败。有关疑难解答信息，请参阅[如何解决 Amazon Batch 中的"DockerTimeoutError"错误？](https://www.amazonaws.cn/premiumsupport/knowledge-center/batch-docker-timeout-error/)。
+ **IP 地址不足** - 您的 VPC 和子网中的 IP 地址数量可能会限制您可以创建的实例数量。使用无类别域间路由，可提供多于运行工作负载所需的 IP 地址。如有必要，您还可以构建具有较大地址空间的专用 VPC。例如，您可以在 `10.x.0.0/16` 中创建一个包含多个 CIDR 的 VPC，并在每个可用区中创建一个子网，CIDR 为 `10.x.y.0/17`。在此示例中，*x* 介于 1-4 之间，*y* 为 0 或 128。此配置在每个子网中提供 36,000 个 IP 地址。  
![\[VPC diagram showing 6 private subnets with different CIDR ranges across 3 可用区.\]](http://docs.amazonaws.cn/batch/latest/userguide/images/batch-best-practices-VPC_larges_scale-1.png)
+ **验证实例是否已在 Amazon EC2 中注册** – 如果您在 Amazon EC2 控制台中看到您的实例，但在 Amazon ECS 集群中看不到 Amazon Elastic Container Service 容器实例，则可能未在亚马逊机器映像（AMI）上安装 Amazon ECS 代理。Amazon ECS 代理、AMI 中的 Amazon EC2 数据或启动模板也可能配置不正确。要找出根本原因，请创建单独的 Amazon EC2 实例或使用 SSH 连接到现有实例。有关更多信息，请参阅 [Amazon ECS 容器代理配置](https://docs.amazonaws.cn/AmazonECS/latest/developerguide/ecs-agent-config.html)、[Amazon ECS 日志文件位置](https://docs.amazonaws.cn/AmazonECS/latest/developerguide/logs.html)和 [计算资源 AMIs](compute_resource_AMIs.md)。
+ **查看 Amazon 控制面板** - 查看 Amazon 控制面板以验证预期的作业状态以及计算环境是否按预期扩展。您也可以查看 CloudWatch 中的作业日志。
+ **验证您的实例是否已创建** - 如果创建了实例，则意味着您的计算环境按预期进行扩展。如果您实例尚未创建，请在计算环境中找到要更改的关联子网。有关更多信息，请参阅[验证自动扩缩组的扩展活动](https://docs.amazonaws.cn/autoscaling/ec2/userguide/as-verify-scaling-activity.html)。

  我们还建议您验证实例是否可以满足相关作业要求。例如，一项作业可能需要 1 TiB 的内存，但计算环境使用的 C5 实例类型限制为 192 GB 内存。
+ **确认您的实例是由 Amazon Batch 请求的** – 查看自动扩缩组历史记录以验证您的实例是否由 Amazon Batch 请求过。这表明了 Amazon EC2 是如何尝试获取实例的。如果您收到错误消息，指出 Amazon EC2 竞价型无法在特定可用区获取实例，这可能是因为该可用区不提供特定的实例系列。
+ **验证实例是否在 Amazon ECS 中注册** – 如果您在 Amazon EC2 控制台中看到实例，但在 Amazon ECS 集群中看不到任何 Amazon ECS 容器实例，则可能未在亚马逊机器映像（AMI）上安装 Amazon ECS 代理。此外，Amazon ECS 代理、AMI 中的 Amazon EC2 数据或启动模板可能配置不正确。要找出根本原因，请创建单独的 Amazon EC2 实例或使用 SSH 连接到现有实例。有关更多信息，请参阅 [CloudWatch 代理配置文件：日志部分](https://docs.amazonaws.cn/AmazonCloudWatch/latest/monitoring/CloudWatch-Agent-Configuration-File-Details.html#CloudWatch-Agent-Configuration-File-Logssection)、[Amazon ECS 日志文件位置](https://docs.amazonaws.cn/AmazonECS/latest/developerguide/logs.html) 和 [计算资源 AMIs](compute_resource_AMIs.md)。
+ **打开支持请求单** – 如果您在进行故障排除后仍遇到问题并且已经制定了支持计划，请打开支持请求单。在支持请求中，请务必包含有关问题、工作负载细节、配置和测试结果的信息。有关更多信息，请参阅[比较 Amazon Web Services 支持 计划](https://www.amazonaws.cn/premiumsupport/plans/)。
+ **查看 Amazon Batch 和 HPC 论坛** – 如需更多信息，请参阅[Amazon Batch](https://repost.aws/tags/TAAQ5TlH16Tc686CgyYUNX0g/aws-batch)和 [HPC](https://repost.aws/tags/TAjBvP4otfT3eX8PswbXo9AQ/high-performance-compute) 论坛。
+ **查看 Amazon Batch 运行时监测控制面板** – 此控制面板使用无服务器架构捕获来自 Amazon ECS 的事件，Amazon Batch，和 Amazon EC2 来提供对作业和实例的见解。有关更多信息，请参阅[Amazon Batch运行时监控面板解决方案](https://github.com/aws-samples/aws-batch-runtime-monitoring)。