本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
跟踪计算任务容量利用率
Amazon Batch 提供了多个 API 操作,您可以一起使用这些操作来跟踪队列中 ECS、EKS 和 Fargate 计算任务的容量利用率。监控工作流程取决于附加到作业队列的调度策略的类型。
对于使用先进先出 (FIFO) 调度策略的作业队列:
-
检查队列总利用率 (
GetJobQueueSnapshot)。 -
按状态列出作业,例如
RUNNABLE和RUNNING(ListJobs)。 -
检查任何给定的工作 (
DescribeJobs)。
对于使用公平共享 (FSS) 调度策略的任务队列:
-
检查队列总利用率 (
GetJobQueueSnapshot)。 -
查看每股利用率 (
GetJobQueueSnapshot)。 -
按状态和共享列出积极提高利用率的作业,例如
RUNNABLE和RUNNING(ListJobs)。 -
检查任何给定的工作 (
DescribeJobs)。
以下各节将详细介绍每个步骤。
有关跟踪服务作业容量利用率的信息,请参阅跟踪服务作业容量利用率。
检查队列利用率
GetJobQueueSnapshot响应中的queueUtilization字段提供从队列调度的任务消耗了多少计算容量的 point-in-time视图。计算作业的容量以 v CPUs 为单位进行测量。
对于使用公平共享调度策略的任务队列,响应还包括每份细分,因此您可以查看容量在共享之间的分布情况。有关更多信息,请参阅 查看每股利用率。
查看容量利用率 (Amazon CLI)
使用get-job-queue-snapshot命令检索作业队列的容量利用率快照。
aws batch get-job-queue-snapshot \ --job-queuemy-job-queue
根据附加到任务队列的调度策略,响应会有所不同。选择您的计划策略类型的选项卡以查看示例响应。
查看每股利用率
对于采用公平共享调度策略的任务队列,来自的queueUtilization响应GetJobQueueSnapshot包括一个fairshareUtilization对象,该对象的topCapacityUtilization数组列出了按消耗量列出排名靠前的活跃份额。
此信息可以帮助您:
-
确定哪些共享消耗的资源最多。
-
验证公平共享计划是否按预期分配资源。
-
检测可能已饱和或未充分利用其配置的股票。
-
确定是否调整计划策略中的份额权重。
有关公平分配计划政策的更多信息,请参阅。公平份额调度策略
按状态和份额列出计算作业
确定总体队列和每共享利用率后,使用 ListJobsAPI 操作查找积极提高利用率的计算作业。您可以按作业状态进行筛选,以查看处于RUNNINGRUNNABLE、或处于其他状态的作业。对于采用公平共享计划策略的队列,您还可以按共享标识符进行筛选,将结果缩小到特定份额。
注意
SHARE_IDENTIFIER过滤器是唯一可以与jobStatus参数组合的过滤器。使用其他过滤器时,该jobStatus参数将被忽略。
列出计算任务 (Amazon CLI)
使用带--job-status参数的 list-job s 命令按状态筛选。
查看队列中正在运行的计算作业:
aws batch list-jobs \ --job-queuemy-job-queue\ --job-status RUNNING
查看等待调度的计算作业:
aws batch list-jobs \ --job-queuemy-job-queue\ --job-status RUNNABLE
对于采用公平共享调度策略的队列,请使用带的--filters参数列SHARE_IDENTIFIER出特定共享的作业。当您确定容量消耗较高的份额并想查看哪些作业负责时,这很有用。
仅列出公平共享队列中共享的RUNNING计算任务:
aws batch list-jobs \ --job-queuemy-job-queue\ --job-status RUNNING \ --filters name=SHARE_IDENTIFIER,values="team-a"
以下是列出正在运行的计算作业的响应示例。
{ "jobSummaryList": [ { "jobArn": "arn:aws:batch:us-east-1:123456789012:job/b5e7d839-9ff9-5d76-9f3b-0b6f9g5c8e4f", "jobId": "b5e7d839-9ff9-5d76-9f3b-0b6f9g5c8e4f", "jobName": "my-data-processing-job", "status": "RUNNING", "shareIdentifier": "team-a", "createdAt": 1700000000000, "startedAt": 1700000120000, "capacityUsage": [ { "capacityUnit": "vCPU", "quantity": 4.0 } ], "container": { "exitCode": null }, "jobDefinition": "arn:aws:batch:us-east-1:123456789012:job-definition/my-job-def:1" } ] }
检查特定的计算作业
确定感兴趣的计算任务后,使用该DescribeJobs操作获取有关该任务的全面信息,包括其当前状态、容器详细信息和资源配置。
查看有关特定计算任务的详细信息:
aws batch describe-jobs \ --jobsb5e7d839-9ff9-5d76-9f3b-0b6f9g5c8e4f
此命令会返回有关此作业的全面信息,包括:
-
作业 ARN 和当前状态
-
容器配置和资源要求(v CPUs 和内存)
-
Job 定义和计算环境详情
-
调度优先级和重试配置
-
详细尝试信息,包括启动和停止时间
-
用于访问容器日志的日志流信息