通过查看指标监控和优化作业资源

本文档介绍了如何通过在 Cloud Monitoring 中查看指标来监控批处理作业的资源并尝试优化这些资源。如需详细了解作业运行时所用的资源,请参阅作业资源

对于任何作业,Monitoring 都会提供 CPU 利用率和网络流量等基本指标。但某些指标(如内存和 进程利用率,只有在作业安装 Ops Agent 时才能收集。 作业资源的指标可帮助您评估每个资源的性能和利用率。这些信息有助于您确定后续任何作业迭代的改进方向。例如,您可以移除未使用的资源以帮助优化费用,也可以改进或增加过载资源以帮助提升性能。

准备工作

  1. 如果您以前没有使用过 Batch,请参阅 Batch 使用入门 并通过填写 针对项目和用户的前提条件
  2. 可选:如需为作业收集更多指标,请创建并运行自动安装 Ops Agent 的作业
  3. 如果您的项目尚未启用 Monitoring API,请执行以下操作:

    Enable the API

  4. 如需获得查看可观测性指标所需的权限,请让您的管理员为您授予项目的 Monitoring Metric Viewer (roles/monitoring.metricViewer) IAM 角色。 如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

    您也可以通过自定义角色或其他预定义角色来获取所需的权限。

查看作业资源的指标

观察和监控虚拟机 Compute Engine 文档提供了相关概念信息 虚拟机指标;不过,建议您通过其他方式 Batch 作业的虚拟机指标。具体而言,Compute Engine 文档介绍了如何使用 Google Cloud 控制台中预定义的 Compute Engine 监控信息中心或 Compute Engine 页面查看指标。但重要的是,这些方法不会显示已删除的虚拟机的相关信息。因此,除非您只想在批处理作业运行时查看其指标,否则请勿使用这些方法。

查看运行和已完成的批处理作业的指标 使用 Metrics Explorer 图表。 值得注意的是,除非您将图表保存到自定义信息中心,否则图表是临时的。

如需创建用于查看一个或多个指标的图表,请执行以下操作:

  1. 可选:如果您打算保存图表, 识别或创建自定义信息中心
  2. 为一个或多个指标创建 Metrics Explorer 图表

    如果不设置过滤条件,图表中的每个虚拟机指标都会包含来自此区域中所有虚拟机的数据 自己的项目(可选)如果您想过滤图表,以仅包含所有或特定批处理作业的指标,请添加以下过滤条件:

    group=RESOURCE_GROUP_NAME
    

    RESOURCE_GROUP_NAME 替换为批处理作业的资源组名称。如需了解详情,请参阅 创建资源组以过滤指标 文档。

创建资源组以过滤指标

您可以将资源组用作可自定义的过滤条件 。 要在以下位置为所有或特定 Batch 作业创建资源组 ,请执行以下操作:

  1. 选择要使用的标签 作为成员资格条件,具体选择哪个条件取决于您要添加到 群组:

    • 所有批处理作业:使用预定义的 batch-node 标签,该标签会自动应用于所有批处理作业的所有资源,并且具有 null 值。
    • 特定批处理作业:仅针对特定批处理作业使用应用于资源的标签。

      例如,如果您想根据作业名称的全部或部分内容创建组,请使用带有特定值的预定义 batch-job-id 标签名称。batch-job-id 标签会自动应用于所有批处理作业的所有资源,并使用作业名称进行定义。

      另外,如果您使用自定义标签,则必须将 为批量作业中的所有资源添加标签 。

  2. 确保您的项目中至少有一个作业具有您选择的标签,并且 表示此作业处于 RUNNING 状态。否则,此标签将不会 显示为一个选项。

  3. 创建资源组。 指定成员资格条件时,请执行以下操作:

    1. 类型设置为代码
    2. 标记字段设置为所选标签的名称。然后,根据您希望组包含的标签值设置以下字段。

      例如,如果您希望此组包含所有 Batch 作业,将标记设置为 batch-node,并将运算符设置为存在。 或者,您希望此群组包含批量作业 对于以 test 开头的名称,请将 Tag 设置为 batch-job-id, 将 Operator 设置为 Starts with,并将 Value 设置为 test

后续步骤