本文档介绍了如何创建和运行自动安装 Ops Agent 的作业。安装 Ops Agent,以便在 Cloud Monitoring 中提供有关作业资源性能的其他指标。如需详细了解如何使用作业的资源性能指标,请参阅通过查看指标监控和优化作业资源。
准备工作
- 如果您之前未使用过批处理功能,请参阅开始使用批处理,并完成适用于项目和用户的前提条件,以启用批处理功能。
- 如果您的项目尚未启用 Cloud Monitoring API 和 Cloud Logging API,请执行以下操作:
-
如需获得创建作业所需的权限,请让您的管理员为您授予以下 IAM 角色:
-
如需创建作业,请执行以下操作:
-
项目的 Batch Job Editor (
roles/batch.jobsEditor
) -
作业的服务账号(默认是默认的 Compute Engine 服务账号)上的 Service Account User (
roles/iam.serviceAccountUser
)
-
项目的 Batch Job Editor (
-
如需查看日志,请使用以下角色:
项目的 Logs Viewer (
roles/logging.viewer
)
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
-
如需创建作业,请执行以下操作:
除非您为作业的服务账号使用默认配置,否则请确保该账号具有必要的权限。
如需确保作业的服务账号具有将 Ops Agent 指标写入 Monitoring 所需的权限,请让您的管理员为作业的服务账号授予以下 IAM 角色:
-
项目的 Monitoring Metric Writer (
roles/monitoring.metricWriter
) -
项目的 Logs Writer (
roles/logging.logWriter
)
-
项目的 Monitoring Metric Writer (
- 确保您计划的作业配置符合 Ops Agent 要求。
Ops Agent 要求
如需创建和运行使用 Ops Agent 的作业,您的作业必须符合以下所有要求:
确保作业的虚拟机使用的是Ops Agent 支持的操作系统 (OS)。如需详细了解作业的虚拟机操作系统映像,请参阅作业虚拟机操作系统环境概览。
如果您的作业使用非默认的网络配置或使用 VPC Service Controls,请确保该作业符合 Ops Agent 的访问权限要求。如需了解详情,请参阅 Google Cloud Observability 文档中的没有远程软件包访问权限的虚拟机。
确保作业不会安装旧版 Cloud Logging 代理或 Cloud Monitoring 代理,例如通过自定义映像或实例模板。
如需详细了解 Ops Agent 的功能和要求,请参阅 Google Cloud Observability 文档中的 Ops Agent 概览。
创建自动安装 Ops Agent 的作业
使用 Google Cloud CLI 或 REST API 创建作业,其中包含 JSON 文件正文 allocationPolicy.instances
字段中设置为 true
的 installOpsAgent
字段:
"allocationPolicy": {
"instances": [
{
"installOpsAgent": true
}
]
}
例如,自动安装 Ops Agent 的作业可以具有类似于以下内容的 JSON 配置文件:
{
"taskGroups": [
{
"taskSpec": {
"runnables": [
{
"script": {
"text": "echo Hello World! This is task $BATCH_TASK_INDEX."
}
}
]
},
"taskCount": 3,
}
],
"allocationPolicy": {
"instances": [
{
"installOpsAgent": true
}
]
},
"logsPolicy": {
"destination": "CLOUD_LOGGING"
}
}
作业的虚拟机开始运行后,您可以像查看任何其他资源指标一样查看 Ops Agent 指标。如需了解详情,请参阅通过查看指标监控和优化作业资源。